From d1fae033c247f26d4e3676015a65bd2dc137f474 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期五, 01 九月 2023 10:35:13 +0800
Subject: [PATCH] 集成系统接口基本管理表单树回填

---
 Source/UBCS-WEB/src/views/docking/info.vue |  336 ++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 217 insertions(+), 119 deletions(-)

diff --git a/Source/UBCS-WEB/src/views/docking/info.vue b/Source/UBCS-WEB/src/views/docking/info.vue
index 2d1cbee..acfbe07 100644
--- a/Source/UBCS-WEB/src/views/docking/info.vue
+++ b/Source/UBCS-WEB/src/views/docking/info.vue
@@ -2,31 +2,34 @@
   <el-container>
     <el-main>
       <basic-container>
-        <avue-crud v-model="form" ref="crud" :option="option" :data="data" @on-load="onLoad" :page.sync="page"
+        <avue-crud ref="crud" v-model="form" :data="data" :option="option" :page.sync="page" @on-load="onLoad"
                    @search-change="searchChange"
                    @search-reset="searchReset"
                    @selection-change="selectionChange"
                    @current-change="currentChange"
                    @size-change="sizeChange"
-                   @refresh-change="refreshChange" @row-click="rowClick">
+                   @refresh-change="refreshChange" @row-click="rowClick" :cell-style="cellStyle">
           <template slot="menu" slot-scope="{row,index}">
-            <el-button icon="el-icon-edit" size="small" type="text" @click="updateSave(row,index)">缂栬緫</el-button>
+            <el-button icon="el-icon-edit" size="small" type="text" @click="updateSave(row,index)" :disabled="row.usedFlag === 'true' ? false :true">缂栬緫</el-button>
             <el-button icon="el-icon-delete" size="small" type="text" @click="deleteSave(row,index)">鍒犻櫎</el-button>
-            <el-button v-if="row.usedflag=='false'" icon="el-icon-position" size="small" type="text" @click="ENABLE(row,index)">鍚敤</el-button>
-            <el-button v-else icon="el-icon-finished" size="small" type="text" @click="DISABLE(row,index)">鍋滅敤</el-button>
+            <el-button v-if="row.usedFlag=='false' || row.usedFlag==''" icon="el-icon-position" size="small" type="text"
+                       @click="ENABLE(row,index)">鍚敤
+            </el-button>
+            <el-button v-else icon="el-icon-finished" size="small" type="text" @click="DISABLE(row,index)">鍋滅敤
+            </el-button>
           </template>
           <template slot="menuLeft">
-            <el-button size="small" type="primary" icon="el-icon-plus" @click="addSave">鏂�&nbsp;&nbsp;澧�
+            <el-button icon="el-icon-plus" size="small" type="primary" @click="addSave">鏂�&nbsp;&nbsp;澧�
             </el-button>
-            <el-button size="small" icon="el-icon-share" @click="PUSH">鍚�  姝�
+            <el-button icon="el-icon-share" size="small" @click="PUSH">鍚� 姝�
             </el-button>
-            <el-button size="small" icon="el-icon-search" @click="openAdvancedQuery">鏌�  璇�
+            <el-button icon="el-icon-search" size="small" @click="openAdvancedQuery">鏌� 璇�
             </el-button>
           </template>
         </avue-crud>
       </basic-container>
     </el-main>
-    <infoForm ref="infoForm" @refreshTable="refreshChange" :formData="editAttribute"></infoForm>
+    <infoForm ref="infoForm" :formData="editAttribute" @refreshTable="refreshChange"></infoForm>
     <!-- 楂樼骇鏌ヨ瀵硅瘽妗� -->
     <advanced-query
       :ref="advancedQueryParam.ref"
@@ -39,14 +42,14 @@
 
 <script>
 import {
-  getList,add,edit,del,push,updateStatus
+  getList, add, edit, del, push, updateStatus
 } from "@/api/docking/info";
 import {getDictionary} from "@/api/omd/enum";
 import infoForm from "./infoForm.vue";
 
 export default {
   name: "info",
-  components:{infoForm},
+  components: {infoForm},
   data() {
     return {
       //鎺ュ彛绫诲瀷涓嬫媺
@@ -107,61 +110,107 @@
         editBtn: false,
         delBtn: false,
         columnBtn: false,
-        column: [{
-          label: '鎺ㄩ�佺被鍨�',
-          prop: 'pushType',
+        column: [ {
+          label: '鏄惁鍚敤',
+          prop: 'usedFlag',
+          width: 150,
+          formatter: res => res.usedFlag === "true" ? "鍚敤" : "鍋滅敤"
+        },{
+          label: '闆嗘垚绯荤粺',
+          prop: 'sysBaseName',
+          sortable: true,
+          width: 150
+        },{
+          label: '鍒嗙被閫夋嫨',
+          prop: 'classifyName',
+          align:'center',
+          // sortable: true,
+          width: 150
+        },{
+          label: '缂栫爜绫诲瀷',
+          prop: 'isGroupCodeFlag',
           sortable: true,
           width: 150,
+          formatter: res => res.isGroupCodeFlag ? '闆嗗洟鐮�' : '浼佷笟缂栫爜'
+        },{
+          label: '鎺ュ彛绫诲瀷',
+          prop:'dataFlowTypeText',
+          align:'center',
+          sortable: true,
+          width:150,
+        },{
+          label: '鎺ㄩ�佺被鍨�',
+          prop: 'pushTypeText',
+          sortable: true,
+          overHidden:true,
+          align:'center',
+          width: 150,
           //pushTypeList浣滅敤鍩�
-          formatter:(d)=>{
-            return this.pushTypeList[d.pushType]
-          }
+          // formatter: (d) => {
+          //   return this.pushTypeList[d.pushType]
+          // }
         }, {
           label: '绯荤粺缂栧彿',
           prop: 'id',
           sortable: true,
+          hide:true,
           width: 150
         }, {
           label: '绯荤粺鍚嶇О',
           prop: 'name',
+          hide:true,
           sortable: true,
           width: 150
-        }, {
-          label: '鎺ュ彛鍑芥暟',
-          prop: 'interfaceFunction',
-          sortable: true,
+        },{
+          label: '鎺ュ彛鏂瑰紡',
+          prop: 'interfaceType',
+          // sortable: true,
           width: 150
-        }, {
-          label: '鍛藉悕绌洪棿',
-          prop: 'nameSpace',
-          sortable: true,
+        },{
+          label: '绫昏矾寰�',
+          prop: 'classPath',
+          // sortable: true,
           width: 150
-        }, {
+        },{
           label: 'soapAction',
           prop: 'soapAction',
+          overHidden:true,
           sortable: true,
-          width: 150
-        }, {
-          label: '鍙傛暟鍚嶇О',
-          prop: 'targName',
-          sortable: true,
-          width: 150
-        }, {
+          width: 200
+        },  {
           label: '璋冪敤鏂瑰紡',
           prop: 'cxfaxis',
           sortable: true,
           width: 150
         }, {
+            label: '璇锋眰鏂瑰紡',
+            prop: 'requestMethod',
+            align:'center',
+            // sortable: true,
+            width: 150
+          }, {
           label: '璇锋眰鍦板潃',
           prop: 'requestUrl',
           sortable: true,
+          overHidden:true,
+          width: 200
+        },  {
+          label: '鎺ュ彛鍑芥暟',
+          prop: 'interfaceFunction',
+          sortable: true,
+          align:'center',
           width: 150
         }, {
+            label: '鍙傛暟鍚嶇О',
+            prop: 'targetName',
+            sortable: true,
+            width: 150
+          },{
           label: '鍙傛暟绫诲瀷',
           prop: 'paramType',
           sortable: true,
           width: 150,
-          formatter: (d)=>{
+          formatter: (d) => {
             return this.paramTypeList[d.paramType]
           }
         }, {
@@ -169,10 +218,15 @@
           prop: 'returnType',
           sortable: true,
           width: 150,
-          formatter: (d)=>{
+          formatter: (d) => {
             return this.returnTypeList[d.returnType]
           }
         }, {
+          label: '鍛藉悕绌洪棿',
+          prop: 'nameSpace',
+          sortable: true,
+          width: 150
+        },{
           label: '绯荤粺鎻忚堪',
           prop: 'description',
           width: 150
@@ -199,7 +253,27 @@
       return oids.join(",");
     }
   },
+  watch:{
+    // editAttribute:{
+    //   immediate: true,
+    //   handler(newData) {
+    //     this.$refs.infoForm.formData  = Object.assign({}, newData);
+    //   }
+    // }
+  },
   methods: {
+    //鍗曞厓鏍兼牱寮�
+    cellStyle(row,column,rowIndex,columnIndex){
+      if(row.columnIndex==2) {
+        if(row.row.usedFlag == '' || row.row.usedFlag == 'false'){
+          return {
+            color: 'red',
+            fontWeight: 'bold',
+            fontSize: '20'
+          }
+        }
+      }
+    },
     searchReset() {
       this.query = {};
       this.onLoad(this.page);
@@ -212,11 +286,11 @@
     },
     selectionChange(list) {
       this.selectionList = list;
-      if(this.selectionList.length <= 0){
+      if (this.selectionList.length <= 0) {
         this.selectRow = null
       }
       if (this.selectionList.length > 0) {
-        this.selectRow = this.selectionList[list.length-1].$index;
+        this.selectRow = this.selectionList[list.length - 1].$index;
       }
     },
     selectionClear() {
@@ -235,27 +309,30 @@
     addSave() {
       this.$refs.infoForm.showSubmitDialog = true;
       this.$refs.infoForm.formData = {
-        dataFlowType:'push',
-        pushType:'1',
-        sourceSystemName:'缂栫爜绯荤粺',
-        sourceSystemOid:'code00000001',
-        sourceSystemId:'CODE',
-        targetSystemName:'',
-        targetSystemOid:'',
-        targetSystemId:'',
-        sysIntParamVOs:[],
-        sysIntHeaderVOs:[]
+        dataFlowType: '',
+        pushType: '',
+        sourceSystemName: '',
+        sourceSystemOid: '',
+        sourceSystemId: '',
+        targetSystemName: '',
+        targetSystemOid: '',
+        targetSystemId: '',
+        sysIntParamVOs: [],
+        sysIntHeaderVOs: []
       };
     },
-    updateSave(row,index) {
+    updateSave(row, index) {
       this.selectRow = row;
       this.editAttribute = row;
-      this.editAttribute.sysIntParamVOs = row.sysIntParamVOs||[];
-      this.editAttribute.sysIntHeaderVOs = row.sysIntHeaderVOs||[];
+      this.editAttribute.sysIntParamVOs = row.sysIntParamVOs || [];
+      this.editAttribute.sysIntHeaderVOs = row.sysIntHeaderVOs || [];
+      this.editAttribute.type = 'edit';
       this.$refs.infoForm.formData = this.editAttribute;
       this.$refs.infoForm.showSubmitDialog = true;
+      // console.log('row',this.editAttribute.pushType)
+      // console.log('editAttribute',this.editAttribute.dataFlowTypeText)
     },
-    deleteSave(row,index) {
+    deleteSave(row, index) {
       this.$confirm("鍒犻櫎鏁版嵁灏嗘棤娉曡鎭㈠, 鏄惁缁х画?", "鎻愮ず", {
         iconClass: 'el-icon-question',
         confirmButtonText: "纭畾",
@@ -263,28 +340,28 @@
         showClose: true,
         type: "warning"
       }).then(() => {
-        remove(row.oid).then(res => {
+        del({oids:row.oid}).then(res => {
           this.$message.success("鍒犻櫎鎴愬姛");
           this.refreshChange();
         });
       });
     },
-    ENABLE(row,index){
+    ENABLE(row, index) {
       //鍚敤
-      this.updateStatus(row,"enable");
+      this.updateStatus(row, "enable");
     },
-    DISABLE(row,index){
+    DISABLE(row, index) {
       //鍋滅敤
-      this.updateStatus(row,"disable");
+      this.updateStatus(row, "disable");
     },
-    updateStatus(selectRow,able){
+    updateStatus(selectRow, able) {
       var that = this;
       var paramTemp = {
-        update:able,
-        oid:selectRow.oid,
-        ts:selectRow.ts
+        update: able,
+        oid: selectRow.oid,
+        ts: selectRow.ts
       };
-      this.$confirm("鏄惁瑕�"+(able == "enbale" ? "鍚敤" : (able == "disable" ? "鍋滅敤": "鍙戝竷")) +"杩欐潯鏁版嵁锛�", {
+      this.$confirm("鏄惁瑕�" + (able == "enbale" ? "鍚敤" : (able == "disable" ? "鍋滅敤" : "鍙戝竷")) + "杩欐潯鏁版嵁锛�", {
         confirmButtonText: "纭畾",
         cancelButtonText: "鍙栨秷",
         type: "warning"
@@ -296,16 +373,16 @@
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message:(able == "enbale" ? "鍚敤鎴愬姛" : (able == "disable" ? "鍋滅敤鎴愬姛": "鍙戝竷鎴愬姛"))
+            message: (able == "enbale" ? "鍚敤鎴愬姛" : (able == "disable" ? "鍋滅敤鎴愬姛" : "鍙戝竷鎴愬姛"))
           });
         });
     },
-    PUSH(){
+    PUSH() {
       if (this.selectionList.length != 1) {
         this.$message.warning('璇烽�夋嫨鏁版嵁')
         return false;
       }
-      this.$confirm("鏄惁瑕�"+ (this.selectionList[0].pushType == "1" ? "鎺ㄩ�佹暟鎹�" : "鎺ㄩ�佸垎绫�"), {
+      this.$confirm("鏄惁瑕�" + (this.selectionList[0].pushType == "1" ? "鎺ㄩ�佹暟鎹�" : "鎺ㄩ�佸垎绫�"), {
         confirmButtonText: "纭畾",
         cancelButtonText: "鍙栨秷",
         type: "warning"
@@ -325,9 +402,30 @@
     onLoad(page, params = {}) {
       this.loading = true;
       getList(this.page.currentPage, this.page.pageSize, Object.assign(params, this.query)).then(res => {
+        // console.log(res)
         const data = res.data.data;
         this.page.total = data.total;
         this.data = data.records;
+        // const Props = {
+        //   paramType: '',
+        //   returnType: '',
+        //   dataFlowType: '',
+        //   pushType: '',
+        //   classifyName: '',
+        //   sourceSystemName: '',
+        //   targetSystemName: '',
+        //   classPath:'',
+        //   requestMethod:'',
+        //   requestUrl:'',
+        //   interfaceFunction:'',
+        //   nameSpace:'',
+        //   soapAction:'',
+        //   targetName:'',
+        //   cxfaxis:''
+        // };
+        // this.pushTypeList.forEach(item => {
+        //   Object.assign(item, Props);
+        // });
         this.loading = false;
       });
     },
@@ -337,64 +435,64 @@
       this.$refs.crud.toggleRowSelection(row); //閫変腑褰撳墠琛�
     },
     /** 楂樼骇鏌ヨ瀵硅瘽妗嗙粍浠�,缁勪欢杩斿洖鐨勫�兼槸condtionMap[field]褰㈠紡鐨勬煡璇㈡潯浠讹紝淇濈暀浜嗗拰涔嬪墠涓�鏍风殑鏂瑰紡 */
-    echoSeniorContionMap(conditionMaps){
-      if(JSON.stringify(conditionMaps)!='{}'){
+    echoSeniorContionMap(conditionMaps) {
+      if (JSON.stringify(conditionMaps) != '{}') {
         this.query = conditionMaps;
         this.onLoad(this.page);
       }
     },
-    openAdvancedQuery(){
-        this.advancedQueryParam.options = [{
-          data: this.pushTypeList,
-          title: '鎺ㄩ�佺被鍨�',
-          queryField: 'pushType',
-          fieldType: 'combox',
-          comboxKey: 'searchPushType'
-        }, {
-          title: '绯荤粺鍚嶇О',
-          queryField: 'sysBaseName',
-          fieldType: 'text'
-        }, {
-          title: '绯荤粺缂栧彿',
-          queryField: 'sysBaseId',
-          fieldType: 'text'
-        }, {
-          title: '鎺ュ彛鍑芥暟',
-          queryField: 'interfaceFunction',
-          fieldType: 'text'
-        }, {
-          title: '鍛藉悕绌洪棿',
-          queryField: 'nameSpace',
-          fieldType: 'text'
-        }, {
-          title: 'soapAction',
-          queryField: 'soapAction',
-          fieldType: 'text'
-        }, {
-          title: '鍙傛暟鍚嶇О',
-          queryField: 'targName',
-          fieldType: 'text'
-        }, {
-          title: '璋冪敤鏂瑰紡',
-          queryField: 'cxfaxis',
-          fieldType: 'text'
-        }, {
-          title: '璇锋眰鍦板潃',
-          queryField: 'requestUrl',
-          fieldType: 'text'
-        }, {
-          title: '鍙傛暟绫诲瀷',
-          queryField: 'paramType',
-          fieldType: 'combox',
-          comboxKey: 'searchparamType',
-          data:this.paramTypeList
-        }, {
-          title: '杩斿洖鍊肩被鍨�',
-          queryField: 'returnType',
-          fieldType: 'combox',
-          comboxKey: 'searchreturnType',
-          data:this.returnTypeList
-        }]
+    openAdvancedQuery() {
+      this.advancedQueryParam.options = [{
+        data: this.pushTypeList,
+        title: '鎺ㄩ�佺被鍨�',
+        queryField: 'pushType',
+        fieldType: 'combox',
+        comboxKey: 'searchPushType'
+      }, {
+        title: '绯荤粺鍚嶇О',
+        queryField: 'sysBaseName',
+        fieldType: 'text'
+      }, {
+        title: '绯荤粺缂栧彿',
+        queryField: 'sysBaseId',
+        fieldType: 'text'
+      }, {
+        title: '鎺ュ彛鍑芥暟',
+        queryField: 'interfaceFunction',
+        fieldType: 'text'
+      }, {
+        title: '鍛藉悕绌洪棿',
+        queryField: 'nameSpace',
+        fieldType: 'text'
+      }, {
+        title: 'soapAction',
+        queryField: 'soapAction',
+        fieldType: 'text'
+      }, {
+        title: '鍙傛暟鍚嶇О',
+        queryField: 'targetName',
+        fieldType: 'text'
+      }, {
+        title: '璋冪敤鏂瑰紡',
+        queryField: 'cxfaxis',
+        fieldType: 'text'
+      }, {
+        title: '璇锋眰鍦板潃',
+        queryField: 'requestUrl',
+        fieldType: 'text'
+      }, {
+        title: '鍙傛暟绫诲瀷',
+        queryField: 'paramType',
+        fieldType: 'combox',
+        comboxKey: 'searchparamType',
+        data: this.paramTypeList
+      }, {
+        title: '杩斿洖鍊肩被鍨�',
+        queryField: 'returnType',
+        fieldType: 'combox',
+        comboxKey: 'searchreturnType',
+        data: this.returnTypeList
+      }]
 
       this.advancedQueryParam.currentOpen = 'info';
       this.advancedQueryParam.advancedQuerySettingBox = true;
@@ -404,7 +502,7 @@
 </script>
 
 <style lang="scss">
-.applyRangeTable>.el-card:nth-of-type(2)>.el-card__body>.avue-crud__menu {
+.applyRangeTable > .el-card:nth-of-type(2) > .el-card__body > .avue-crud__menu {
   display: none !important;
 }
 </style>

--
Gitblit v1.9.3