_form.php 5.42 KB
<?php
    
    use artweb\artbox\ecommerce\models\Order;
    use frontend\models\OrderFrontend;
    use kartik\grid\GridView;
    use yii\data\ActiveDataProvider;
    use yii\helpers\Html;
    use yii\bootstrap\ActiveForm;
    use yii\helpers\ArrayHelper;
    use artweb\artbox\ecommerce\models\Delivery;
    use yii\web\View;
    
    /**
     * @var View               $this
     * @var Order              $model
     * @var ActiveForm         $form
     * @var ActiveDataProvider $dataProvider
     */
?>

<?php $form = ActiveForm::begin(); ?>
<div class="container">
    <div class="row">
        <div class="form-group">
            <?= Html::submitButton(
                $model->isNewRecord ? 'Create' : 'Update',
                [ 'class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary' ]
            ) ?>
        </div>
    </div>
    <div class="row">
        <div class="col-sm-6">
            
            
            <?= $form->field($model, 'name') ?>
            
            <?= $form->field($model, 'phone') ?>
            
            <?= $form->field($model, 'phone2') ?>
            
            <?= $form->field($model, 'email') ?>
            
            <?= $form->field($model, 'numbercard') ?>
            
            <?= $form->field($model, 'body')
                     ->textarea([ 'rows' => '3' ]) ?>
            
            <?php $form->field($model, 'delivery')
                       ->dropDownList(
                           ArrayHelper::map(
                               Delivery::find()
                                       ->asArray()
                                       ->all(),
                               'id',
                               'title'
                           )
                       ) ?>
            
            <?= $form->field($model, 'declaration') ?>
            
            <?= $form->field($model, 'stock') ?>
            
            <?= $form->field($model, 'consignment') ?>
        </div>
        <div class="col-sm-6">
            
            <?= $form->field($model, 'payment')
                     ->dropDownList(
                         ArrayHelper::getColumn(OrderFrontend::PAYMENT_LIST, 'label'),
                         [ 'prompt' => '...' ]
                     ); ?>
            
            <?= $form->field($model, 'insurance') ?>
            
            <?= $form->field($model, 'amount_imposed') ?>
            
            <?= $form->field($model, 'shipping_by') ?>
            
            <?= $form->field($model, 'city') ?>
            
            <?= $form->field($model, 'adress') ?>
            
            
            <?= $form->field($model, 'total') ?>
            
            <?= $form->field($model, 'status')
                     ->dropDownList(
                         [
                             'Нет'              => 'Нет',
                             'Обработан'        => 'Обработан',
                             'На комплектации'  => 'На комплектации',
                             'Укомплектован'    => 'Укомплектован',
                             'Доставка'         => 'Доставка',
                             'Выполнен'         => 'Выполнен',
                             'Резерв оплачен'   => 'Резерв оплачен',
                             'Резерв неоплачен' => 'Резерв неоплачен',
                         ],
                         [ 'prompt' => '...' ]
                     ); ?>
            
            <?= $form->field($model, 'comment')
                     ->textarea([ 'rows' => '3' ]) ?>
        </div>
    </div>
</div>

<?php ActiveForm::end(); ?>
<div class="container">
    <div class="row">
        <?php
            echo GridView::widget(
                [
                    'dataProvider' => $dataProvider,
                    'columns'      => [
                        'id',
                        'product_name',
                        'sku',
                        [
                            'class'           => 'kartik\grid\EditableColumn',
                            'attribute'       => 'count',
                            'editableOptions' => [
                                'header'    => \Yii::t('app', 'Количество'),
                                'inputType' => kartik\editable\Editable::INPUT_SPIN,
                                'options'   => [
                                    'pluginOptions' => [
                                        'min' => 0,
                                        'max' => 5000,
                                    ],
                                ],
                            ],
                            'hAlign'          => 'right',
                            'vAlign'          => 'middle',
                            'width'           => '7%',
                            'format'          => [
                                'decimal',
                                2,
                            ],
                            'pageSummary'     => true,
                        ],
                        [
                            'class' => 'yii\grid\ActionColumn',
                            'template' => '{delete}',
                        ],
                    ],
                    'responsive'   => true,
                    'hover'        => true,
                ]
            );
        ?>
    </div>
</div>