From e2133b50e012b8a842c5d49cd849eaeab8fd885d Mon Sep 17 00:00:00 2001 From: vladfo Date: Mon, 23 Sep 2024 09:42:36 +0300 Subject: [PATCH] =?utf8?q?=D0=A1=D1=82=D0=B0=D0=B2=D0=B8=D0=BC=20=D0=B4?= =?utf8?q?=D0=B0=D0=BD=D0=BD=D1=8B=D0=B5=20=D0=BD=D0=B0=20=D0=B4=D0=B0?= =?utf8?q?=D1=82=D1=83=2012=20=D1=81=D0=B5=D0=BD=D1=82=D1=8F=D0=B1=D1=80?= =?utf8?q?=D1=8F=20=D0=B5=D1=81=D0=BB=D0=B8=20=D0=B7=D0=B0=D0=BF=D1=80?= =?utf8?q?=D0=BE=D1=81=20=D0=BD=D0=B0=20=D0=B4=D0=B0=D1=82=D1=83=20=D1=80?= =?utf8?q?=D0=B0=D0=BD=D1=8C=D1=88=D0=B5=2012=20=D1=81=D0=B5=D0=BD=D1=82?= =?utf8?q?=D1=8F=D0=B1=D1=80=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../controllers/ClusterLinkEditController.php | 42 ++++++++++++------- 1 file changed, 27 insertions(+), 15 deletions(-) diff --git a/erp24/controllers/ClusterLinkEditController.php b/erp24/controllers/ClusterLinkEditController.php index 8aa58652..e2da3152 100644 --- a/erp24/controllers/ClusterLinkEditController.php +++ b/erp24/controllers/ClusterLinkEditController.php @@ -82,19 +82,28 @@ class ClusterLinkEditController extends Controller */ public function actionIndex() { + // Создание поисковой модели $searchModel = new ClusterSearch(); $dataProvider = $searchModel->search($this->request->queryParams); + // Получение всех кустовых директоров $clusterManagers = Admin::find() ->select(['name', 'id', 'store_arr']) ->where(['group_id' => 7, 'group_name' => 'Кустовой директор']) ->indexBy('id') ->all(); - // Получение параметра 'date' из GET-запроса, если он передан + // Получение параметра 'date' из GET-запроса или текущей даты $currentDate = Yii::$app->request->get('ClusterSearch')['date'] ?? date('Y-m-d'); + + // Минимально допустимая дата $minDate = '2024-09-12'; + // Проверка: если текущая дата меньше минимальной, устанавливаем минимальную дату + if (strtotime($currentDate) < strtotime($minDate)) { + $currentDate = $minDate; + } + $storeData = ClusterCalendar::find() ->select([ 'cluster_id', @@ -133,7 +142,7 @@ class ClusterLinkEditController extends Controller $clusterId = $cluster['cluster_id']; $stores = explode(',', $cluster['stores']); $lastUpdate = $cluster['last_update']; - // var_dump($stores); + foreach ($stores as $storeId) { $newCalendar = new ClusterCalendar(); $newCalendar->cluster_id = $clusterId; @@ -233,7 +242,7 @@ class ClusterLinkEditController extends Controller 'lastUpdates' => $lastUpdates, 'storeLists' => $storeLists, 'clusterToManager' => $clusterToManager, - 'currentDate' => $currentDate, + 'currentDate' => Yii::$app->request->get('ClusterSearch')['date'] ?? $currentDate, ]); } @@ -305,19 +314,23 @@ class ClusterLinkEditController extends Controller // Получаем модель кластера по ID $model = $this->findModel($id); - // Если $currentDate не передан в запросе, используем текущую дату + // Если $date не передан в запросе, используем текущую дату $currentDate = $date ?? date('Y-m-d'); // Ограничение на минимальную дату для выборки - $dateFrom = '2024-09-12'; - $year = date('Y'); + $minDate = '2024-09-12'; + + // Проверка, если выбранная дата меньше 12 сентября 2024 года + if (strtotime($currentDate) < strtotime($minDate)) { + $currentDate = $minDate; // Присваиваем минимально допустимую дату + } // Поиск записей в ClusterCalendar для указанного кластера $stores = ClusterCalendar::find() ->where(['cluster_id' => $id]) - ->andWhere(['<=', 'date_from', $currentDate]) // Записи, начиная с указанной или более ранней даты - ->andWhere(['>', 'date_to', $currentDate]) // Записи, где дата окончания больше текущей - ->andWhere(['>=', 'date_from', $dateFrom]) // Дата начала должна быть не раньше 2024-09-12 + ->andWhere(['<=', 'date_from', $currentDate]) + ->andWhere(['>', 'date_to', $currentDate]) + ->andWhere(['>=', 'date_from', $minDate]) ->all(); // Получаем список всех кустов для перевода @@ -325,8 +338,8 @@ class ClusterLinkEditController extends Controller // Получение всех магазинов из таблицы CityStore $storesData = CityStore::find() - ->select(['id', 'name']) // Выбираем только id и name - ->indexBy('id') // Индексируем результат по id + ->select(['id', 'name']) + ->indexBy('id') ->asArray() ->all(); @@ -343,12 +356,11 @@ class ClusterLinkEditController extends Controller 'model' => $model, 'dataProvider' => $dataProvider, 'clustersList' => $clustersList, - 'currentDate' => $currentDate, // Передаем текущую или выбранную дату - 'clusterManager' => $manager, // Передаем кустового директора - 'storeNames' => $storeNames, // Передаем справочник с именами магазинов + 'currentDate' => $currentDate, + 'clusterManager' => $manager, + 'storeNames' => $storeNames, ]); } - public function actionMoveStore() { $storeId = Yii::$app->request->post('store_id'); -- 2.39.5