From ad2a32d607fb4ac1183ae9695d0ee15b239d0fc9 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期一, 16 十月 2023 17:09:26 +0800
Subject: [PATCH] 主数据生命周期Bug

---
 Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue |  164 +++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 130 insertions(+), 34 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
index ed137cd..f558240 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)"
@@ -17,7 +17,8 @@
               </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-option v-for="item in tableHeadFindData" :key="item.id" :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"
@@ -42,18 +43,37 @@
               <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"
+              <el-table-column v-for="item in CodeArray" v-if="!item.hidden" :label="item.label" :prop="item.prop"
+                               :show-overflow-tooltip="true" :sortable="item.sortable" :width="item.width"
+                               align="center">
+                <template slot-scope="scope">
+                  <el-link type="primary" @click="CodeLinkHandler(scope.row)">
+                    {{ scope.row[item.prop] }}
+                  </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'"
+                               :key="item.id"
+                               :formatter="item.formatter"
+                               :label="item.label" :prop="item.prop"
+                               :show-overflow-tooltip="true"
                                :sortable="item.sortable"
                                :width="item.width"
                                align="center">
               </el-table-column>
+              <el-table-column  v-for="item in lcstatusArray" v-if="!item.hidden" label="鐢熷懡鍛ㄦ湡鍊�" prop="lcstatus"
+                                :show-overflow-tooltip="true" :sortable="item.sortable" :width="item.width"
+                                align="center">
+                <template slot-scope="scope">
+                  <span>{{ scope.row.lcstatus_text }}</span>
+                </template>
+              </el-table-column>
             </el-table>
           </el-row>
           <!--          鏂板-->
-          <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
-                              :disabledProp="disabledProp" :templateOid="templateOid" :visible.sync="addvisible"
+          <FormTemplateDialog :TreeValue="TreeValue" :codeClassifyOid="this.codeClassifyOid"
+                              :codeRuleOid="this.codeRuleOid" :disabledProp="disabledProp" :templateOid="templateOid"
+                              :visible.sync="addvisible"
                               type="add"
                               @submit="AddSumbit">
           </FormTemplateDialog>
@@ -62,6 +82,12 @@
                               :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'淇敼缂栫爜淇℃伅'"
                               :visible.sync="editvisible"
                               type="edit" @submit="EditSumbit"></FormTemplateDialog>
+          <!--          鏁版嵁璇︽儏-->
+          <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
+                               :rowOid="this.LinkObject.oid" :templateOid="templateOid"
+                              :title="'鏁版嵁璇︽儏'"
+                              :visible.sync="LinkVisible"
+                              type="detail"></FormTemplateDialog>
           <!--          宸插彂甯冩暟鎹慨鏀�-->
           <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
                               :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid"
@@ -92,7 +118,7 @@
           <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">
@@ -116,7 +142,17 @@
   </basic-container>
 </template>
 <script>
-import {MasterTable, TableData, FindData, addSaveCode, editSaveCode, deleteCode, upSaveCode} from "@/api/GetItem";
+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";
@@ -154,6 +190,10 @@
     tableDataArray: {
       type: Array,
     },
+    TreeValue: {
+      type: String,
+      default: "",
+    },
     total: {
       type: String,
       default: "",
@@ -177,10 +217,18 @@
     },
     Treedata: {
       type: Array
-    }
+    },
+
   },
   data() {
     return {
+      LinkVisible: false,
+      LinkObject: {}, // 缂栫爜鏁版嵁
+      LinkList: [],
+      isCodeArrayPushed: false, // 缂栫爜鏁扮粍娣诲姞鏍囪瘑鍙橀噺
+      CodeArray: [],
+      lcstatusArray:[],
+      islcstatusPushed:false,
       // 鐘舵�佹悳绱�
       statusSelect: "all",
       // 鍏抽敭瀛楁煡璇�
@@ -263,7 +311,7 @@
         fileDocClassifyName: '',
         hasDownload: true,
         hasUpload: true,
-        height: 100
+        height: 110
       },
       result: ''
     };
@@ -314,7 +362,7 @@
     tableHeadFindData: {
       handler(newval, oldval) {
         newval.forEach((record, _index) => {
-          if (record.field == 'id' && validatenull(record.templet)) {
+          if (record.queryField == 'id' && validatenull(record.templet)) {
             //浼佷笟缂栫爜鐨勯粯璁ゆ坊鍔犺秴閾炬帴,鏆傛湭瀹炵幇
             record.formatter = '';
           } else {
@@ -329,10 +377,19 @@
           }
 
           if (_index == 0) {
-            this.keyWordFind = record.field
+            this.keyWordFind = record.queryField
           }
         })
         this.tableHeadFindDatas = newval;
+        if (!this.isCodeArrayPushed) {
+          this.CodeArray.push(newval.find(item => item.prop === 'id'))
+          this.isCodeArrayPushed = true
+        };
+        if (!this.islcstatusPushed) {
+          this.lcstatusArray.push(newval.find(item => item.prop === 'lcstatus'))
+          this.islcstatusPushed = true
+        };
+        // console.log('new',newval)
         this.WupinFindValue = ''
       },
     },
@@ -357,6 +414,13 @@
     },
   },
   methods: {
+    CodeLinkHandler(row) {
+      this.LinkObject = row;
+      this.LinkVisible = true;
+      this.LinkList = Object.keys(row).map(property => property)
+      // console.log(result);
+      // console.log(this.LinkObject)
+    },
     //鐘舵�佹悳绱�
     cellSelectHandler(row) {
       if (row === 'all') {
@@ -373,7 +437,6 @@
         limit: this.page.pageSize,
         'conditionMap[lcstatus]': lcstatus
       }).then(res => {
-        console.log(res)
         this.tableData = res.data.data
       })
     },
@@ -383,7 +446,7 @@
         this.tableHeight = 'calc(100vh - 630px)';
         this.$refs.dataTable.doLayout()
       } else {
-        this.tableHeight = 'calc(100vh - 330px)';
+        this.tableHeight = 'calc(100vh - 350px)';
         this.$refs.dataTable.doLayout()
       }
     },
@@ -412,9 +475,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();
@@ -429,9 +530,6 @@
         const data = response.data.data;
         this.transferData = data;
       }
-    },
-    handelTransferSave(val) {
-      console.log('鍙戝竷', val)
     },
     rend() {
       this.tableData = this.tableHeadData;
@@ -599,7 +697,6 @@
           list.push(item.oid)
         })
         deleteCode({codeClassifyOid: this.codeClassifyOid, oidList: list}).then(res => {
-          console.log(res)
           if (res.data.code === 200) {
             this.$message({
               type: 'success',
@@ -638,7 +735,7 @@
           this.List.forEach((item) => {
             let columnItem = {
               label: item.title,
-              prop: item.field,
+              prop: item.queryField,
               type: this.columnType[item.type],
               sortable: item.sort,
               width: item.minWidth,
@@ -666,6 +763,7 @@
     },
     // 鎺掑簭
     sortChange(val) {
+      // console.log(val)
       this.isLoading = true;
       let order = "";
       if (val.order == "ascending") {
@@ -767,34 +865,32 @@
     },
     //澧炲姞淇濆瓨
     AddSumbit(val) {
-      this.addvisible = false;
       addSaveCode(val).then(res => {
         this.$nextTick(() => {
-          this.$message.warning("淇濆瓨鎴愬姛");
+          this.addvisible = false;
+          this.$message.success("淇濆瓨鎴愬姛");
           this.onLoad()
         })
       })
     },
     //淇敼鍥炶皟
     EditSumbit(val) {
-      this.editvisible = false;
       editSaveCode(val).then(res => {
         this.$nextTick(() => {
-          this.$message.warning("淇濆瓨鎴愬姛");
+          this.editvisible = false;
+          this.$message.success("淇濆瓨鎴愬姛");
           this.onLoad()
         })
       })
     },
     //鏁版嵁鏇存敼鍥炶皟
     updataSumbit(val) {
-      this.DataVisible = false;
       val.copyFromVersion = this.rowOid;
       val.oid = '';
-      console.log(val)
       upSaveCode(val).then(res => {
-        console.log(res)
         this.$nextTick(() => {
-          this.$message.warning("淇濆瓨鎴愬姛");
+          this.DataVisible = false;
+          this.$message.success("淇濆瓨鎴愬姛");
           this.onLoad()
         })
       })
@@ -836,8 +932,12 @@
   }
 }
 
-/deep/ .el-button {
+.el-button {
   margin: 0 10px 10px 0;
+}
+
+/deep/ .dialog-footer .el-button {
+  margin: 0 10px 0 0;
 }
 
 .main {
@@ -853,11 +953,7 @@
 }
 
 .bottom {
-  margin-top: 20px;
-  overflow-y: scroll;
+  margin-top: 10px;
 }
 
-.el-collapse-item__content {
-  padding-bottom: 0;
-}
 </style>

--
Gitblit v1.9.3