From: marina Date: Tue, 10 Dec 2024 11:15:07 +0000 (+0300) Subject: Merge branch 'develop' into feature-zozirova-erp_256-send_doc_on_1c X-Git-Tag: 1.7~180^2~3 X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=43d30f5a1d6cdddf6bfee6e77730b877937c65df;p=erp24_rep%2Fyii-erp24%2F.git Merge branch 'develop' into feature-zozirova-erp_256-send_doc_on_1c # Conflicts: # erp24/controllers/ShiftTransferController.php # erp24/records/EqualizationRemains.php # erp24/views/shift-transfer/_replacement.php --- 43d30f5a1d6cdddf6bfee6e77730b877937c65df diff --cc erp24/controllers/ShiftTransferController.php index 13825e81,fc130e81..413c643d --- a/erp24/controllers/ShiftTransferController.php +++ b/erp24/controllers/ShiftTransferController.php @@@ -186,11 -252,11 +252,14 @@@ class ShiftTransferController extends C } elseif ($action === 'save') { $model->updateAttributes(['status_id' => ShiftTransfer::STATUS_ID_READY_TO_ACCEPT]); EqualizationRemains::updateData(Yii::$app->request->post()['ShiftTransfer']['equalizationRemains'], $id); + } elseif ($action == 'recalculate') { + EqualizationRemains::setData($model); + Yii::$app->session->setFlash('success', 'Таблица замен успешно перерасчитана'); - } elseif ($action === 'rejection') { + } elseif ($action === 'rejection' || $action === 'back') { $model->updateAttributes(['status_id' => ShiftTransfer::STATUS_ID_TRANSFER_ACTIONS]); + //удаление данных из табличек с плюсом и минусом + } elseif ($action === 'resume') { + //формирование табличек с минусом и плюсом } $this->redirect(Yii::$app->request->referrer); diff --cc erp24/records/EqualizationRemains.php index 3762ea0f,8b31613b..9fb60da6 --- a/erp24/records/EqualizationRemains.php +++ b/erp24/records/EqualizationRemains.php @@@ -95,8 -96,9 +96,9 @@@ class EqualizationRemains extends \yii\ ]; } - public static function updateData($equalizationRemains, int $shift_transfer_id) { - public static function updateData($equalizationRemains, int $shift_id) ++ public static function updateData($equalizationRemains, int $shift_transfer_id) + { - self::deleteAll(['shift_id' => $shift_id]); + self::deleteAll(['shift_transfer_id' => $shift_transfer_id]); if (!is_array($equalizationRemains) || empty($equalizationRemains)) { return; diff --cc erp24/records/ShiftTransfer.php index 1ab7ece7,99691660..a9eade56 --- a/erp24/records/ShiftTransfer.php +++ b/erp24/records/ShiftTransfer.php @@@ -98,6 -102,15 +104,15 @@@ class ShiftTransfer extends \yii\db\Act */ public function getEqualizationRemains() { - return $this->hasMany(EqualizationRemains::class, ['shift_id' => 'id']); + return $this->hasMany(EqualizationRemains::class, ['shift_transfer_id' => 'id']); } + + public function setGroups() { + $this->groups1 = array_filter(explode(',', $this->product_groups ?? ''), function ($a) { return $a != 'other_items'; }); + $this->groups2 = array_filter(explode(',', $this->product_groups ?? ''), function ($a) { return $a == 'other_items'; }); + } + + public function setProductGroups() { + $this->product_groups = implode(',', array_merge(empty($this->groups1) ? [] : $this->groups1, empty($this->groups2) ? [] : $this->groups2)); + } } diff --cc erp24/views/shift-transfer/_replacement.php index 2813c961,e878622d..57d87c63 --- a/erp24/views/shift-transfer/_replacement.php +++ b/erp24/views/shift-transfer/_replacement.php @@@ -139,16 -165,20 +165,20 @@@ if (in_array($shiftTransfer->status_id 'class' => 'btn btn-danger visible', ], 'iconSource' => 'fa', - ])->label('Таблица возможных замен'); + ])->label(false); - echo $btn = Html::submitButton('Сохранить', [ + echo $btn = Html::submitButton('Продолжить', [ 'class' => 'btn btn-primary float-right', 'name' => 'action', - 'value' => 'save' + 'value' => 'resume' ]); - + ?> + + + + new ArrayDataProvider([ 'allModels' => $shiftTransfer->equalizationRemains,