]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
Добавляется ссылка для скачивания шаблона
authorAlexander Smirnov <fredeom@mail.ru>
Fri, 26 Jul 2024 11:25:10 +0000 (14:25 +0300)
committerAlexander Smirnov <fredeom@mail.ru>
Fri, 26 Jul 2024 11:25:10 +0000 (14:25 +0300)
erp24/actions/motivation/IndexAction.php
erp24/views/motivation/index.php
erp24/web/js/motivation/index.js

index 6c3c7ae4d0b4bf13f9d31098eb61ede470b879e1..f394a6f56239a714d4a115b5439da5b668d4de56 100644 (file)
@@ -20,10 +20,15 @@ class IndexAction extends Action
         if (Yii::$app->request->isPost) {
             $file = UploadedFile::getInstanceByName('myfile');
             if ($file) {
-                $path = Yii::getAlias('@uploads') . '/template_plan.xslx';
-                $file->saveAs($path);
+                $path1 = Yii::getAlias('@uploads') . '/template_plan_temp.xlsx';
+                $file->saveAs($path1);
 
-                $data = MotivationService::uploadTemplatePlan($path);
+                $data = MotivationService::uploadTemplatePlan($path1);
+
+                if (empty(array_filter($data['errors'], function ($x) { return !empty($x); }))) {
+                    $path2 = Yii::getAlias('@uploads') . '/template_plan.xlsx';
+                    copy($path1, $path2);
+                }
 
                 return implode('<br>', $data['errors']);
             } else {
index 5a91c9052eb01c485696b1ca66dc7e616e84b384..626d1f1913f3dd03f5df9bdf2dac8635b8807009 100644 (file)
@@ -58,7 +58,7 @@ $this->registerJsFile('/js/motivation/index.js', ['position' => \yii\web\View::P
             </div>
             <div class="d-flex justify-content-around align-items-center gap-2">
                 <div class="mb-3"><?= Html::button('Загрузка плановых значений', ['class' => 'btn btn-success btn-sm',
-                        'onclick' => 'openUploadDictionary();'])?></div>
+                        'onclick' => 'openUploadDictionary(' . (file_exists(Yii::getAlias('@uploads') . '/template_plan.xlsx') ? 'true' : 'false'). ');'])?></div>
             </div>
         </div>
     </div>
index 6d2ea8430884228f6f2b1b3ff5623be937f411db..4522c800ad48dd22f3f9edea31e4faefd136bb34 100644 (file)
@@ -4,7 +4,7 @@ const param10 = $("meta[name=csrf-param]").attr("content");
 const token10 = $("meta[name=csrf-token]").attr("content");
 
 /* jshint unused: false */
-function openUploadDictionary() {
+function openUploadDictionary(showDownloadLink) {
     'use strict'
     const $mainModal = $('#mainModal');
     const $modalBody = $mainModal.find('.modal-body');
@@ -12,7 +12,7 @@ function openUploadDictionary() {
     $mainModal.find('.close').on('click', () => { $mainModal.modal('hide'); });
     $mainModal.find('.modal-title').html('Загрузка плановых значений');
     $modalFooter.html('');
-    $modalBody.html('<div class="row"><div class="col-12"><form class="d-flex justify-content-left align-items-center" enctype="multipart/form-data"><div class="d-none"><input type="file" name="myfile" accept=".xlsx"/></div><div><input class="btn btn-success btn-sm" type="submit" value="Загрузить" /></div></form></div></div><div class="row"><div class="col-12" id="infoModal"</div>');
+    $modalBody.html('<div class="row"><div class="col-12"><form class="d-flex justify-content-left align-items-center" enctype="multipart/form-data"><div class="d-none"><input type="file" name="myfile" accept=".xlsx"/></div><div><input class="btn btn-success btn-sm" type="submit" value="Загрузить" /></div>' + (!showDownloadLink ? '' :  '<div><a href="/files/download?url=/uploads/template_plan.xlsx" class="btn btn-link" target="_blank">Скачать</a></div>') + '</form></div></div><div class="row"><div class="col-12" id="infoModal"</div>');
     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);