From: Alexander Smirnov Date: Mon, 7 Oct 2024 14:29:59 +0000 (+0300) Subject: [ERP-209] при нажатии кнопка Обновить записываются номера телефонов из сделок X-Git-Tag: 1.6~48^2~1 X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=be62fdc81d745b6c774246ace9cafbca4dd5ce8a;p=erp24_rep%2Fyii-erp24%2F.git [ERP-209] при нажатии кнопка Обновить записываются номера телефонов из сделок --- diff --git a/erp24/actions/orders/FillPhoneAction.php b/erp24/actions/orders/FillPhoneAction.php index ba135bfd..0cbe8822 100644 --- a/erp24/actions/orders/FillPhoneAction.php +++ b/erp24/actions/orders/FillPhoneAction.php @@ -27,17 +27,31 @@ class FillPhoneAction extends Action $sales = []; $phoneByAmoIdMap = []; - if ($action == 'show') { - $sales = Sales::find()->select(['id', 'order_id'])->where(['between', 'date', $model->date_from, $model->date_to]) + if ($action == 'show' || $action == 'update') { + $sales = Sales::find()->select(['id', 'order_id', 'date'])->where(['between', 'date', $model->date_from, $model->date_to]) ->andWhere(['not in', 'order_id', ['', null]]) ->andWhere(['phone' => 0]) ->all(); $orderIds = ArrayHelper::getColumn($sales, 'order_id'); + $orderIdsClean = []; + foreach ($orderIds as $orderId) { + if (is_int($orderId)) { + $orderIdsClean[] = $orderId; + } + } $ordersAmo = OrdersAmo::find()->select(['amo_id', 'phone']) - ->where(['amo_id' => $orderIds]) + ->where(['amo_id' => $orderIdsClean]) ->andWhere(['not in', 'phone', ['', null]]) ->all(); $phoneByAmoIdMap = ArrayHelper::map($ordersAmo, 'amo_id', 'phone'); + if ($action == 'update') { + foreach ($sales as $sale) { + /** @var $sale Sales */ + if (!empty($phoneByAmoIdMap[$sale->order_id]) && is_int($phoneByAmoIdMap[$sale->order_id])) { + Sales::updateAll(['phone' => $phoneByAmoIdMap[$sale->order_id]], ['order_id' => $sale->order_id]); + } + } + } } return $this->controller->render('fill-phone', diff --git a/erp24/views/orders/fill-phone.php b/erp24/views/orders/fill-phone.php index 46a0ec25..875d11d3 100644 --- a/erp24/views/orders/fill-phone.php +++ b/erp24/views/orders/fill-phone.php @@ -66,8 +66,9 @@ use yii_app\records\Sales; order_id])): ?> id ?> - order_id ?> order_id] ?> + order_id ?> + date ?> @@ -80,16 +81,18 @@ use yii_app\records\Sales; guid - order_id phone + order_id + date id ?> - order_id ?> order_id] ?? 'missing' ?> + order_id ?> + date ?>