From 63fa828844e653bac19577fddcc7d2b30e41a949 Mon Sep 17 00:00:00 2001 From: marina Date: Fri, 9 Aug 2024 04:37:38 +0300 Subject: [PATCH] =?utf8?q?ERP-102=20=D0=9F=D1=80=D0=B8=D1=91=D0=BC=D0=BD?= =?utf8?q?=D0=B8=D0=BA=20=D0=B4=D0=BB=D1=8F=20=D1=8D=D0=BA=D1=81=D0=B5?= =?utf8?q?=D0=BB=D1=8C=20=D1=84=D0=B0=D0=B9=D0=BB=D0=B0=20(=D0=BA=D0=BE?= =?utf8?q?=D1=80=D1=80=D0=B5=D0=BA=D1=82=D0=B8=D1=80=D0=BE=D0=B2=D0=BA?= =?utf8?q?=D0=B0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- erp24/actions/motivation/IndexAction.php | 12 +++- erp24/records/Motivation.php | 7 +++ erp24/services/MotivationService.php | 11 ++-- erp24/uploads/template_adjustment.xlsx | Bin 0 -> 191190 bytes erp24/views/motivation/index.php | 10 +++ erp24/web/js/motivation/index.js | 76 ++++++++++++++++------- 6 files changed, 88 insertions(+), 28 deletions(-) create mode 100644 erp24/uploads/template_adjustment.xlsx diff --git a/erp24/actions/motivation/IndexAction.php b/erp24/actions/motivation/IndexAction.php index f745fa06..74a6c22d 100644 --- a/erp24/actions/motivation/IndexAction.php +++ b/erp24/actions/motivation/IndexAction.php @@ -9,6 +9,7 @@ use yii\base\Action; use yii\base\DynamicModel; use yii\helpers\ArrayHelper; use yii\web\UploadedFile; +use yii_app\records\Admin; use yii_app\records\CityStore; use yii_app\records\Motivation; use yii_app\records\MotivationCostsItem; @@ -29,10 +30,17 @@ class IndexAction extends Action if (Yii::$app->request->isPost) { $file = UploadedFile::getInstanceByName('myfile'); if ($file) { - $path1 = Yii::getAlias('@uploads') . '/template_plan_temp.xlsx'; + $adjustment = Yii::$app->request->post('adjustment'); + + if ($adjustment && array_key_exists(Admin::findOne(Yii::$app->user->id)->group_id, Motivation::getAdjustmentEditors())) { + return implode('
', 'Вы не можете вносить корректировку'); + } + + $fileName = $adjustment ? '/template_adjustment_temp.xlsx' : '/template_plan_temp.xlsx'; + $path1 = Yii::getAlias('@uploads') . $fileName; $file->saveAs($path1); - $data = MotivationService::uploadTemplatePlan($path1); + $data = MotivationService::uploadTemplatePlan($path1, !$adjustment); return implode('
', $data['errors']); } else { diff --git a/erp24/records/Motivation.php b/erp24/records/Motivation.php index e843bd00..6002e5fb 100644 --- a/erp24/records/Motivation.php +++ b/erp24/records/Motivation.php @@ -64,4 +64,11 @@ class Motivation extends \yii\db\ActiveRecord 'created_at' => 'Created At', ]; } + + public static function getAdjustmentEditors() { + return array( + AdminGroup::GROUP_IT, + AdminGroup::GROUP_OPERATIONAL_DIRECTOR + ); + } } diff --git a/erp24/services/MotivationService.php b/erp24/services/MotivationService.php index 06e071aa..932320bd 100644 --- a/erp24/services/MotivationService.php +++ b/erp24/services/MotivationService.php @@ -154,7 +154,7 @@ class MotivationService return $result; } - public static function uploadTemplatePlan($path) + public static function uploadTemplatePlan($path, $is_plan = true) { $motivationCostsItems = MotivationCostsItem::find()->indexBy('code')->all(); try { @@ -282,19 +282,20 @@ class MotivationService . " Ожидается, например: '" . $motivationCostsItems[$keys[0]]->name . "'"; } if (empty($error)) { - $motivationValueGroupPlan = MotivationValueGroup::find()->where(['alias' => 'plan'])->one(); - /** @var $motivationValueGroupPlan MotivationValueGroup */ + $alias = $is_plan ? 'plan' : 'adjustment'; + $motivationValueGroup = MotivationValueGroup::find()->where(['alias' => $alias])->one(); + /** @var $motivationValueGroup MotivationValueGroup */ foreach ($rows as $row) { $motivationValue = MotivationValue::find()->where([ 'motivation_id' => $motivation->id, - 'motivation_group_id' => $motivationValueGroupPlan->id, + 'motivation_group_id' => $motivationValueGroup->id, 'value_id' => $row[0] ])->one(); /** @var $motivationValue MotivationValue */ if (!$motivationValue) { $motivationValue = new MotivationValue; $motivationValue->motivation_id = $motivation->id; - $motivationValue->motivation_group_id = $motivationValueGroupPlan->id; + $motivationValue->motivation_group_id = $motivationValueGroup->id; $motivationValue->value_id = $row[0]; } $motivationValue->value_type = $motivationCostsItems[$row[0]]->data_type; diff --git a/erp24/uploads/template_adjustment.xlsx b/erp24/uploads/template_adjustment.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..fb63fb9ae32e99693cfc632f8acd47050a6d1b30 GIT binary patch literal 191190 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'/js/motivation/index.js', ['position' => \yii\web\View::P
'btn btn-success btn-sm', 'onclick' => 'openUploadDictionary();'])?>
+
+
user->id)->group_id, Motivation::getAdjustmentEditors())) { + echo Html::button('Внесение корректировок', ['class' => 'btn btn-warning btn-sm btn-adjustment', + 'onclick' => 'openUploadDictionary("btn-adjustment");']); + } ?> +
+
diff --git a/erp24/web/js/motivation/index.js b/erp24/web/js/motivation/index.js index e7432015..db6b338f 100644 --- a/erp24/web/js/motivation/index.js +++ b/erp24/web/js/motivation/index.js @@ -1,31 +1,58 @@ -/* jshint esversion: 8 */ - const param10 = $("meta[name=csrf-param]").attr("content"); const token10 = $("meta[name=csrf-token]").attr("content"); -/* jshint unused: false */ -function openUploadDictionary() { - 'use strict' +function openUploadDictionary(buttonType) { + 'use strict'; const $mainModal = $('#mainModal'); const $modalBody = $mainModal.find('.modal-body'); - const $modalFooter = $mainModal.find('.modal-footer'); + const $modalTitle = $mainModal.find('.modal-title'); + $mainModal.find('.close').on('click', () => { $mainModal.modal('hide'); }); - $mainModal.find('.modal-title').html('Загрузка плановых значений'); - $modalFooter.html(''); - $modalBody.html('
' - + '
' - + '
' - + '
' - + '
' - + '
' - + '
Скачать шаблон
' - + ''); + + let title = 'Загрузка плановых значений'; + let downloadLink = '/files/download?url=/uploads/template_plan.xlsx'; + let linkText = 'Шаблон. Загрузка плановых значений'; + let additionalParams = {}; + + if (buttonType === 'btn-adjustment') { + title = 'Внесение корректировок'; + downloadLink = '/files/download?url=/uploads/template_adjustment.xlsx'; + linkText = 'Шаблон. Внесение корректировок'; + additionalParams = { adjustment: true }; // Add additional parameters for adjustment + } + + $modalTitle.html(title); + + $modalBody.html(` +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Скачать шаблон
+
+
+ +
+ `); + const browse = $modalBody.find('input[type=file]').get(0); const btn = $modalBody.find('input[type=submit]').get(0); const info = $modalBody.find('#infoModal').get(0); const form = $modalBody.find('form').get(0); + async function UploadDict() { info.innerHTML = 'загрузка...'; if (browse.files[0].size > 200000) { @@ -34,6 +61,12 @@ function openUploadDictionary() { } const formData = new FormData(form); formData.append(param10, token10); + + // Append additional parameters if present + Object.keys(additionalParams).forEach(key => { + formData.append(key, additionalParams[key]); + }); + try { const response = await fetch("/motivation/index", { method: "POST", @@ -51,17 +84,18 @@ function openUploadDictionary() { console.error(e); } } + browse.addEventListener('change', (event) => { event.preventDefault(); event.stopPropagation(); UploadDict(); - }) + }); btn.addEventListener('click', (event) => { event.preventDefault(); event.stopPropagation(); browse.click(); - }) + }); $mainModal.modal('show'); -} \ No newline at end of file +} -- 2.39.5