From cf585780ca83908649c5fad7c07b5e45c4f12b67 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期一, 18 九月 2023 14:14:45 +0800
Subject: [PATCH] 首页样式修改

---
 Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue |  540 +++++++++++++++++++++++++++++++----------------------------
 1 files changed, 282 insertions(+), 258 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
index 61fbfc8..61ebc48 100644
--- a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
+++ b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
@@ -5,7 +5,7 @@
         <div class="testbox" style="">
           <div>
           </div>
-          <el-row style="width: 100%;margin-bottom: 20px">
+          <el-row style="width: 100%;margin-bottom: 10px">
             <div>
               <el-button v-for="(item, index) in masterVrBtnList"
                          v-if="!['PREVIEW', 'DELETEFILE', 'revisefile', 'DOWNLOADFILE', 'UPLOADFILE'].includes(item.uniqueFlag)"
@@ -15,30 +15,46 @@
                   item.name
                 }}
               </el-button>
+              <span v-if="tableHeadFindData.length > 0">
+              <el-select slot="prepend" v-model="keyWordFind" placeholder="璇烽�夋嫨" size="small">
+                <el-option v-for="item in tableHeadFindData" :label="item.label" :value="item.prop"></el-option>
+              </el-select>
               <el-input v-model="WupinFindValue" placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�"
                         size="small" style="width: 180px; margin-left: 5px; margin-top: 10px"
-                        @keyup.enter.native="tableFindInp"  v-if="tableData.length != 0"></el-input>
+                        @keyup.enter.native="tableFindInp"></el-input>
+              </span>
+              <span v-if="tableHeadFindData.length > 0" style="margin-left: 10px">
+               <p style="font-size: 13px;display: inline-block;"> 鐘舵�侊細</p>
+                <el-select slot="prepend" v-model="statusSelect" placeholder="璇烽�夋嫨" size="small"
+                           @change="cellSelectHandler">
+                <el-option label="鍏ㄩ儴" value="all"></el-option>
+                <el-option label="宸插彂甯�" value="Released"></el-option>
+                <el-option label="缂栬緫涓�" value="Editing"></el-option>
+                <el-option label="宸插仠鐢�" value="Disabled"></el-option>
+                <el-option label="瀹℃牳涓�" value="Auditing"></el-option>
+              </el-select></span>
             </div>
-            <el-table  ref="dataTable" v-loading="isLoading" :data="tableData"
+            <el-table ref="dataTable" v-loading="isLoading" :data="tableData"
                       :height="tableHeight"
                       @select="handleSelection" @cell-click="handleCellClick" @row-click="handleRowClick"
                       @select-all="handleSelectionAll" @selection-change="handleSelectionChange"
                       @sort-change="sortChange">
-              <el-table-column fixed type="selection" width="55" v-if="tableData.length != 0"></el-table-column>
-              <el-table-column fixed label="搴忓彿" type="index" width="55" v-if="tableData.length != 0">
+              <el-table-column v-if="tableData.length != 0" fixed type="selection" width="55"></el-table-column>
+              <el-table-column v-if="tableData.length != 0" fixed label="搴忓彿" type="index" width="55">
               </el-table-column>
               <el-table-column v-for="item in this.tableHeadFindData" :key="item.id" :formatter="item.formatter"
                                :label="item.label"
                                :prop="item.prop" :show-overflow-tooltip="true"
                                :sortable="item.sortable"
                                :width="item.width"
+                               v-if="!item.hidden"
                                align="center">
               </el-table-column>
             </el-table>
           </el-row>
           <!--          鏂板-->
           <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
-                              :disabledProp="disabledProp" :templateOid="templateOid" :visible.sync="addvisible"
+                              :disabledProp="disabledProp" :templateOid="templateOid" :visible.sync="addvisible" :TreeValue="TreeValue"
                               type="add"
                               @submit="AddSumbit">
           </FormTemplateDialog>
@@ -51,28 +67,33 @@
           <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
                               :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid"
                               :title="'宸插彂甯冩暟鎹洿鏀�'"
-                              :type="edit"
-                              :visible.sync="DataVisible"></FormTemplateDialog>
+                              :visible.sync="DataVisible"
+                              type="edit" @submit="updataSumbit"></FormTemplateDialog>
           <!--          鍙戝竷-->
-          <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleFlow" @onLoad="onLoad"></set-personnel>
+          <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleFlow"
+                         @onLoad="onLoad"></set-personnel>
           <!--          鍋滅敤-->
-          <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleDeactivate" @onLoad="onLoad"></set-personnel>
+          <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleDeactivate"
+                         @onLoad="onLoad"></set-personnel>
           <!--          鍚敤-->
-          <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleEnable" @onLoad="onLoad"></set-personnel>
+          <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleEnable"
+                         @onLoad="onLoad"></set-personnel>
           <!--          鍥炴敹-->
-          <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleRecovery" @onLoad="onLoad"></set-personnel>
+          <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleRecovery"
+                         @onLoad="onLoad"></set-personnel>
           <!--          楂樼骇鏌ヨ-->
           <advanced-query :options="this.options" :visible.sync="findvisible"
                           @echoContion="echoContion"></advanced-query>
           <!--          瀵煎嚭-->
-          <MasterTransfer :codeClassifyOid="codeClassifyOid" :limit="page.pageSize" :templateOid="templateOid" :selectRow="selectRow"
-                          :tableData="tableData" :tableHeadData="tableHeadFindData"
+          <MasterTransfer :codeClassifyOid="codeClassifyOid" :limit="page.pageSize" :selectRow="selectRow"
+                          :tableData="tableData"
+                          :tableHeadData="tableHeadFindData" :templateOid="templateOid"
                           :visible.sync="dialogPush"></MasterTransfer>
           <!--          鐩镐技椤�-->
           <ResembleQueryDialog :codeClassifyOid="codeClassifyOid" :codeRuleOid="this.codeRuleOid" :rowOid="rowOid"
                                :templateOid="templateOid" :visible.sync="similarVisible"></ResembleQueryDialog>
           <div class="block" style="display: flex; justify-content: flex-end">
-            <el-pagination :current-page="page.currentPage" :page-size="page.pageSizes" :page-sizes="page.pageSizes"
+            <el-pagination :current-page="page.currentPage" :page-size="page.pageSize" :page-sizes="page.pageSizes"
                            :total="page.total" layout="total, sizes, prev, pager, next, jumper"
                            @size-change="handleSizeChange"
                            @current-change="handleCurrentChange">
@@ -81,7 +102,8 @@
         </div>
       </div>
       <div>
-        <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :visible.sync="batchImportData.visible" :resetTable="CrudRend">
+        <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :resetTable="CrudRend"
+                     :visible.sync="batchImportData.visible">
         </BatchImport>
       </div>
       <div class="bottom">
@@ -95,8 +117,8 @@
   </basic-container>
 </template>
 <script>
-import {MasterTable, TableData, FindData, addSaveCode, editSaveCode,deleteCode} from "@/api/GetItem";
-import {processTS,changeStatus} from "@/api/template/setPersonnel"
+import {MasterTable, TableData, FindData, addSaveCode, editSaveCode, deleteCode, upSaveCode,applyGroupCode,receiveEditApply} from "@/api/GetItem";
+import {processTS, changeStatus} from "@/api/template/setPersonnel"
 import {listCodeAttributeByClassId} from "@/api/integration/integration.js";
 import integrationTransfer from "@/views/integration/integrationTransfer";
 import SetPersonnel from "@/components/template/SetPersonnel";
@@ -104,6 +126,7 @@
 import BatchImport from '@/components/BatchImport'
 import {validatenull} from "@/util/validate";
 import fileInHtml from "@/components/file/inHtml.vue";
+import {getUserInfo} from "@/api/system/user";
 
 export default {
   components: {
@@ -132,6 +155,10 @@
     tableDataArray: {
       type: Array,
     },
+    TreeValue:{
+      type: String,
+      default: "",
+    },
     total: {
       type: String,
       default: "",
@@ -153,21 +180,30 @@
     tableHeadBtnData: {
       type: Array,
     },
+    Treedata: {
+      type: Array
+    },
+
   },
   data() {
     return {
+      // 鐘舵�佹悳绱�
+      statusSelect: "all",
+      // 鍏抽敭瀛楁煡璇�
+      keyWordFind: "",
       searchResults: [],
       //棣栭〉鍙充晶鎼滅储
       WupinFindValue: "",
       //鐩镐技椤规煡璇�
       similarVisible: false,
-      //鍙戝竷
+      //鍚姩娴佺▼
       parameter: {
         ids: [],
+        btmtype: '',
         code: "",
         type: '',
         // this.visibleDeactivate ?'ENABLE':this.visibleEnable ? 'DISABLE' :this.visibleRecovery ? 'ROLLBACK' :'PUBLIC'
-        template: "",
+        processName: "",
         vars: {
           codeClassifyOid: "",
           templateOid: ""
@@ -212,7 +248,7 @@
         datetime: "datetime",
       },
       tableData: [],
-      tableHeight: 'calc(100vh - 330px)',
+      tableHeight: 'calc(100vh - 350px)',
       DataVisible: false,
       tableHeadData: [],
       items: {},
@@ -233,17 +269,31 @@
         fileDocClassifyName: '',
         hasDownload: true,
         hasUpload: true,
-        height: 100
-      }
+        height: 110
+      },
+      result: ''
     };
   },
-  computed: {},
+  computed: {
+    oids() {
+      let oids = [];
+      this.selectRow.forEach(ele => {
+        oids.push(ele.oid);
+      });
+      return oids;
+    }
+  },
   created() {
+    // const index = this.$route.query.id.indexOf('@name=') + '@name='.length;
+    // this.result = this.$route.query.id.substring(index);
+    getUserInfo().then(res => {
+      this.result = res.data.data.realName
+    })
   },
   mounted() {
   },
   activated() {
-   this.doLayout()
+    this.doLayout()
   },
   updated() {
     this.doLayout()
@@ -257,7 +307,6 @@
     codeClassifyOid: {
       handler(newval, oldval) {
         this.codeClassifyOid = newval;
-        this.parameter.vars.codeClassifyOid = newval
       },
       deep: true,
     },
@@ -284,8 +333,13 @@
               }
             }
           }
+
+          if (_index == 0) {
+            this.keyWordFind = record.field
+          }
         })
         this.tableHeadFindDatas = newval;
+        this.WupinFindValue = ''
       },
     },
     total: {
@@ -295,9 +349,7 @@
     },
     templateOid: {
       handler(newval, oldval) {
-        this.parameter.code = newval;
         this.fileOptions.ownbizOid = "0";
-        this.parameter.vars.templateOid = newval
       },
       deep: true,
     },
@@ -308,16 +360,35 @@
         }
       },
       deep: true
-    }
+    },
   },
   methods: {
+    //鐘舵�佹悳绱�
+    cellSelectHandler(row) {
+      if (row === 'all') {
+        this.cellStatusFind()
+      } else {
+        this.cellStatusFind(row)
+      }
+    },
+    cellStatusFind(lcstatus) {
+      TableData({
+        templateOid: this.templateOid,
+        codeClassifyOid: this.codeClassifyOid,
+        page: this.page.currentPage,
+        limit: this.page.pageSize,
+        'conditionMap[lcstatus]': lcstatus
+      }).then(res => {
+        this.tableData = res.data.data
+      })
+    },
     //灞曞紑闄勪欢
     handleCollapse(activeNames) {
       if (activeNames.length > 0) {
         this.tableHeight = 'calc(100vh - 630px)';
         this.$refs.dataTable.doLayout()
       } else {
-        this.tableHeight = 'calc(100vh - 330px)';
+        this.tableHeight = 'calc(100vh - 350px)';
         this.$refs.dataTable.doLayout()
       }
     },
@@ -346,9 +417,47 @@
         if (uniqueFlag === 'CODERECYCLE') return this.Recovery()
         //鍒犻櫎
         if (uniqueFlag === 'CODEDELETE') return this.enumDeleteRow()
+        //鐢宠闆嗗洟鐮佹暟鎹�
+        if (uniqueFlag === 'applyGroupCode') return this.applyGroupCode()
+        //鏇存柊闆嗗洟鐮佹暟鎹�
+        if (uniqueFlag === 'receiveEditApply') return this.receiveEditApply()
         //  鐩镐技椤规煡璇�
         //  if(uniqueFlag === 'CODEEDIT') return this.similarHandler()
       });
+    },
+    //鐢宠闆嗗洟鐮佹暟鎹�
+    applyGroupCode(){
+      if(this.selectRow.length <= 0){
+        this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹ā鏉匡紒')
+      }else {
+        // 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){
+            this.$message.success('鐢宠鎴愬姛')
+          }
+          this.onLoad()
+        })
+      }
+    },
+    //鏇存柊闆嗗洟鐮佹暟鎹�
+    receiveEditApply(){
+      if(this.selectRow.length <= 0){
+        this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹ā鏉匡紒')
+      }else {
+        // const requestData = this.selectRow.forEach(item => {
+        //   return { oids: item.oid, btmName: item.btmname };
+        // });
+        const oids = this.selectRow.map(item => item.oid).join(',');
+        receiveEditApply({ oids, btmName: this.selectRow[0].btmname }).then(res => {
+          if(res.data.code==200){
+            this.$message.success('鏇存柊鎴愬姛')
+            this.onLoad()
+          }
+        });
+      }
     },
     openD() {
       this.getListCodeByClassId();
@@ -364,229 +473,129 @@
         this.transferData = data;
       }
     },
-    handelTransferSave(val) {
-      console.log('鍙戝竷', val)
-    },
     rend() {
       this.tableData = this.tableHeadData;
     },
     // 鍙戝竷
     setHandler() {
-      if (this.selectRow.length > 0) {
-        let hasEditing = this.selectRow.some(item => item.lcstatus !== 'Editing');
-        let showMessage = true;
-        this.selectRow.forEach(item => {
-          if (this.selectRow.length === 1 && item.lcstatus !== "Editing" && showMessage) {
-            this.$message.warning('鍙湁鐘舵�佹槸銆愮紪杈戜腑銆戠殑鏁版嵁鎵嶅彲浠ュ彂璧锋祦绋�');
-            showMessage = false;
-          } else if (hasEditing && showMessage) {
-            this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愮紪杈戜腑銆戞墠鍙互鍙戣捣娴佺▼');
-            showMessage = false;
-          } else if (showMessage) {
-            processTS({templateId: this.templateOid, buttonTypeKey: 'PUBLIC'}).then(res => {
-              if (res.data.data.records && res.data.data.records.length!=0)  {
-                this.userName = localStorage.getItem("username");
-                this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]";
-                this.parameter.type = 'PUBLIC';
-                this.parameter.code=this.templateOid
-                this.title = '娴佺▼瀹℃壒'
-                this.visibleFlow = true;
-              } else {
-                this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', {
-                  confirmButtonText: '纭畾',
-                  cancelButtonText: '鍙栨秷',
-                  type: 'warning'
-                }).then(() => {
-                  const index = this.$route.query.id.indexOf('@');
-                  const result = this.$route.query.id.substring(0, index);
-                  console.log(this.$route.query)
-                  const oid = this.selectRow.map(obj => obj.oid).join(",");
-                  changeStatus({ oid: oid, btmname: result, lcStatus: 'Released' }).then(res => {
-                    if(res.data.code == 200 ){
-                      this.$message.success('鍙戝竷鎴愬姛')
-                      this.onLoad()
-                    }
-                  });
-                }).catch(() => {
-                  this.$message({
-                    type: 'info',
-                    message: '宸插彇娑�'
-                  });
-                })
-              }
-            })
-          }
-        });
-      } else {
-        this.$message.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�')
+      var options = {
+        processUse: 'PUBLIC',
+        processUseText: '鐢宠',
+        allowStatus: 'Editing',
+        allowStatusText: '宸茬紪杈�',
+        startStatus: 'Auditing',
+        resetStatus: 'Editing',
+        batchTitle: '鎵归噺鎻愪氦缂栫爜鏁版嵁鍒版祦绋嬪鎵�',
+        title: '鎻愪氦缂栫爜鏁版嵁鍒版祦绋嬪鎵�'
       }
+      this.checkStatusAndSubmitProcess(options, 'Released');
     },
     //鍋滅敤
     Deactivate() {
-      if (this.selectRow.length <= 0) {
-        this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
-      } else {
-        let hasEditing = this.selectRow.every(item => item.lcstatus == 'Released');
-        let showMessage = true;
-        this.selectRow.forEach(item => {
-          if (this.selectRow.length === 1 && item.lcstatus === "Disabled" && showMessage) {
-            this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�');
-            showMessage = false;
-          }  else if (this.selectRow.length >=1 && !hasEditing  && showMessage) {
-            this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬彂甯冪姸鎬併�戞墠鍙互鍙戣捣娴佺▼');
-            showMessage = false;
-          } else if (this.selectRow.length > 1 && hasEditing && showMessage) {
-            processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => {
-              if (res.data.records != [] && res.data.data.records.length!=0) {
-                this.userName = localStorage.getItem("username");
-                this.parameter.template = this.userName + "鍋滅敤" + "[鐗╁搧]";
-                this.parameter.type = 'DISABLE';
-                this.parameter.code=this.templateOid
-                this.title = '鍋滅敤锛堝喕缁擄級缂栫爜鏁版嵁'
-                this.visibleDeactivate = true;
-              } else {
-                if (showMessage) {
-                  showMessage = false; // 鏍囪宸叉墽琛岃繃鎿嶄綔
-                  this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', {
-                    confirmButtonText: '纭畾',
-                    cancelButtonText: '鍙栨秷',
-                    type: 'warning'
-                  }).then(() => {
-                    const index = this.$route.query.id.indexOf('@');
-                    const result = this.$route.query.id.substring(0, index);
-                    const oid = this.selectRow.map(obj => obj.oid).join(",");
-                      changeStatus({ oid: oid, btmname: result, lcStatus: 'Disabled' }).then(res => {
-                        if(res.data.code == 200 ){
-                          this.$message.success('鍋滅敤鎴愬姛')
-                          this.onLoad()
-                        }
-                      });
-                  }).catch(() => {
-                    this.$message({
-                      type: 'info',
-                      message: '宸插彇娑�'
-                    });
-                  });
-                }
-              }
-            });
-          }else {
-            this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹负銆愬彂甯冪姸鎬併�戞墠鍙互鍙戣捣娴佺▼')
-          }
-        });
+      var options = {
+        processUse: 'DISABLE',
+        processUseText: '鍋滅敤',
+        allowStatus: 'Released',
+        allowStatusText: '宸插彂甯�',
+        resetStatus: 'Released',
+        batchTitle: '鎵归噺鍋滅敤(鍐荤粨)鐨勭紪鐮佹暟鎹�',
+        title: '鍋滅敤(鍐荤粨)缂栫爜鏁版嵁',
+        confirmMsg: '鏄惁瑕佸仠鐢ㄨ繖浜涙暟鎹�'
       }
+      this.checkStatusAndSubmitProcess(options, 'Disabled');
     },
     //鍚敤
     Enable() {
-      if (this.selectRow.length <= 0) {
-        this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
-      } else {
-        let hasEditing = this.selectRow.every(item => item.lcstatus == 'Disabled');
-        let showMessage = true;
-        this.selectRow.forEach(item => {
-          if (this.selectRow.length === 1 && item.lcstatus !== "Disabled" && showMessage) {
-            this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�');
-            showMessage = false;
-          } else if (this.selectRow.length >=1 && hasEditing && showMessage) {
-            processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => {
-              if (res.data.data.records && res.data.data.records.length!=0)  {
-                this.parameter=res.data.data.records[0]
-                this.userName = localStorage.getItem("username");
-                this.parameter.template = this.userName + "鍚敤" + "[鐗╁搧]";
-                this.parameter.type = 'Released';
-                this.parameter.code=this.templateOid
-                this.title = '鍚敤缂栫爜鏁版嵁'
-                this.visibleDeactivate = true;
-              } else {
-                if (showMessage) {
-                  showMessage = false; // 鏍囪宸叉墽琛岃繃鎿嶄綔
-                  this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', {
-                    confirmButtonText: '纭畾',
-                    cancelButtonText: '鍙栨秷',
-                    type: 'warning'
-                  }).then(() => {
-                    const index = this.$route.query.id.indexOf('@');
-                    const result = this.$route.query.id.substring(0, index);
-                    const oid = this.selectRow.map(obj => obj.oid).join(",");
-                    changeStatus({ oid: oid, btmname: result, lcStatus: 'Released' }).then(res => {
-                      if(res.data.code == 200 ){
-                        this.$message.success('鍚敤鎴愬姛')
-                        this.onLoad()
-                      }
-                    });
-                  }).catch(() => {
-                    this.$message({
-                      type: 'info',
-                      message: '宸插彇娑�'
-                    });
-                  });
-                }
-              }
-            });
-          } else if (this.selectRow.length >1 && !hasEditing  && showMessage) {
-            this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬仠鐢ㄧ姸鎬併�戞墠鍙互鍙戣捣娴佺▼');
-            showMessage = false;
-          }
-        });
+      var options = {
+        processUse: 'ENABLE',
+        processUseText: '鍚敤',
+        allowStatus: 'Disabled',
+        allowStatusText: '宸插仠鐢�',
+        resetStatus: 'Disabled',
+        batchTitle: '鎵归噺鍚敤(瑙e喕)鐨勭紪鐮佹暟鎹�',
+        title: '鍚敤(瑙e喕)缂栫爜鏁版嵁',
+        confirmMsg: '鏄惁瑕佸惎鐢�(瑙e喕)杩欎簺鏁版嵁'
       }
+      this.checkStatusAndSubmitProcess(options, 'Released');
     },
     //鍥炴敹
     Recovery() {
+      var options = {
+        processUse: 'ROLLBACK',
+        processUseText: '鍥炴敹',
+        allowStatus: 'Released,Disabled',
+        allowStatusText: '宸插彂甯�,宸插仠鐢�',
+        batchTitle: '鎵归噺鍥炴敹鐨勭紪鐮佹暟鎹�',
+        title: '鍥炴敹缂栫爜鏁版嵁',
+        confirmMsg: '鏄惁瑕佸洖鏀惰繖浜涙暟鎹�',
+      }
+      this.checkStatusAndSubmitProcess(options, 'TakeBack');
+    },
+    checkStatusAndSubmitProcess(options, targetLcstatus) {
+      // 缂栬緫涓�-鍙兘鍙戝竷锛屼笉鑳藉洖鏀�
+      // 瀹℃牳涓�-浠�涔堥兘涓嶈兘鍋�
+      // 宸插彂甯�-鍋滅敤銆佸洖鏀�
+      // 鍋滅敤-鍙兘鍚敤銆佸洖鏀�
       if (this.selectRow.length <= 0) {
-        this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
+        this.$message.warning("璇烽�夋嫨鏁版嵁");
+      } else if (this.selectRow.length > 1000) {
+        this.$message.warning("姣忔鎻愪氦鍒版祦绋嬬殑鏁伴噺璇蜂笉瑕佽秴杩�1000鏉�");
       } else {
-        // 缂栬緫涓�-鍙兘鍙戝竷锛屼笉鑳藉洖鏀�
-        // 瀹℃牳涓�-浠�涔堥兘涓嶈兘鍋�
-        // 宸插彂甯�-鍋滅敤銆佸洖鏀�
-        // 鍋滅敤-鍙兘鍚敤銆佸洖鏀�
-        const disabledCount = this.selectRow.filter(item => item.lcstatus === 'Disabled').length;
-        const releasedCount = this.selectRow.filter(item => item.lcstatus === 'Released').length;
-        let showMessage = true;
-        this.selectRow.forEach(item => {
-          if (this.selectRow.length === 1 && item.lcstatus == "TakeBack" && showMessage) {
-            this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�');
-            showMessage = false;
-          } else if (this.selectRow.length >=1 && (disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0) && showMessage) {
-            //disabledCount 鍜� releasedCount 涓换鎰忎竴涓瓑浜� this.selectRow 鏁扮粍鐨勯暱搴﹀垯琛ㄧず鍏ㄩ儴鏄悓涓�绉嶇姸鎬侊紝杩斿洖 true 濡傛灉disabledCount 鍜� releasedCount 閮藉ぇ浜�0锛屽垯琛ㄧず鏃㈡湁Disabled涔熸湁Released杩斿洖 true
-            processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => {
-              if (res.data.records != [] && res.data.data.records.length!=0) {
-                this.userName = localStorage.getItem("username");
-                this.parameter.template = this.userName + "鍥炴敹" + "[鐗╁搧]";
-                this.parameter.type = 'TakeBack';
-                this.parameter.code=this.templateOid
-                this.title = '鍥炴敹缂栫爜鏁版嵁'
-                this.visibleDeactivate = true;
-              } else {
-                if (showMessage) {
-                  showMessage = false; // 鏍囪宸叉墽琛岃繃鎿嶄綔
-                  this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', {
-                    confirmButtonText: '纭畾',
-                    cancelButtonText: '鍙栨秷',
-                    type: 'warning'
-                  }).then(() => {
-                    const index = this.$route.query.id.indexOf('@');
-                    const result = this.$route.query.id.substring(0, index);
-                    const oid = this.selectRow.map(obj => obj.oid).join(",");
-                    changeStatus({ oid: oid, btmname: result, lcStatus: 'TakeBack' }).then(res => {
-                      if(res.data.code == 200 ){
-                        this.$message.success('鍥炴敹鎴愬姛')
-                        this.onLoad()
-                      }
-                    });
-                  }).catch(() => {
-                    this.$message({
-                      type: 'info',
-                      message: '宸插彇娑�'
-                    });
-                  });
+        //瀹℃壒鐨勬暟鎹殑鐘舵�佸繀椤荤浉鍚�
+        var lcstatus = this.selectRow[0].lcstatus;
+        let hasDiff = this.selectRow.every(item => item.lcstatus == lcstatus);
+        if (!hasDiff) {
+          this.$message.warning("鎮ㄩ�夋嫨鐨勬暟鎹殑鐘舵�佷笉鐩稿悓");
+          return false;
+        }
+        if (lcstatus == targetLcstatus) {
+          this.$message.warning("閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�");
+          return false;
+        }
+        if (options.processUseText == '鐢宠' && !validatenull(this.selectRow[0].copyfromversion)) {
+          options.processUseText = '淇敼'
+          options.processUse = 'EDIT'
+        }
+        let checkStatus = this.selectRow.every(item => options.allowStatus.indexOf(item.lcstatus) != -1);
+        if (!checkStatus) {
+          this.$message.warning('鍙湁鐘舵�佹槸銆�' + options.allowStatusText + '銆戠殑鏁版嵁鎵嶅彲浠ュ彂璧锋祦绋�');
+          return false;
+        }
+        processTS({templateId: this.templateOid, buttonTypeKey: options.processUse}).then(res => {
+          if (res.data.data.records && res.data.data.records.length != 0) {
+            this.parameter.ids = this.oids;
+            this.parameter.processName = this.result + '-' + options.processUseText + '[' + this.Treedata[0].name + '-' + this.selectRow[0].name + ']';
+            this.parameter.type = options.processUse;
+            this.parameter.code = this.templateOid
+            this.parameter.btmtype = this.selectRow[0].btmname || this.selectRow[0].btmtype;
+            this.parameter.vars = {
+              codeClassifyOid: this.codeClassifyOid,
+              templateOid: this.templateOid
+            };
+            this.title = this.selectRow.length > 1 ? options.batchTitle : options.title;
+            this.visibleDeactivate = true;
+          } else {
+            this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', {
+              confirmButtonText: '纭畾',
+              cancelButtonText: '鍙栨秷',
+              type: 'warning'
+            }).then(() => {
+              changeStatus({
+                oid: this.oids.join(','),
+                btmname: this.selectRow[0].btmname,
+                lcStatus: targetLcstatus
+              }).then(res => {
+                if (res.data.code == 200) {
+                  this.$message.success(options.processUseText + '鎴愬姛')
+                  this.onLoad()
                 }
-              }
+              });
+            }).catch(() => {
+              this.$message({
+                type: 'info',
+                message: '宸插彇娑�'
+              });
             });
-          } else if (showMessage && this.selectRow.length >1 && !(disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0)) {
-            this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬仠鐢ㄧ姸鎬佹垨鍙戝竷鐘舵�併�戞墠鍙互鍙戣捣娴佺▼');
-            showMessage = false;
-          }else if(showMessage){
-            this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹负銆愬仠鐢ㄧ姸鎬佹垨鍙戝竷鐘舵�併�戞墠鍙互鍙戣捣娴佺▼')
           }
         });
       }
@@ -625,11 +634,12 @@
         cancelButtonText: '鍙栨秷',
         type: 'warning'
       }).then(() => {
-        const list=[];
-        this.selectRow.forEach((item)=>{list.push(item.oid)})
-        deleteCode({codeClassifyOid:this.codeClassifyOid,oidList:list}).then(res=>{
-          console.log(res)
-          if(res.data.code === 200){
+        const list = [];
+        this.selectRow.forEach((item) => {
+          list.push(item.oid)
+        })
+        deleteCode({codeClassifyOid: this.codeClassifyOid, oidList: list}).then(res => {
+          if (res.data.code === 200) {
             this.$message({
               type: 'success',
               message: '鍒犻櫎鎴愬姛!'
@@ -731,10 +741,6 @@
     //澶氶��
     handleSelectionChange(list) {
       this.selectRow = list;
-      this.parameter.ids = [];
-      list.forEach((item) => {
-        this.parameter.ids.push(item.oid);
-      });
     },
     //閫夋嫨
     handleSelection(list, row) {
@@ -795,21 +801,37 @@
         this.$message.warning("鍙湁鐘舵�佷负宸插彂甯冪殑鏁版嵁鎵嶈兘杩涜鏁版嵁鏇存敼");
       } else {
         this.DataVisible = true;
+        this.rowOid = this.selectRow[0]['oid']
       }
     },
     //澧炲姞淇濆瓨
     AddSumbit(val) {
-      this.addvisible = false;
       addSaveCode(val).then(res => {
         this.$nextTick(() => {
+          this.addvisible = false;
+          this.$message.success("淇濆瓨鎴愬姛");
           this.onLoad()
         })
       })
     },
+    //淇敼鍥炶皟
     EditSumbit(val) {
-      this.editvisible = false;
       editSaveCode(val).then(res => {
         this.$nextTick(() => {
+          this.editvisible = false;
+          this.$message.success("淇濆瓨鎴愬姛");
+          this.onLoad()
+        })
+      })
+    },
+    //鏁版嵁鏇存敼鍥炶皟
+    updataSumbit(val) {
+      val.copyFromVersion = this.rowOid;
+      val.oid = '';
+      upSaveCode(val).then(res => {
+        this.$nextTick(() => {
+          this.DataVisible = false;
+          this.$message.success("淇濆瓨鎴愬姛");
           this.onLoad()
         })
       })
@@ -821,17 +843,19 @@
     },
     //杈撳叆鍥炶溅鎼滅储
     tableFindInp() {
-      if (this.WupinFindValue.trim() === '') {
+      /*if (this.WupinFindValue.trim() === '') {
         this.$message.warning('杈撳叆鍊间笉鑳戒负绌�')
         return;
-      }
-      this.tableData = this.searchResults.filter(item => {
-        if (typeof item.name === 'string') {
-          return item.name.includes(this.WupinFindValue);
-        } else {
-          return false; // item.name涓嶆槸瀛楃涓茬被鍨嬶紝杩斿洖false
-        }
-      });
+      }*/
+      TableData({
+        templateOid: this.templateOid,
+        codeClassifyOid: this.codeClassifyOid,
+        page: this.page.currentPage,
+        limit: this.page.pageSize,
+        ['conditionMap[' + this.keyWordFind + ']']: '*' + this.WupinFindValue + '*'
+      }).then(res => {
+        this.tableData = res.data.data
+      })
     }
 
   }
@@ -849,8 +873,12 @@
   }
 }
 
-/deep/ .el-button {
+.el-button {
   margin: 0 10px 10px 0;
+}
+
+/deep/ .dialog-footer .el-button {
+  margin: 0 10px 0 0;
 }
 
 .main {
@@ -866,11 +894,7 @@
 }
 
 .bottom {
-  margin-top: 20px;
-  overflow-y: scroll;
+  margin-top: 10px;
 }
 
-.el-collapse-item__content {
-  padding-bottom: 0;
-}
 </style>

--
Gitblit v1.9.3