From 52ffefd06e59cbd56c1a919972866592379cfed2 Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期四, 21 九月 2023 11:27:11 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue |   62 ++++++++++++++++++++++++------
 1 files changed, 49 insertions(+), 13 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue b/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue
index 3000eba..fa3ea8d 100644
--- a/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue
+++ b/Source/UBCS-WEB/src/components/refer/vciWebReferTree.vue
@@ -1,5 +1,5 @@
 <template>
-  <avue-input-tree ref="referTree" :props="props" :disabled="disabled" :lazy="lazy" :tree-load="treeLoad" :node-click="nodeClick" :checked="checked" :leaf-only="referConfig.onlyLeaf" :multiple="isMuti" v-model="value" :placeholder="title" :dic="treeData"></avue-input-tree>
+  <avue-input-tree ref="referTree" :props="props" :disabled="disabled" :lazy="lazy" :tree-load="treeLoad" :node-click="nodeClick" :checked="checked" :blur="valueChange" :leaf-only="referConfig.onlyLeaf" :multiple="isMuti" v-model="value" :placeholder="title" :dic="treeData"></avue-input-tree>
 </template>
 
 <script>
@@ -25,7 +25,7 @@
       },
       treeUrl: this.referConfig.options.url || '/api/ubcs-code/mdmEngineController/defaultReferTree',
       treeData: [],
-      selectionList: [],
+      checkedData:[],
       currentNode:{},
       params: {},
       loadType: {'all': 'all', 'node': 'node'},
@@ -34,8 +34,6 @@
   },
   created() {
     this.getParams();
-    // console.log('referConfig:')
-    // console.log(this.referConfig)
   },
   mounted() {
     if(!this.lazy){
@@ -79,9 +77,15 @@
       queryParams['loadType'] = this.options.loadType;
       queryParams['multipleSelect'] = this.isMuti;
       queryParams['isMuti'] = queryParams['multipleSelect'];
-      if (this.options.remoteSort && this.options.initSort) {
+      if (this.options.initSort) {
         queryParams['order'] = this.options.initSort.type;//鏂规硶
         queryParams['sort'] = this.options.initSort.field;//瀛楁
+      }
+      if(this.options.sortField){
+        queryParams['sort'] = this.options.sortField;//瀛楁
+      }
+      if(this.options.sortType){
+        queryParams['order'] = this.options.sortType;//鏂规硶
       }
       if (this.options.rootParams) {
         for (var key in this.options.rootParams) {
@@ -119,14 +123,26 @@
           queryParams['replaceMap["' + key + '"]'] = this.options.replaceParams[key];//鏂扮殑鏂瑰紡
         }
       }
-      queryParams['parentValue']='\\IN(SELECT oid from PL_CODE_CLASSIFY where id =\'hesuanfenlei\')'
       this.params=queryParams;
 
     },
-    getTree(){
-      getTree(this.params,this.treeUrl).then(res => {
-          this.treeData=res.data
+    getTree() {
+      getTree(this.params, this.treeUrl).then(res => {
+        res.data.map(item => {
+          if (!item.attribute) {
+            item.attribute = {
+              data: {}
+            }
+          } else {
+            item.attribute.data = item.attribute.data || {}
+          }
+          return {
+            ...item,
+            leaf: !item.hasChildren
+          }
         })
+        this.treeData = res.data
+      })
     },
     treeLoad: function (treeNode, resolve) {
       const parentOid = (treeNode.level === 0) ? 0 : treeNode.data.oid;
@@ -142,6 +158,13 @@
       }
       getLazyTree(this.params,this.treeUrl).then(res => {
         resolve(res.data.data.map(item => {
+          if(!item.attribute){
+            item.attribute={
+              data:{}
+            }
+          }else{
+            item.attribute.data=item.attribute.data || {}
+          }
           return {
             ...item,
             leaf: !item.hasChildren
@@ -153,9 +176,14 @@
       if(!this.isMuti) {
         this.setValue({checkedNodes:[data]})
       }
-     },
+    },
     checked(checkedNode, checkedData) {
-      this.setValue(checkedData)
+      this.checkedData=checkedData
+    },
+    valueChange(){
+      if(this.isMuti){
+        // this.setValue(this.checkedData)
+      }
     },
     setValue:function (checkedData){
       var value = [];
@@ -175,8 +203,16 @@
         }
         text.push(tempRaw.join(textSep));
       }
+      let mapFields =this.referConfig.fieldMap || {};
+      try {
+        if(!validatenull(this.options.mapFields)){
+          mapFields =Object.assign(this.referConfig.fieldMap,JSON.parse(this.options.mapFields)) ;
+        }
+      }catch (e) {
+
+      }
       this.value = value.join(',');
-      this.text = text.join(',')
+      this.text = text.join(',');
       this.$emit("setValue", {
         field: this.referConfig.field,
         showField: this.referConfig.showField,
@@ -184,7 +220,7 @@
         text: this.text || '',
         isTreeMuti:this.isMuti,
         rawData: checkedData.checkedNodes,
-        fieldMap:this.referConfig.fieldMap
+        fieldMap:mapFields
       });
     }
   },

--
Gitblit v1.9.3