]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
ERP-282 Нужно сделать интерфейс настройки магазина
authormarina <m.zozirova@gmail.com>
Fri, 24 Jan 2025 07:13:37 +0000 (10:13 +0300)
committermarina <m.zozirova@gmail.com>
Fri, 24 Jan 2025 07:13:37 +0000 (10:13 +0300)
erp24/views/city-store-params/index.php [new file with mode: 0644]

diff --git a/erp24/views/city-store-params/index.php b/erp24/views/city-store-params/index.php
new file mode 100644 (file)
index 0000000..c7cacfe
--- /dev/null
@@ -0,0 +1,214 @@
+<?php
+
+use kartik\select2\Select2;
+use yii\helpers\ArrayHelper;
+use yii\helpers\Html;
+use yii\helpers\Url;
+use yii_app\records\Admin;
+use yii_app\records\AdminGroup;
+use yii_app\records\StoreCityList;
+use yii_app\records\StoreType;
+
+/* @var $this yii\web\View */
+/* @var $dataProvider yii\data\ActiveDataProvider */
+
+$this->title = 'City Store Params';
+$this->params['breadcrumbs'][] = $this->title;
+
+$this->title = "Настройка параметров магазина";
+$this->params['breadcrumbs'][] = $this->title;
+
+$this->registerJsFile('/js/city-store-params/city-store-params.js', ['position' => \yii\web\View::POS_END]);
+?>
+
+<div class="container mt-4 border-bottom">
+    <h1><?= Html::encode($this->title) ?></h1>
+    <?= Html::a('Назад', ['index'], ['class' => 'btn btn-primary mb-3']) ?>
+
+    <div class="row">
+        <div class="col-md-2">
+            <div class="card p-3 bg-light shadow-sm">
+                <?= Html::dropDownList('address_region', null,
+                    ArrayHelper::map(StoreCityList::findAll(['type' => StoreCityList::TYPE_REGION]), 'id', 'name'),
+                    ['prompt' => 'Выберите регион', 'class' => 'form-select', 'id' => 'address_region']);
+                ?>
+                <?= Html::a('Редактировать', [
+                    Url::to('/store-city-list')], ['class' => 'd-block mt-2 text-decoration-none']);
+                ?>
+            </div>
+        </div>
+        <div class="col-md-2">
+            <div class="card p-3 bg-light shadow-sm">
+                <?= Html::dropDownList('address_city', null,
+                    ArrayHelper::map(StoreCityList::findAll(['type' => StoreCityList::TYPE_CITY]), 'id', 'name'),
+                    ['prompt' => 'Выберите город', 'class' => 'form-select', 'id' => 'address_city']);
+                ?>
+            </div>
+        </div>
+        <div class="col-md-2 border-end border-2">
+            <div class="card p-3 bg-light shadow-sm">
+                <?= Html::dropDownList('address_district', null,
+                    ArrayHelper::map(StoreCityList::findAll(['type' => StoreCityList::TYPE_DISTRICT]), 'id', 'name'),
+                    ['prompt' => 'Выберите район', 'class' => 'form-select', 'id' => 'address_district']);
+                ?>
+            </div>
+        </div>
+        <div class="col-md-2 border-end border-2">
+            <div class="card p-3 bg-light shadow-sm">
+                <?= Html::dropDownList('store_type', null,
+                    ArrayHelper::map(StoreType::find()->all(), 'id', 'name'),
+                    ['prompt' => 'Выберите тип магазина', 'class' => 'form-select', 'id' => 'store_type']);
+                ?>
+                <?= Html::a('Редактировать', [\yii\helpers\Url::to('/store-type')], ['class' => 'd-block mt-2 text-decoration-none']); ?>
+            </div>
+        </div>
+        <div class="col-md-2 border-end border-2">
+            <div class="card p-3 bg-light shadow-sm">
+                <?= Html::dropDownList('territorial_manager', null,
+                    ArrayHelper::map(Admin::findAll(['group_id' => AdminGroup::GROUP_BUSH_DIRECTOR]), 'id', 'name_full'),
+                    ['prompt' => 'Выберите территориального управляющего', 'class' => 'form-select', 'id' => 'territorial_manager']);
+                ?>
+            </div>
+        </div>
+    </div>
+    <div class="row mt-3">
+        <div class="col-md-2"></div>
+        <div class="col-md-2"></div>
+        <div class="col-md-2"></div>
+        <div class="col-md-2 border-end border-2">
+            <div class="card p-3 bg-light shadow-sm">
+                <?= Html::dropDownList('bush_chef_florist', null,
+                    ArrayHelper::map(Admin::findAll(['group_id' => \yii_app\records\AdminGroup::GROUP_BUSH_CHEF_FLORIST]), 'id', 'name_full'),
+                    ['prompt' => 'Выберите кустового шеф флориста', 'class' => 'form-select', 'id' => 'bush_chef_florist']);
+                ?>
+            </div>
+        </div>
+        <div class="col-md-2"></div>
+        <div class="col-md-2 d-flex justify-content-center align-items-center">
+            <div class="card p-45 bg-light shadow-sm w-100">
+                <?= Html::button('Применить', ['class' => 'btn btn-primary w-100', 'id' => 'apply-button']); ?>
+            </div>
+        </div>
+    </div>
+</div>
+<?php $form = \yii\widgets\ActiveForm::begin(); ?>
+<div class="container mt-4">
+    <div class="row">
+        <div class="col-md-3">
+            <?= Html::dropDownList('CityStoreParams[selected_store]', null,
+                ArrayHelper::map(\yii_app\records\CityStore::find()->all(), 'id', 'name'), [
+                'multiple' => true,
+                'size' => 16,
+                'class' => 'form-control',
+                'id' => 'selected-store',
+            ]) ?>
+            <?= Html::button('Редактировать', ['class' => 'btn btn-primary w-100 mt-2 py-1', 'id' => 'edit-button']); ?>
+        </div>
+        <div class="col-md-9">
+            <div class="form-group">
+                <div class="row">
+                    <div class="col-md-4 d-flex align-items-center gap-3">
+                        <?= Html::hiddenInput('CityStoreParams[id]') ?>
+                        <?= Html::hiddenInput('CityStoreParams[store_id]') ?>
+                        <?= Html::hiddenInput('CityStoreParams[territorial_manager]') ?>
+                        <?= Html::label('Название', null); ?>
+                        <?= Html::tag('span', null, ['id' => 'store-name', 'class' => 'h5']); ?>
+                    </div>
+                    <div class="col-md-4">
+                        <?= Html::dropDownList('CityStoreParams[store_type]', null, [], ['prompt' => 'Тип магазина', 'class' => 'form-select', 'id' => 'store-type']); ?>
+                        <?= Html::a('Редактировать', [Url::to('/store-type')], ['class' => 'd-block mt-2 text-decoration-none']); ?>
+                    </div>
+                    <div class="col-md-3">
+                        <?= Html::dropDownList('CityStoreParams[bush_id]', null, [], ['prompt' => 'Номер куста', 'class' => 'form-select', 'id' => 'bush-id']); ?>
+                    </div>
+                </div>
+                <div class="row">
+                    <div class="col-md-2 py-6">
+                        <?= Html::label('Адрес', null) ?>
+                    </div>
+                    <div class="col-md-3">
+                        <?= Html::label('Регион'); ?>
+                        <?= Html::dropDownList('CityStoreParams[address_region]', null, [], ['prompt' => 'Регион', 'class' => 'form-select', 'id' => 'region']); ?>
+                    </div>
+                    <div class="col-md-3">
+                        <?= Html::label('Город'); ?>
+                        <?= Html::dropDownList('CityStoreParams[address_city]', null, [], ['prompt' => 'Город', 'class' => 'form-select', 'id' => 'city']); ?>
+                    </div>
+                    <div class="col-md-3">
+                        <?= Html::label('Район'); ?>
+                        <?= Html::dropDownList('CityStoreParams[address_district]', null, [], ['prompt' => 'Район', 'class' => 'form-select', 'id' => 'district']); ?>
+                    </div>
+                </div>
+                <div class="row">
+                    <div class="col-md-2">
+                        <?= Html::label('Территориально управляющий', null); ?>
+                        <?= Html::a('Редактировать', [Url::to('/crud/cluster-admin/')], ['class' => 'd-block mb-5 text-decoration-none']); ?>
+                    </div>
+                    <div class="col-md-9">
+                        <?= Html::tag('span', null, ['id' => 'territorial-manager', 'class' => 'h5']); ?>
+                    </div>
+                </div>
+                <div class="row border-bottom">
+                    <div class="col-md-2">
+                        <?= Html::label('КШФ') ?>
+                    </div>
+                    <div class="col-md-9">
+                        <?= Html::dropDownList('CityStoreParams[bush_chef_florist]', null, [], ['prompt' => 'Кустовой шеф-флорист', 'class' => 'form-select', 'id' => 'bush-chef-florist']); ?>
+                    </div>
+                </div>
+                <div class="row">
+                    <div class="col-md-4">
+                        <?= Html::label('Площадь (M2)', null, ['class' => 'form-label']); ?>
+                        <?= Html::input('text', 'CityStoreParams[store_area]', null, [
+                            'id' => 'store-area',
+                            'class' => 'form-control',
+                            'placeholder' => 'Введите число',
+                            'oninput' => 'validateDecimal(this)'
+                        ]); ?>
+                        <?= Html::label('Витрина (M3)', null, ['class' => 'form-label']); ?>
+                        <?= Html::input('text', 'CityStoreParams[showcase_volume]', null, [
+                            'id' => 'showcase-volume',
+                            'class' => 'form-control',
+                            'placeholder' => 'Введите число',
+                            'oninput' => 'validateDecimal(this)'
+                        ]); ?>
+                        <?= Html::label('Холодильник (M2)', null, ['class' => 'form-label']); ?>
+                        <?= Html::input('text', 'CityStoreParams[freeze_area]', null, [
+                            'id' => 'freeze-area',
+                            'class' => 'form-control',
+                            'placeholder' => 'Введите число',
+                            'oninput' => 'validateDecimal(this)'
+                        ]); ?>
+                        <?= Html::label('Холодильник (M3)', null, ['class' => 'form-label']); ?>
+                        <?= Html::input('text', 'CityStoreParams[freeze_volume]', null, [
+                            'id' => 'freeze-volume',
+                            'class' => 'form-control',
+                            'placeholder' => 'Введите число',
+                            'oninput' => 'validateDecimal(this)'
+                        ]); ?>
+                    </div>
+                    <div class="col-md-8">
+                        <div class="container mt-5">
+                            <?= Html::label('Тип матрицы')?>
+                            <?= Html::a('Редактировать', [Url::to('/matrix-type')], ['class' => 'd-block mb-5 text-decoration-none']); ?>
+                            <?= Select2::widget([
+                                'name' => 'CityStoreParams[matrix_type]',
+                                'data' => [],
+                                'language' => 'ru-RU',
+                                'options' => [
+                                        'id' => 'matrix-type',
+                                    'placeholder' => 'Выберите тип матрицы',
+                                    'multiple' => true,
+                                ],
+                            ]); ?>
+                        </div>
+                    </div>
+                    <div class="d-flex justify-content-end">
+                       <?= Html::submitButton('Сохранить', ['class' => 'btn btn-success']) ?>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <?php \yii\widgets\ActiveForm::end(); ?>
+    </div>
+</div>