From 80ef464bf93212805d6b36f12b7791edda04e23e Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期五, 15 九月 2023 09:36:22 +0800
Subject: [PATCH] 集成模块 搜索回显

---
 Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue |  154 ++++++++++++++++++++++++++-------------------------
 1 files changed, 79 insertions(+), 75 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue b/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue
index 1c94c45..adfb9af 100644
--- a/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue
+++ b/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue
@@ -326,12 +326,11 @@
       >
         <template slot-scope="{ row }">
           <el-input v-if="editingRows === row && editShows== item.prop && item.prop != 'codeDateFormat' && (item.edit == 'text'  ||item.edit == 'refer' )"
-                    ref="inputRef"
-                    :id="'inputRef' + row.oid"
+                    :ref="'input' + row.oid"
                     v-show="!AddCellFlag"
                     v-model="row[item.prop]"
-                    @blur="saveRows"
-                    autofocus></el-input>
+                    @blur="saveRows(row)"
+                    ></el-input>
           <el-input-number v-if="editingRows === row && editShows== item.prop && item.edit == 'number'" v-model="row[item.prop]"
                            :style="{width:(item.width-10)+'px'}"
                            controls-position="right"
@@ -1755,7 +1754,6 @@
     addsHandler(event) {
       this.$refs.referAttrCrud.sort("orderNum");
       var ischeck = true;
-      console.log('ProData',this.ProData)
       this.ProData.forEach((item, index) => {
         if ((item.requireFlag && item.requireFlag.toString() == 'true') && (item.readOnlyFlag && item.readOnlyFlag.toString() == 'true')) {
           this.$message.warning(item.name + "(" + item.id + ")蹇呰緭鐨勫睘鎬т笉鑳芥槸鍙");
@@ -1819,63 +1817,72 @@
         this.editShows = column.property;
         this.rowOid = row.oid;
         this.CurrentCell = row;
-          // const inputElement = document.querySelector(`#inputRef${row.oid}`);
-          // if (inputElement) {
-          //   inputElement.focus();
-          // };
-        if (column.property == 'referConfig') {
-          this.referConfigVisble = true;
-          this.referConfigOption = {
-            referConfig: this.CurrentCell.referConfig || '',
+        this.$nextTick(() => {
+          const inputs = this.$refs['input' + row.oid];
+          const input = inputs && inputs.length > 0 ? inputs[0].$el : null;
+          if (input) {
+            input.focus();
           }
-          if (this.CurrentCell.referConfig == '') {
+        });
+        const columnActions = {
+          referConfig: () => {
+            this.referConfigVisble = true;
             this.referConfigOption = {
-              referConfig: '',
+              referConfig: this.CurrentCell.referConfig || '',
+            }
+            if (this.CurrentCell.referConfig == '') {
+              this.referConfigOption = {
+                referConfig: '',
+              }
+            }
+          },
+          classifyInvokeText: () => {
+            this.injectVisible = true;
+            if (this.CurrentCell.classifyInvokeAttr != '') {
+              this.injectOption = {
+                classifyInvokeAttr: this.CurrentCell.classifyInvokeAttr,
+                classifyInvokeAttrName: this.CurrentCell.classifyInvokeAttrName,
+                classifyInvokeEditFlag: this.CurrentCell.classifyInvokeEditFlag,
+                classifyInvokeLevel: this.CurrentCell.classifyInvokeLevel == 'min' ? 'min' : 'max',
+                classifyNumber: this.CurrentCell.classifyInvokeLevel == 'min' ? '' : this.CurrentCell.classifyInvokeLevel
+              };
+            }
+          },
+          componentRule: () => {
+            this.isShowformulaEdit = true;
+          },
+          enumString: () => {
+            this.enumVisible = true;
+            this.tableData = [];
+            if (this.CurrentCell.enumString != "") {
+              this.tableData = JSON.parse(this.CurrentCell.enumString)
+              return;
+            }
+          },
+          parentCode: () => {
+            gridCodeClassifyTemplateAttr({
+              'conditionMap[classifyTemplateOid]': this.Formlist[0].oid,
+              'conditionMap[oid_notequal]': this.CurrentCell.oid,
+              limit: -1
+            }).then(res => {
+              this.CascadeData = res.data.data;
+            })
+            this.CascadeVisible = true;
+          },
+          verifyRule: () => {
+            this.RulesForm.expressionTextt = this.CurrentCell.verifyRule;
+            this.rulesVisible = true;
+          },
+          attributeGroup: () => {
+            this.attrVisible = true;
+            if (this.CurrentCell.attributeGroup !== '') {
+              this.attrModel = this.CurrentCell.attributeGroup
             }
           }
-          // this.$refs.referConfigFormDialog.onloadAttrData();
-        } else if (column.property == 'classifyInvokeText') {
-          this.injectVisible = true;
-          if (this.CurrentCell.classifyInvokeAttr != '') {
-            this.injectOption = {
-              classifyInvokeAttr: this.CurrentCell.classifyInvokeAttr,
-              classifyInvokeAttrName: this.CurrentCell.classifyInvokeAttrName,
-              classifyInvokeEditFlag: this.CurrentCell.classifyInvokeEditFlag,
-              classifyInvokeLevel: this.CurrentCell.classifyInvokeLevel == 'min' ? 'min' : 'max',
-              classifyNumber: this.CurrentCell.classifyInvokeLevel == 'min' ? '' : this.CurrentCell.classifyInvokeLevel
-            };
-          } else {
-            // this.injectHandleReset();
-          }
-        } else if (column.property == 'componentRule') {
-          if (this.CurrentCell) {
-            // this.CurrentCell.componentRule = this.componentRuleText;
-          }
-          this.isShowformulaEdit = true;
-        } else if (column.property == 'enumString') {
-          this.enumVisible = true;
-          this.tableData=[];
-          if (this.CurrentCell.enumString != "") {
-            this.tableData = JSON.parse(this.CurrentCell.enumString)
-            return
-          }
-        } else if (column.property == 'parentCode') {
-          gridCodeClassifyTemplateAttr({
-            'conditionMap[classifyTemplateOid]': this.Formlist[0].oid,
-            'conditionMap[oid_notequal]': this.CurrentCell.oid,
-            limit: -1
-          }).then(res => {
-            this.CascadeData = res.data.data;
-          })
-          this.CascadeVisible = true;
-        } else if (column.property == 'verifyRule') {
-          this.RulesForm.expressionTextt = this.CurrentCell.verifyRule;
-          this.rulesVisible = true;
-        } else if (column.property == 'attributeGroup') {
-          this.attrVisible = true;
-          if (this.CurrentCell.attributeGroup !== '') {
-            this.attrModel = this.CurrentCell.attributeGroup
-          }
+        };
+
+        if (column.property in columnActions) {
+          columnActions[column.property]();
         }
       }
     },
@@ -2017,32 +2024,29 @@
     },
     //鍒嗙被娉ㄥ叆淇濆瓨
     injectAddHandle() {
-      // 瀹氫箟灞曠ず绫诲瀷
-      let data = {
-        "娉ㄥ叆绫诲瀷": this.injectOption.classifyInvokeAttr,
-        "娉ㄥ叆绫诲瀷鍚嶇О": this.injectOption.classifyInvokeAttrName,
-        "灞傜骇璁剧疆": this.injectOption.classifyInvokeLevel == 'max' ? this.injectOption.classifyNumber : 'min',
-        "鏄惁鍙慨鏀�": this.injectOption.classifyInvokeEditFlag
-      }
-      //鍕鹃�夋搷浣�
+      const { classifyInvokeAttr, classifyInvokeAttrName, classifyInvokeLevel, classifyInvokeEditFlag, classifyNumber } = this.injectOption;
+
+      const data = {
+        "娉ㄥ叆绫诲瀷": classifyInvokeAttr,
+        "娉ㄥ叆绫诲瀷鍚嶇О": classifyInvokeAttrName,
+        "灞傜骇璁剧疆": classifyInvokeLevel === 'max' ? classifyNumber : 'min',
+        "鏄惁鍙慨鏀�": classifyInvokeEditFlag
+      };
       for (const key in this.injectOption) {
         this.attrSelectList[0][key] = this.injectOption[key];
-        //濡傛灉鏄寚瀹氬眰璧嬪�间负鏁板瓧
-        if (this.injectOption.classifyInvokeLevel !== 'min') {
-          this.attrSelectList[0].classifyInvokeLevel = this.injectOption.classifyNumber
+        if (classifyInvokeLevel !== 'min') {
+          this.attrSelectList[0].classifyInvokeLevel = classifyNumber;
         } else {
-          this.attrSelectList[0].classifyInvokeLevel = 'min'
+          this.attrSelectList[0].classifyInvokeLevel = 'min';
         }
-        this.$set(this.attrSelectList[0], 'classifyInvokeText', data)
+        this.$set(this.attrSelectList[0], 'classifyInvokeText', data);
       }
-      // this.injectHandleReset()
-      if (this.injectOption.classifyInvokeLevel !== 'min') {
-        this.injectOption.classifyInvokeLevel = this.injectOption.classifyNumber;
+      if (classifyInvokeLevel !== 'min') {
+        this.injectOption.classifyInvokeLevel = classifyNumber;
       } else {
         this.injectOption.classifyNumber = 0;
       }
       this.injectVisible = false;
-
     },
     //鍒嗙被娉ㄥ叆娓呯┖
     injectHandleReset() {

--
Gitblit v1.9.3