From c2ee2b74bd587fdad8e9e276beb3c792f56f5b6c Mon Sep 17 00:00:00 2001
From: lihang <lihang@vci-tech.com>
Date: 星期三, 05 七月 2023 16:33:55 +0800
Subject: [PATCH] 业务类型和元数据相关的修正

---
 Source/UBCS-WEB/src/views/modeling/original.vue |   71 ++++++++++++++++++++++++++++++-----
 1 files changed, 61 insertions(+), 10 deletions(-)

diff --git a/Source/UBCS-WEB/src/views/modeling/original.vue b/Source/UBCS-WEB/src/views/modeling/original.vue
index eaf8f50..6588c67 100644
--- a/Source/UBCS-WEB/src/views/modeling/original.vue
+++ b/Source/UBCS-WEB/src/views/modeling/original.vue
@@ -8,15 +8,18 @@
             <el-radio v-model="selectRow" :label="row.$index">&nbsp;
             </el-radio>
           </template>
-          <template slot="menu">
-            <el-button icon="el-icon-edit" size="small" type="text" @click="updateSave">缂栬緫</el-button>
-            <el-button icon="el-icon-delete" size="small" type="text" @click="deleteSave">鍒犻櫎</el-button>
+          <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-delete" size="small" type="text" @click="deleteSave(row,index)">鍒犻櫎</el-button>
           </template>
           <template slot="menuLeft">
             <el-button size="small" type="primary" icon="el-icon-plus" @click="addSave">鏂�&nbsp;&nbsp;澧�
             </el-button>
             <el-button size="small" plain type="primary" icon="el-icon-zoom-in" @click="applyRangeOpen">鏌ョ湅浣跨敤鑼冨洿
             </el-button>
+            <el-input placeholder="鎸夊睘鎬ц嫳鏂囧悕绉版煡璇�" v-model="searchId" clearable prefix-icon="el-icon-search" class="attrSearch"
+              size="small" @change="doSearch" type="text"></el-input>
+            <el-button size="small" plain type="primary" icon="el-icon-search" @click="doSearch">&nbsp;鎼滅储</el-button>
           </template>
           <template slot="typeValue" slot-scope="{row}">
             <el-tag>{{ row.typeValue }}</el-tag>
@@ -119,14 +122,14 @@
                 <template slot="label">
                   鏋氫妇绫诲瀷
                 </template>
-                {{ itemForm.itemData.dictCode }}
+                {{ itemForm.itemData.dictValue }}
               </el-descriptions-item>
             </el-descriptions>
           </el-tab-pane>
         </el-tabs>
       </basic-container>
     </el-aside>
-    <originalAdd ref="originalAdd" :attribute="attribute" @refreshTable="refreshChange"></originalAdd>
+    <originalAdd ref="originalAdd" @refreshTable="refreshChange" :attribute="editAttribute"></originalAdd>
   </el-container>
 </template>
 
@@ -138,6 +141,7 @@
   update, getPage, getApplyRange
 } from "@/api/omd/OmdAttribute";
 import Versionpackage from "./Versionpackage.vue";
+import {getDictionary} from "@/api/omd/enum";
 
 export default {
   name: "original",
@@ -154,6 +158,7 @@
       attribute: {
         nullable: true
       },
+      editAttribute: {},
       applyRangeData: [],
       option: {
         height: "550px",
@@ -169,6 +174,7 @@
         addBtn: false,
         editBtn: false,
         delBtn: false,
+        columnBtn:false,
         column: [{
           label: "閫夋嫨",
           prop: "radio",
@@ -245,8 +251,11 @@
       itemForm: {
         itemData: {},
         activeName: "referTab",
+        enumInitFlag:false,
+        referInitFlag: false,
         form: {}
-      }
+      },
+      searchId: '',
     };
   },
   created() {
@@ -259,14 +268,25 @@
       this.$refs.originalAdd.showSubmitDialog = true;
       this.$refs.originalAdd.attribute = {};
     },
-    updateSave() {
+    updateSave(row,index) {
+      this.selectRow = index;
+      var json = JSON.stringify(row);
+      this.editAttribute = JSON.parse(json);
+      this.editAttribute.nullable = row.nullable == 'true' ? true : false;
+      this.$refs.originalAdd.attribute = this.editAttribute;
       this.$refs.originalAdd.showSubmitDialog = true;
-      this.$refs.originalAdd.attribute = this.attribute;
+      this.checkUsingReferDict(row);
+      this.$refs.originalAdd.activeName = this.itemForm.activeName;
+      this.$refs.originalAdd.enumInitFlag = this.itemForm.enumInitFlag;
+      this.$refs.originalAdd.referInitFlag = this.itemForm.referInitFlag;
+      this.refreshChange()
     },
-    deleteSave() {
-      remove(this.itemForm.itemData).then(res => {
+    deleteSave(row,index) {
+      console.log(row);
+      remove(row.oid).then(res => {
         this.$message.success("鍒犻櫎鎴愬姛");
       });
+      this.refreshChange();
     },
     onLoad(page, params = {}) {
       this.loading = true;
@@ -283,6 +303,27 @@
       this.itemForm.itemData = row;
       this.selectRow = row.$index;
       this.attribute = row;
+      this.checkUsingReferDict(row);
+    },
+    checkUsingReferDict(row){
+      if (row.referToId !== null && row.referToId !== ""){
+        this.itemForm.activeName = 'referTab';
+        this.itemForm.referInitFlag = true;
+        this.itemForm.enumInitFlag = false;
+      }else if (row.usingDict === 'true'){
+        this.itemForm.activeName = 'enumTab';
+        this.itemForm.referInitFlag = false;
+        this.itemForm.enumInitFlag = true;
+        getDictionary({code: row.dictCode}).then(res => {
+          this.editAttribute.dictValue = res.data.data[0].label;
+          this.itemForm.itemData.dictValue = this.editAttribute.dictValue;
+          this.$refs.originalAdd.dictEnums = res.data.data;
+        })
+      }else {
+        this.itemForm.activeName = 'referTab';
+        this.itemForm.referInitFlag = true;
+        this.itemForm.enumInitFlag = false;
+      }
     },
     selectBtmType() {
       this.referType.display = true;
@@ -303,6 +344,10 @@
 
       });
     },
+    doSearch(){
+      var params = {"id_like":this.searchId};
+      this.onLoad(this.page,params);
+    }
   },
   components: { Versionpackage }
 }
@@ -312,4 +357,10 @@
 .applyRangeTable>.el-card:nth-of-type(2)>.el-card__body>.avue-crud__menu {
   display: none !important;
 }
+.attrSearch {
+  width:201px;
+}
+.attrSearch > .el-input__inner {
+  width: 200px;
+}
 </style>

--
Gitblit v1.9.3