From e13278606d3facef443c5c65e07b42c52c7a38d5 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 22 十一月 2023 17:12:46 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/UBCS-WEB/package.json                                     |    4 
 Source/UBCS-WEB/src/components/Master/MasterEditBulk.vue         |   40 +++++
 Source/UBCS-WEB/src/views/statistic/statisticPage.vue            |   23 +++
 Source/UBCS-WEB/src/views/wel/Statistic.vue                      |   35 ++--
 Source/UBCS-WEB/src/components/Master/MasterTransfer.vue         |    2 
 Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue      |   59 ++++++--
 Source/UBCS-WEB/src/components/StatisticsComponent/lineChart.vue |  103 ++++++++++++++
 Source/UBCS-WEB/src/components/BatchImport/index.vue             |   81 +++++++++--
 Source/UBCS-WEB/src/main.js                                      |    2 
 Source/UBCS-WEB/src/views/MasterData/items.vue                   |    8 +
 Source/UBCS-WEB/vue.config.js                                    |    4 
 Source/UBCS-WEB/src/components/Master/MasterTree.vue             |    1 
 12 files changed, 310 insertions(+), 52 deletions(-)

diff --git a/Source/UBCS-WEB/package.json b/Source/UBCS-WEB/package.json
index 8553d6c..3d5663c 100644
--- a/Source/UBCS-WEB/package.json
+++ b/Source/UBCS-WEB/package.json
@@ -16,6 +16,7 @@
     "babel-polyfill": "^6.26.0",
     "classlist-polyfill": "^1.2.0",
     "crypto-js": "^4.1.1",
+    "echarts": "4.9.0",
     "element-ui": "^2.15.6",
     "instead": "^1.0.3",
     "js-base64": "^2.5.1",
@@ -27,10 +28,12 @@
     "node-gyp": "^4.0.0",
     "nprogress": "^0.2.0",
     "portfinder": "^1.0.23",
+    "save": "^2.9.0",
     "script-loader": "^0.7.2",
     "vue": "^2.6.10",
     "vue-axios": "^2.1.2",
     "vue-clipboard2": "^0.3.3",
+    "vue-echarts": "5.0.0-beta.0",
     "vue-flowchart-editor": "^1.0.2",
     "vue-i18n": "^8.7.0",
     "vue-router": "^3.0.1",
@@ -40,6 +43,7 @@
     "@vue/cli-plugin-babel": "^3.1.1",
     "@vue/cli-plugin-eslint": "^3.1.5",
     "@vue/cli-service": "^3.1.4",
+    "@vue/composition-api": "^1.7.2",
     "chai": "^4.1.2",
     "node-sass": "^6.0.1",
     "sass-loader": "^10.0.5",
diff --git a/Source/UBCS-WEB/src/components/BatchImport/index.vue b/Source/UBCS-WEB/src/components/BatchImport/index.vue
index 3df3124..02d31db 100644
--- a/Source/UBCS-WEB/src/components/BatchImport/index.vue
+++ b/Source/UBCS-WEB/src/components/BatchImport/index.vue
@@ -14,7 +14,7 @@
     </ul>
     <div
       class="radio_box"
-      v-show="currentTypeObj[type]['upParams'] === 'classifyAttr'"
+      v-show="currentTypeObj[type]['upParams'] === 'classifyAttr' && this.type !== 'bulkEdit'"
     >
       <span>鍒嗙被鐨勮矾寰勪娇鐢ㄧ殑灞炴��:</span>
       <el-radio-group v-model="classifyAttr">
@@ -65,8 +65,14 @@
         size="small"
         @click="downloadTemplateFun"
         :loading="downloadLoading"
-        >涓嬭浇瀵煎叆妯℃澘</el-button
-      >
+        v-if="type !== 'bulkEdit'"
+        >涓嬭浇瀵煎叆妯℃澘</el-button>
+      <el-button type="primary"
+                 size="small"
+                 :loading="downloadLoading"
+                 @click="downloadTemplateFun"
+                 v-if="type === 'bulkEdit'"
+                >涓嬭浇缂栬緫妯℃澘</el-button>
       <el-button size="small" @click="dialogVisible = false">鍏抽棴</el-button>
     </template>
     <ShowImportData
@@ -93,6 +99,8 @@
   downloadBatchImportApplyTemplate,
   downloadBatchApplyCodeTemplate,
 } from "../../api/batchImport/index";
+import {exportCode} from '@/api/GetItem'
+import func from "@/util/func";
 import FormTemplate from "../FormTemplate/FormTemplate.vue";
 import { getToken } from "@/util/auth";
 import codeApply from "@/mixins/codeApply.js";
@@ -116,6 +124,14 @@
     type: {
       type: String,
       default: "",
+    },
+    tableHeadFindData:{
+      type:Array,
+      default:[]
+    },
+    selectRow:{
+      type:Array,
+      default:[]
     },
     resetTable: Function
   },
@@ -146,7 +162,7 @@
       return this.currentTypeObj[this.type]["action"];
     },
     upParams() {
-      if (this.type === "historyImport" || this.type === "batchApplyCode") {
+      if (this.type === "historyImport" || this.type === "batchApplyCode" || this.type === "bulkEdit") {
         return {
           codeClassifyOid: this.codeClassifyOid,
           classifyAttr: this.classifyAttr,
@@ -169,6 +185,7 @@
   },
   data() {
     return {
+      exportArrTwo: {},
       classifyAttr: "id",
       downloadLoading: false,
       showVisible: false,
@@ -189,8 +206,19 @@
           downloadTemplateFun: downloadHistoryImportTemplate,
           upParams: "classifyAttr",
         },
+        bulkEdit:{
+          title: "鎵归噺缂栬緫瀵煎叆",
+          tipList: [
+            "1.鏍囬甯︿簲瑙掓槦鐨勮〃绀哄叧閿睘鎬э紝甯︽槦鍙疯〃绀哄繀杈撻」",
+            "2.姣忔浠呰兘鏈�澶氬鍏�5000鏉℃暟鎹�(鍙�氳繃nacos杩涜閰嶇疆锛屾帹鑽�5000/娆″鍏�)锛屽鏋滃嚭閿欎細杩斿洖閿欒鐨勬暟鎹拰鍘熷洜锛屼絾鏄纭暟鎹彲浠ョ户缁繚瀛�",
+            "3.璇锋寜鐓т笅杞界殑缂栬緫妯℃澘鎵�浣跨敤鐨勯厤缃繘琛屽叿浣撻厤缃�"
+          ],
+          action: "/api/ubcs-code/mdmEngineController/batchImportHistoryData",
+          downloadTemplateFun: downloadHistoryImportTemplate,
+          upParams: "classifyAttr",
+        },
         batchImportApply: {
-          title: "鎵归噺鐢宠缂栫爜",
+          title: "鎵归噺瀵煎叆鐢宠",
           tipList: [
             "1.鏍囬甯︿簲瑙掓槦鐨勮〃绀哄叧閿睘鎬э紝甯︽槦鍙疯〃绀哄繀杈撻」",
             "2.璇蜂竴瀹氬厛閫夋嫨/杈撳叆缂栫爜瑙勫垯鐨勭爜娈靛�煎悗鍐嶉�夋嫨excel鏂囦欢",
@@ -239,17 +267,38 @@
     },
     // 涓嬭浇瀵煎叆妯℃澘
     downloadTemplateFun() {
-      this.downloadLoading = true;
-      this.downloadTemplateApi({
-        codeClassifyOid: this.codeClassifyOid,
-      })
-        .then((res) => {
-          this.$utilFunc.downloadFileByBlob(res.data, this.title + "妯℃澘.xls");
-          this.downloadLoading = false;
-        })
-        .catch(() => {
-          this.downloadLoading = false;
-        });
+       if(this.type !== 'bulkEdit'){
+         this.downloadLoading = true;
+         this.downloadTemplateApi({
+           codeClassifyOid: this.codeClassifyOid,
+         })
+           .then((res) => {
+             this.$utilFunc.downloadFileByBlob(res.data, this.title + "妯℃澘.xls");
+             this.downloadLoading = false;
+           })
+           .catch(() => {
+             this.downloadLoading = false;
+           });
+         return;
+       }
+       if(this.type === 'bulkEdit'){
+         this.tableHeadFindData.map(item => item.prop)
+           .forEach((prop, index) => {
+             this.exportArrTwo[`attrIdIndexMap[${index}]`] = prop;
+           });
+         exportCode({
+           codeClassifyOid: this.codeClassifyOid,
+           'conditionMap[oid]': this.ids, ...this.exportArrTwo,
+           limit: -1
+         }).then(res => {
+           // console.log('res',res)
+           if (res) {
+             func.downloadFileByBlobHandler(res);
+             this.$message.success('涓嬭浇鎴愬姛锛岃鏌ョ湅锛�')
+           }
+         })
+         return;
+       }
     },
     onSuccess(res) {
       if (Object.keys(res.data).length === 0) {
diff --git a/Source/UBCS-WEB/src/components/Master/MasterEditBulk.vue b/Source/UBCS-WEB/src/components/Master/MasterEditBulk.vue
new file mode 100644
index 0000000..6853226
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/Master/MasterEditBulk.vue
@@ -0,0 +1,40 @@
+<template>
+  <el-dialog
+    v-if="dialogVisible"
+    v-dialogDrag
+    title="鎵归噺淇敼"
+    :visible.sync="dialogVisible"
+    append-to-body
+  ></el-dialog>
+</template>
+
+<script>
+export default {
+  name: "MasterEditBulk",
+  props: {
+    visible: {
+      type: Boolean,
+      default: false,
+    },
+  },
+  data(){
+    return{
+
+    }
+  },
+  computed:{
+    dialogVisible: {
+      get() {
+        return this.visible;
+      },
+      set(val) {
+        this.$emit("update:visible", val);
+      },
+    },
+  }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue b/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue
index 8d3d9df..7ddabc7 100644
--- a/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue
+++ b/Source/UBCS-WEB/src/components/Master/MasterTransfer.vue
@@ -112,7 +112,7 @@
     },
     value: {
       handler(newval, oldval) {
-        //console.log('value', newval)
+        // console.log('value', newval)
       }
     }
   },
diff --git a/Source/UBCS-WEB/src/components/Master/MasterTree.vue b/Source/UBCS-WEB/src/components/Master/MasterTree.vue
index c1e383e..3948716 100644
--- a/Source/UBCS-WEB/src/components/Master/MasterTree.vue
+++ b/Source/UBCS-WEB/src/components/Master/MasterTree.vue
@@ -211,6 +211,7 @@
         this.TableRend(); // TableHeadRend() 鏂规硶瀹屾垚鍚庡啀鎵ц TableRend()
         this.$emit('nodeClick', this.templateOids)
         this.$emit("codeClassifyOid", this.nodeClickList.oid)
+        this.$emit("nodeClickList", this.nodeClickList)
       } catch (error) {
         // 澶勭悊閿欒
         this.$message.error(error)
diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
index af69b6f..5025b4b 100644
--- a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
+++ b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
@@ -62,7 +62,7 @@
                     </el-link>
                   </template>
                 </el-table-column>
-                <el-table-column v-for="item in this.tableHeadFindData" v-if="!item.hidden && item.prop !== 'id' && item.prop !== 'lcstatus'"
+                <el-table-column v-for="item in this.tableHeadFindData" v-if="!item.hidden && item.prop !== 'id' && item.prop !== 'lcstatus' && Object.keys(item.referConfig).length <= 0"
                                  :key="item.id"
                                  :formatter="item.formatter"
                                  :label="item.label" :prop="item.prop"
@@ -71,7 +71,14 @@
                                  :width="item.width"
                                  align="center">
                 </el-table-column>
-
+                <!--               鍙傜収鏁版嵁-->
+                <el-table-column v-for="(item,index) in referArray" key="index" v-if="Object.keys(item.referConfig).length > 0 && !item.hidden" :label="item.title" prop="jiliangdw"
+                                 :show-overflow-tooltip="true" :sortable="item.sortable" :width="item.width"
+                                 align="center">
+                  <template slot-scope="scope">
+                    <span>{{ scope.row.jiliangdwname }}</span>
+                  </template>
+                </el-table-column>
               </el-table>
             </div>
           </el-row>
@@ -100,7 +107,7 @@
                               :visible.sync="editvisible"
                               type="edit" @submit="EditSumbit"></FormTemplateDialog>
           <!--          鎵归噺缂栬緫-->
-          <FormBulkEdit :visible.sync="bulkeditvisible"></FormBulkEdit>
+<!--          <MasterEditBulk :visible.sync="bulkeditvisible" ></MasterEditBulk>-->
           <!--          鏁版嵁璇︽儏-->
           <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
                                :rowOid="this.LinkObject.oid" :templateOid="templateOid"
@@ -133,6 +140,10 @@
                           :tableData="tableData"
                           :tableHeadData="tableHeadFindData" :templateOid="templateOid"
                           :visible.sync="dialogPush"></MasterTransfer>
+          <!--        瀵煎叆-->
+          <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :resetTable="CrudRend"
+                       :visible.sync="batchImportData.visible" :tableHeadData="tableHeadFindData" :selectRow="selectRow">
+          </BatchImport>
           <!--          鐩镐技椤�-->
           <ResembleQueryDialog :codeClassifyOid="codeClassifyOid" :codeRuleOid="this.codeRuleOid" :rowOid="rowOid"
                                :templateOid="templateOid" :visible.sync="similarVisible"></ResembleQueryDialog>
@@ -144,12 +155,6 @@
             </el-pagination>
           </div>
         </div>
-      </div>
-      <div>
-<!--        瀵煎叆-->
-        <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :resetTable="CrudRend"
-                     :visible.sync="batchImportData.visible">
-        </BatchImport>
       </div>
       <div class="bottom">
         <el-collapse v-model="visibleNames" @change="handleCollapse">
@@ -179,6 +184,7 @@
 import SetPersonnel from "@/components/template/SetPersonnel";
 import ResembleQueryDialog from "@/components/FormTemplate/ResembleQueryDialog.vue";
 import BatchImport from '@/components/BatchImport'
+import MasterEditBulk from '@/components/Master/MasterEditBulk'
 import {validatenull} from "@/util/validate";
 import fileInHtml from "@/components/file/inHtml.vue";
 import {getUserInfo} from "@/api/system/user";
@@ -191,6 +197,7 @@
     ResembleQueryDialog,
     BatchImport,
     fileInHtml,
+    MasterEditBulk
   },
   name: "Crud.vue",
   props: {
@@ -239,7 +246,10 @@
     Treedata: {
       type: Array
     },
-
+    nodeClickList:{
+      type:Array,
+      default:[]
+    }
   },
   data() {
     return {
@@ -250,8 +260,12 @@
       LinkList: [],
       isCodeArrayPushed: false, // 缂栫爜鏁扮粍娣诲姞鏍囪瘑鍙橀噺
       CodeArray: [],
+      //鐢熷懡鍛ㄦ湡鏁扮粍
       lcstatusArray:[],
+      //鍙傜収鏁版嵁鏁扮粍
+      referArray:[],
       islcstatusPushed:false,
+      isReferPushed:false,
       // 鐘舵�佹悳绱�
       statusSelect: "all",
       // 鍏抽敭瀛楁煡璇�
@@ -426,7 +440,16 @@
           // console.log('lcstatusArray', this.lcstatusArray);
           this.islcstatusPushed = true;
         }
-        // console.log('new',newval)
+        if(!this.isReferPushed){
+          if (newval.find(item => Object.keys(item.referConfig).length > 0)) {
+            this.referArray.push(newval.find(item => Object.keys(item.referConfig).length > 0));
+          }else {
+            this.referArray.push([])
+          }
+        }
+        this.isReferPushed=true;
+        console.log('new',this.referArray)
+        console.log('ss',newval.find(item => Object.keys(item.referConfig).length > 0))
         this.WupinFindValue = ''
       },
     },
@@ -521,7 +544,7 @@
         //  鏍囧噯淇
         if (uniqueFlag === 'CODEAMEND') return this.codeAMENDHandler()
         //鎵归噺缂栬緫
-        if (uniqueFlag === 'bulkEdit') return this.bulkEditHandler()
+        if (uniqueFlag === 'bulkEdit') return this.bulkEditHandler("bulkEdit")
       });
     },
     //鏍囧噯鐢宠
@@ -548,7 +571,12 @@
       }
     },
     //鎵归噺缂栬緫
-    bulkEditHandler(){
+    bulkEditHandler(type){
+      console.log(this.nodeClickList)
+      if(this.nodeClickList.children.length >= 1){
+        this.$message.warning('褰撳墠閫夋嫨鐨勫垎绫讳笉鏄彾瀛愯妭鐐癸紝涓嶅厑璁告壒閲忕紪杈戯紒')
+        return;
+      }
       if(this.selectRow.length <= 0){
         this.$message.warning('璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹紒')
         return;
@@ -556,7 +584,9 @@
       const Editing = this.selectRow.every(item => item.lcstatus === 'Editing');
 
       if (Editing) {
-        this.bulkeditvisible = true;
+        this.batchImportData.visible = true
+        this.batchImportData.type = type
+        this.batchImportData.codeClassifyOid = this.codeClassifyOid
       } else {
         this.$message.warning('閫夋嫨鐨勬暟鎹腑鏈夌紪鐮佺姸鎬佷笉鏄�滅紪杈戜腑鈥濓紝涓嶅彲缂栬緫锛�');
       }
@@ -574,6 +604,7 @@
         // const requestData = this.selectRow.forEach(item => {
         //   return { oids: item.oid, btmName: item.btmname };
         // });
+
         const oids = this.selectRow.map(item => item.oid).join(',');
         applyGroupCode({oids, btmName: this.selectRow[0].btmname}).then(res => {
           if (res.data.code == 200) {
diff --git a/Source/UBCS-WEB/src/components/StatisticsComponent/lineChart.vue b/Source/UBCS-WEB/src/components/StatisticsComponent/lineChart.vue
new file mode 100644
index 0000000..6ea8c1d
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/StatisticsComponent/lineChart.vue
@@ -0,0 +1,103 @@
+<template>
+  <div id="main">
+    <basic-container>
+      <v-chart :options="option" ref="chart" style="width: 100%;height:100vh"></v-chart>
+    </basic-container>
+  </div>
+</template>
+
+<script>
+import 'echarts'
+import 'echarts/lib/chart/line';
+import 'echarts/lib/component/tooltip';
+import 'echarts/lib/component/title';
+import 'echarts/lib/component/legend';
+export default {
+  name: "statisticPage",
+  data() {
+    return {
+      option: {
+        color: ['red','black'],
+        legend: {
+          data: ['鍥句緥1', '鍥句緥2', '鍥句緥3'],
+        },
+        dataset: [
+          {
+            id: 'dataset_raw',
+            source: [
+              { month: 1, total: 1000, newly: 800 },
+              { month: 2, total: 5000, newly: 1000 },
+              { month: 3, total: 1800, newly: 1400 },
+              { month: 4, total: 1500, newly: 1200 },
+              { month: 5, total: 1000, newly: 1200 },
+              { month: 6, total: 1500, newly: 1200 },
+              { month: 7, total: 1500, newly: 1200 },
+              { month: 8, total: 1500, newly: 1000 },
+              { month: 9, total: 1500, newly: 1200 },
+              { month: 10, total: 1500, newly: 1200 },
+              { month: 11, total: 1500, newly: 1200 },
+              { month: 12, total: 1500, newly: 1200 },
+            ],
+          },
+        ],
+        title: {
+          text: '涓婚搴撴暟鎹粺璁″垎鏋�',
+          left:'center',
+          textAlign:'center'
+        },
+        tooltip: {
+          trigger: 'axis',
+        },
+        xAxis: {
+          type: 'category',
+          nameLocation: 'middle',
+          name:'month',
+          // data: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] // 鏈堜唤鏁版嵁
+        },
+        yAxis: {
+          name: 'Number',
+          type: 'value',
+        },
+        series: [
+          {
+            type: 'line',
+            datasetId: 'dataset_raw',
+            showSymbol: false,
+            encode: {
+              x: 'month',
+              y: 'total',
+              itemName: 'month',
+              tooltip: ['total'],
+            },
+          },
+          {
+            type: 'line',
+            datasetId: 'dataset_raw',
+            showSymbol: false,
+            encode: {
+              x: 'month',
+              y: 'newly',
+              itemName: 'month',
+              tooltip: ['newly'],
+            },
+          },
+        ],
+      }
+    };
+  },
+  mounted() {
+    import('echarts').then((echarts) => {
+      // console.log(echarts)
+      this.$nextTick(() => {
+        const chartDom = this.$refs.chart.$el;
+        const myChart = echarts.init(chartDom);
+        myChart.setOption(this.option);
+      });
+    });
+  },
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/Source/UBCS-WEB/src/main.js b/Source/UBCS-WEB/src/main.js
index b4c69fe..da4a596 100644
--- a/Source/UBCS-WEB/src/main.js
+++ b/Source/UBCS-WEB/src/main.js
@@ -24,6 +24,8 @@
 import website from '@/config/website';
 import crudCommon from '@/mixins/crud';
 import Divider from './components/Divider';
+import ECharts from 'vue-echarts'
+Vue.component('v-chart', ECharts)
 // 涓氬姟缁勪欢
 import tenantPackage from './views/system/tenantpackage';
 import enupackage from "@/views/modeling/enupackage";
diff --git a/Source/UBCS-WEB/src/views/MasterData/items.vue b/Source/UBCS-WEB/src/views/MasterData/items.vue
index 49816c3..f84b48b 100644
--- a/Source/UBCS-WEB/src/views/MasterData/items.vue
+++ b/Source/UBCS-WEB/src/views/MasterData/items.vue
@@ -15,6 +15,7 @@
           @tableHeadBttoms="tableHeadBttoms"
           @tableHeadDataFateher="tableHeadDatas"
           @tableHeadFindData="tableHeadFindDatas"
+          @nodeClickList="nodeClickLists"
           @total="totals"
         >
         </master-tree>
@@ -35,6 +36,7 @@
         :tableHeadFindData="tableHeadFindData"
         :templateOid="templateOid"
         :total="this.total"
+        :nodeClickList="this.nodeClickList"
         @currentPage="currentPages"
         @pageSize="pageSizes"
       >
@@ -67,12 +69,16 @@
       total: "",
       isLoading: false,
       tableHeadFindData: {},
-      TreeValue: ''
+      TreeValue: '',
+      nodeClickList:[]
     }
   },
   created() {
   },
   methods: {
+    nodeClickLists(val){
+      this.nodeClickList=val;
+    },
     TreeValueEmit(val) {
       this.TreeValue = val
     },
diff --git a/Source/UBCS-WEB/src/views/statistic/statisticPage.vue b/Source/UBCS-WEB/src/views/statistic/statisticPage.vue
new file mode 100644
index 0000000..8707be1
--- /dev/null
+++ b/Source/UBCS-WEB/src/views/statistic/statisticPage.vue
@@ -0,0 +1,23 @@
+<template>
+<lineChart></lineChart>
+</template>
+
+<script>
+import lineChart from "../../components/StatisticsComponent/lineChart"
+
+export default {
+  components: {
+    lineChart
+  },
+  name: "statisticPage",
+  data(){
+    return{
+
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/Source/UBCS-WEB/src/views/wel/Statistic.vue b/Source/UBCS-WEB/src/views/wel/Statistic.vue
index 691cf38..0eda3f5 100644
--- a/Source/UBCS-WEB/src/views/wel/Statistic.vue
+++ b/Source/UBCS-WEB/src/views/wel/Statistic.vue
@@ -9,6 +9,7 @@
                top='-40px'>
       <el-table
         ref="TableBox"
+        v-loading="TableLoading"
         :data="Crud.data"
         border
         style="width: 100%"
@@ -66,6 +67,7 @@
   name: "Statistic",
   data() {
     return {
+      TableLoading: false,
       loading: true,
       Crud: {
         form: '',
@@ -120,30 +122,27 @@
       // console.log(row)
       this.SelectRow = row;
     },
-    SaveHandler() {
+    async SaveHandler() {
       if (this.SelectRow.length <= 0) {
-        this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹紒')
-        return
+        this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹紒');
+        return;
       }
-      let mdmNameList = [];
-      mdmNameList = this.SelectRow.map(item => {
-        return item.code
-      })
-      console.log(mdmNameList)
-      save(this.userId, mdmNameList).then(res => {
-        console.log(res)
-        if (res.data.code === 200) {
-          this.$message.success('淇濆瓨鎴愬姛锛�')
-          //娓呴櫎宸叉湁鏁扮粍涓璸ush鏁版嵁
+      this.TableLoading = true;
+      try {
+        const {data: {code}} = await save(this.userId, this.SelectRow.map(item => item.code));
+        if (code === 200) {
+          this.$message.success('淇濆瓨鎴愬姛锛�');
           this.newData = [];
-          this.option.data = []
-          this.MasterGetList()
+          this.option.data = [];
+          this.MasterGetList();
           this.dialogTableVisible = false;
-          //瀛椾綋鍜岃竟妗嗛噸鏂板姞杞�
+          this.TableLoading = false;
           this.loading = true;
-          this.FontInfo()
+          this.FontInfo();
         }
-      })
+      } catch {
+        this.TableLoading = false;
+      }
     },
     MoreHandler() {
       this.dialogTableVisible = true;
diff --git a/Source/UBCS-WEB/vue.config.js b/Source/UBCS-WEB/vue.config.js
index 264ceae..fcfbd7d 100644
--- a/Source/UBCS-WEB/vue.config.js
+++ b/Source/UBCS-WEB/vue.config.js
@@ -26,9 +26,9 @@
     proxy: {
       '/api': {
         //鏈湴鏈嶅姟鎺ュ彛鍦板潃
-        target: 'http://127.0.0.1:37000',
+        // target: 'http://127.0.0.1:37000',
         // target: 'http://192.168.1.51:37000',
-        // target: 'http://dev.vci-tech.com:37000',
+        target: 'http://dev.vci-tech.com:37000',
         //yxc
         // target: 'http:// 192.168.0.104:37000',
         // target: 'http://192.168.0.105:37000',

--
Gitblit v1.9.3