2017 © Pedro PelΓ‘ez
 

yii2-extension yii2-order

yii2-order it's a module for site cart order

image

sakhlab/yii2-order

yii2-order it's a module for site cart order

  • Monday, April 3, 2017
  • by sakhlab
  • Repository
  • 1 Watchers
  • 0 Stars
  • 2 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 15 Forks
  • 0 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

Yii2-order

Π­Ρ‚ΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ½Π°Π»Π° Π·Π°ΠΊΠ°Π·Π° Π½Π° сайтС. БСйчас Π² Π·Π°ΠΊΠ°Π· ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ элСмСнты ΠΊΠΎΡ€Π·ΠΈΠ½Ρ‹, ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ Π² качСствС сСрвиса ΠΊΠΎΡ€Π·ΠΈΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ pistol88/yii2-cart., (*1)

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»:, (*2)

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π°ΠΊΠ°Π·Π°, просмотр ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π°ΠΊΠ°Π·Π°ΠΌΠΈ Π² Π°Π΄ΠΌΠΈΠ½ΠΊΠ΅
  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ полями Π·Π°ΠΊΠ°Π·Π° Π² Π°Π΄ΠΌΠΈΠ½ΠΊΠ΅
  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ способами доставки ΠΈ ΠΎΠΏΠ»Π°Ρ‚Ρ‹ Π² Π°Π΄ΠΌΠΈΠ½ΠΊΠ΅

Установка

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, (*3)

php composer require pistol88/yii2-order "*"

Или Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² composer.json, (*4)

"pistol88/yii2-order": "*",

И Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ, (*5)

php composer update

Π”Π°Π»Π΅Π΅, ΠΌΠΈΠ³Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ Π±Π°Π·Ρƒ:, (*6)

php yii migrate --migrationPath=vendor/pistol88/yii2-order/migrations

Π”Π°Π»Π΅Π΅, связываСм ΠΌΠΎΠ΄ΡƒΠ»ΡŒ с ΠΊΠΎΡ€Π·ΠΈΠ½ΠΎΠΉ. УстанавливаСм pistol88/yii2-cart ΠΈ добавляСм Π² Π½Π°Ρ‡Π°Π»ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³Π° вашСго прилоТСния:, (*7)

yii::$container->set('pistol88\order\interfaces\Cart', 'pistol88\order\drivers\Pistol88Cart');

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ²ΡΠ·Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ с Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠΎΡ€Π·ΠΈΠ½ΠΎΠΉ:, (*8)

yii::$container->set('pistol88\order\interfaces\Cart', 'app\objects\Cart');

app\objects\Cart Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ класс, ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ \pistol88\order\interfaces\Cart., (*9)

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ настройка

Π’ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» прилоТСния Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ order, (*10)

    'modules' => [
        'order' => [
            'class' => 'pistol88\order\Module',
            'layoutPath' => 'frontend\views\layouts',
            'successUrl' => '/page/thanks', //Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π°, ΠΊΡƒΠ΄Π° ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ послС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ Π·Π°ΠΊΠ°Π·Π°
            'ordersEmail' => 'test@yandex.ru', //ΠœΡ‹Π»ΠΎ для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π·Π°ΠΊΠ°Π·ΠΎΠ²
        ],
        //...
    ]

ВсС настройки модуля:, (*11)

  • orderStatuses - статусы (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: 'new' => 'Новый', 'approve' => 'ΠŸΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½', 'cancel' => 'ΠžΡ‚ΠΌΠ΅Π½Π΅Π½', 'process' => 'Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅', 'done' => 'Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½')
  • defaultStatus - статус Π½ΠΎΠ²ΠΎΠ³ΠΎ Π·Π°ΠΊΠ°Π·Π° (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 'new')
  • successUrl - ΡƒΡ€Π», ΠΊΡƒΠ΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΡŒ Π² случаС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ ΠΏΠΎΠΊΡƒΠΏΠΊΠΈ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ /order/info/thanks/)
  • ordersEmail - ΠΏΠΎΡ‡Ρ‚Π° администратора, Ρ‚ΡƒΠ΄Π° уходят письма с Π·Π°ΠΊΠ°Π·Π°ΠΌΠΈ
  • robotEmail - e-mail Ρ€ΠΎΠ±ΠΎΡ‚Π° (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ no-reply@localhost)
  • robotName - имя ΠΏΠΎΡ‡Ρ‚ΠΎΠ²ΠΎΠ³ΠΎ Ρ€ΠΎΠ±ΠΎΡ‚Π° (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Robot)
  • orderColumns - массмв ΠΏΠΎΠ»Π΅ΠΉ для Π²Ρ‹Π²ΠΎΠ΄Π°. ΠšΠ°ΡΡ‚ΠΎΠΌΠ½Ρ‹Π΅ поля Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ массив, содСрТащий ID ΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ поля: ['field' => 2, 'label' => 'ΠΠ²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ']
  • dateFormat - Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π΄Π°Ρ‚Ρ‹ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ d.m.Y H:i:s)
  • cartService - имя ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΊΠΎΡ€Π·ΠΈΠ½Π° (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ cart). Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² pistol88/yii2-cart., (*12)

  • currency - Π²Π°Π»ΡŽΡ‚Π°, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€ΡƒΠ±Π»ΠΈ, (*13)

  • currencyPosition - позиция Π·Π½Π°Ρ‡ΠΊΠ° Π²Π°Π»ΡŽΡ‚Ρ‹ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ†Π΅Π½Ρ‹ (before ΠΈΠ»ΠΈ after)
  • priceFormat - Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ†Π΅Π½Ρ‹ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ [2, '.', ''])
  • adminRoles - список Ρ€ΠΎΠ»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ доступ Π² CRUD Π·Π°ΠΊΠ°Π·Π° (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ['admin', 'superadmin'])

БСрвисы

ΠœΠΎΠ΄ΡƒΠ»ΡŒ автоматичСски ΠΈΠ½ΠΆΠ΅ΠΊΡ‚ΠΈΡ‚ Π² yii2 (Π² Service locator) ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ order (сСрвис), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ доступСн глобально Ρ‡Π΅Ρ€Π΅Π· yii::$app->order ΠΈ прСдоставляСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ сСрвисы:, (*14)

  • get($id) - ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π°ΠΊΠ°Π· ΠΏΠΎ ID
  • getStatInMoth($month) - ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ статистику Π·Π°ΠΊΠ°Π·ΠΎΠ² Π·Π° мСсяц
  • getStatByDate($date) - ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ статичтику Π·Π°ΠΊΠ°Π·ΠΎΠ² Π·Π° дСнь
  • getStatByDatePeriod($dateStart, $dateStop) - ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ статистику Π·Π°ΠΊΠ°Π·ΠΎΠ² Π·Π° ΠΏΠ΅Ρ€ΠΈΠΎΠ΄
  • getStatByModelAndDatePeriod($model, $dateStart, $dateStop) - ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ статистику Π·Π°ΠΊΠ°Π·ΠΎΠ² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° ΠΏΠ΅Ρ€ΠΈΠΎΠ΄

Π’ΠΈΠ΄ΠΆΠ΅Ρ‚Ρ‹

Π—Π° Π²Ρ‹Π²ΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΡ‹ Π·Π°ΠΊΠ°Π·Π° ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ pistol88\order\widgets\OrderForm, (*15)

<?=OrderForm::widget();?>

Кнопка "заказ в один клик" - pistol88\order\widgets\OneClick:, (*16)

<?=OneClick::widget(['model' => $model]);?>

Π’Ρ€ΠΈΠ³Π³Π΅Ρ€Ρ‹

Π’ Module:, (*17)

  • create - созданиС Π·Π°ΠΊΠ°Π·Π°
  • delete_order - ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π·Π°ΠΊΠ°Π·Π°
  • delete_element - ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнта Π·Π°ΠΊΠ°Π·Π°

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ½Ρ„ΠΈΠ³:, (*18)

    'order' => [
        'class' => 'pistol88\order\Module',
        'on create' => function($event) {
            send_sms(...); //ΠžΡ‚ΠΏΡ€Π°Π²Π»ΡΠ΅ΠΌ БМБ ΠΎΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠ΅
        },
    ],

Онлайн ΠΎΠΏΠ»Π°Ρ‚Π°

Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ способ ΠΎΠΏΠ»Π°Ρ‚Ρ‹, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ?r=/order/payment-type/index, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ способ, Π³Π΄Π΅ Π² ΠΏΠΎΠ»Π΅ "Π’ΠΈΠ΄ΠΆΠ΅Ρ‚" ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ класс Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ ΠΎΠΏΠ»Π°Ρ‚Ρ‹. Π’ΠΈΠ΄ΠΆΠ΅Ρ‚Ρ‹ ΠΎΠΏΠ»Π°Ρ‚Ρ‹ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ., (*19)

The Versions

03/04 2017

dev-master

9999999-dev https://github.com/pistol88/yii2-cart

yii2-order it's a module for site cart order

  Sources   Download

BSD-3-Clause

The Requires

 

The Development Requires

by Ilya Pistol

yii2 module yii 2 application shop order pistol88

13/03 2017

dev-business_logic_refactoring

dev-business_logic_refactoring https://github.com/pistol88/yii2-cart

yii2-order it's a module for site cart order

  Sources   Download

BSD-3-Clause

The Requires

 

The Development Requires

by Ilya Pistol

yii2 module yii 2 application shop order pistol88