<?php
-use yii\grid\GridView;
+use kartik\select2\Select2;
+use softark\duallistbox\DualListbox;
+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\MatrixType;
+use yii_app\records\StoreCityList;
+use yii_app\records\StoreType;
/* @var $this yii\web\View */
/* @var $dataProvider yii\data\ActiveDataProvider */
-$this->title = 'Список магазинов с настройками';
+$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="store-index px-3">
+<div class="container mt-4 border-bottom">
<h1><?= Html::encode($this->title) ?></h1>
- <?= Html::a('СоздаÑ\82Ñ\8c', ['update'], ['class' => 'btn btn-success']) ?>
+ <?= Html::a('Ð\9dазад', ['index'], ['class' => 'btn btn-primary mb-3']) ?>
- <?= GridView::widget([
- 'dataProvider' => $dataProvider,
- 'columns' => [
- ['class' => 'yii\grid\SerialColumn'],
- [
- 'attribute' => 'store_id',
- 'value' => function ($data) {
- return $data->store->name ?? '';
- }
- ],
- [
- 'attribute' => 'store_type',
- 'value' => function ($data) {
- return $data->storeType->name ?? '';
- }
- ],
- [
- 'attribute' => 'address_region',
- 'value' => function ($data) {
- return $data->addressRegion->name ?? '';
- }
- ],
- [
- 'attribute' => 'created_by',
- 'value' => function ($data) {
- return $data->updatedBy->name_full ?? '';
- }
- ],
- 'created_at',
- [
- 'class' => 'yii\grid\ActionColumn',
- 'template' => '{view} {delete}',
- ]
- ],
- 'layout' => '{items}',
- ]); ?>
+ <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>
+++ /dev/null
-<?php
-
-use kartik\select2\Select2;
-use softark\duallistbox\DualListbox;
-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\MatrixType;
-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>