From a3681ec747eb3cd7290e3e85085b9edd173701b5 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期四, 06 七月 2023 15:44:53 +0800
Subject: [PATCH] 修改添加参照配置bug更改

---
 Source/UBCS-WEB/src/components/Tree/classifyTrees.vue |  311 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 303 insertions(+), 8 deletions(-)

diff --git a/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue b/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
index 4afd457..5090b8c 100644
--- a/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
+++ b/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
@@ -19,25 +19,25 @@
         <!--        鏍戣妭鐐规坊鍔犲璇濇-->
         <el-dialog :title="this.TreeFlag ? '娣诲姞鍒嗙被' :'娣诲姞涓婚搴�'" :visible.sync="TreeAddFormVisible" append-to-body
                    style="width: 1700px;margin: auto">
-          <el-form :model="TreeAddform">
-            <el-form-item :label="this.TreeFlag ? '鍒嗙被缂栧彿锛�' :'涓婚搴撶紪鍙凤細'" label-width="150px" style="display: inline-block">
+          <el-form :model="TreeAddform" :rules="rules">
+            <el-form-item :label="this.TreeFlag ? '鍒嗙被缂栧彿锛�' :'涓婚搴撶紪鍙凤細'" label-width="150px" style="display: inline-block" prop="id">
               <el-input v-model="TreeAddform.id" autocomplete="off" style="width: 170px"></el-input>
             </el-form-item>
-            <el-form-item :label="this.TreeFlag ? '鍒嗙被鍚嶇О锛�' :'涓婚搴撳悕绉帮細'" label-width="100px" style="display: inline-block">
+            <el-form-item :label="this.TreeFlag ? '鍒嗙被鍚嶇О锛�' :'涓婚搴撳悕绉帮細'" label-width="110px" style="display: inline-block" prop="name">
               <el-input v-model="TreeAddform.name" autocomplete="off" style="width: 170px"></el-input>
             </el-form-item>
             <el-form-item label="鎻忚堪锛�" label-width="150px">
               <el-input v-model="TreeAddform.description" autocomplete="off" style="width: 585px"></el-input>
             </el-form-item>
             <el-form-item label="缂栫爜瑙勫垯锛�" label-width="150px">
-              <el-input v-model="TreeAddform.coderuleoidName" autocomplete="off" style="width: 585px"></el-input>
+              <el-input v-model="TreeAddform.coderuleoidName" autocomplete="off" style="width: 585px" @focus="CodeFoucus"></el-input>
             </el-form-item>
             <el-form-item label="鍏抽敭灞炴�ф煡璇㈣鍒欙細" label-width="150px">
-              <el-input v-model="TreeAddform.codekeyattrrepeatoidName" autocomplete="off"
+              <el-input v-model="TreeAddform.codekeyattrrepeatoidName" autocomplete="off" @focus="Keyfouce"
                         style="width: 585px"></el-input>
             </el-form-item>
             <el-form-item label="鐩镐技鏌ヨ瑙勫垯锛�" label-width="150px">
-              <el-input v-model="TreeAddform.codeResembleRuleOidName" autocomplete="off"
+              <el-input v-model="TreeAddform.codeResembleRuleOidName" autocomplete="off" @focus="simFouce"
                         style="width: 585px"></el-input>
             </el-form-item>
           </el-form>
@@ -165,6 +165,78 @@
           </basic-container>
           <templatePro :ProData="this.ProData" :crudOid="this.crudOid" :crudArray="this.crudArray" :Formlist="this.Formlist" :codeClassifyOid="this.codeClassifyOid"></templatePro>
         </span>
+        <!--     缂栫爜瑙勫垯-->
+        <el-dialog  :visible.sync="MasterdialogVisible"   title="涓恒�愮紪鐮佽鍒欍�戦�夊彇鍊�" append-to-body>
+          <template>
+            <el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 135px">
+              <el-option
+                v-for="item in SelectOption"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+                style="width: 150px">
+              </el-option>
+            </el-select>
+            <el-input style="width: 260px;margin-left: 15px" placeholder="杈撳叆鍊煎悗杩涜妯$硦鏌ヨ" v-model="SelectFInd"></el-input>
+            <el-button size="small"  type="primary" plain @click="SelectFindeHandler" style="margin-left: 20px">鏌ヨ</el-button>
+          </template>
+          <avue-crud :data="masterData" :option="masterOption" @select="masterSelect"></avue-crud>
+          <div style="height: 30px">
+            <div style="display: inline-block;float: left;border: 1px solid #eee;padding: 5px;margin-top: 5px;font-size: 14px " >宸茶缃殑鍊间负:[{{this.TreeAddform.coderuleoidName ==''?'鏈缃��':this.TreeAddform.coderuleoidName}}]</div>
+            <div style="padding-top: 10px;display: flex; justify-content: flex-end;float: right;overflow: hidden" >
+              <el-button type="primary" size="small" @click="MasterHandlerClick">纭畾</el-button>
+              <el-button  size="small" @click="MasterdialogVisible=false">鍙栨秷</el-button>
+            </div>
+          </div>
+        </el-dialog>
+        <!--      鍏抽敭灞炴�ф煡璇㈣鍒�-->
+        <el-dialog  :visible.sync="KeydialogVisible"   title="涓恒�愬叧閿睘鎬ф煡璇㈣鍒欍�戦�夊彇鍊�" append-to-body>
+          <template>
+            <el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 135px">
+              <el-option
+                v-for="item in SelectOption"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+                style="width: 150px">
+              </el-option>
+            </el-select>
+            <el-input style="width: 260px;margin-left: 15px" placeholder="杈撳叆鍊煎悗杩涜妯$硦鏌ヨ" v-model="SelectFInd"></el-input>
+            <el-button size="small"  type="primary" plain @click="KeySelectFindeHandler" style="margin-left: 20px">鏌ヨ</el-button>
+          </template>
+          <avue-crud :data="KeyData" :option="masterOption" @select="KeySelect"></avue-crud>
+          <div style="height: 30px">
+            <div style="display: inline-block;float: left;border: 1px solid #eee;padding: 5px;margin-top: 5px;font-size: 14px " >宸茶缃殑鍊间负:[{{this.TreeAddform.codekeyattrrepeatoidName ==''?'鏈缃��':this.TreeAddform.codekeyattrrepeatoidName}}]</div>
+            <div style="padding-top: 10px;display: flex; justify-content: flex-end;float: right;overflow: hidden" >
+              <el-button type="primary" size="small" @click="KeyHandlerClick">纭畾</el-button>
+              <el-button  size="small" @click="KeydialogVisible=false">鍙栨秷</el-button>
+            </div>
+          </div>
+        </el-dialog>
+        <!--      鐩镐技椤规煡璇㈣鍒�-->
+        <el-dialog  :visible.sync="SimidialogVisible"   title="涓恒�愮浉浼奸」鏌ヨ瑙勫垯銆戦�夊彇鍊�" append-to-body>
+          <template>
+            <el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 135px">
+              <el-option
+                v-for="item in SelectOption"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+                style="width: 150px">
+              </el-option>
+            </el-select>
+            <el-input style="width: 260px;margin-left: 15px" placeholder="杈撳叆鍊煎悗杩涜妯$硦鏌ヨ" v-model="SelectFInd"></el-input>
+            <el-button size="small"  type="primary" plain @click="SimSelectFindeHandler" style="margin-left: 20px">鏌ヨ</el-button>
+          </template>
+          <avue-crud :data="simData" :option="masterOption" @select="simSelect"></avue-crud>
+          <div style="height: 30px">
+            <div style="display: inline-block;float: left;border: 1px solid #eee;padding: 5px;margin-top: 5px;font-size: 14px " >宸茶缃殑鍊间负:[{{this.TreeAddform.codeResembleRuleOidName ==''?'鏈缃��':this.TreeAddform.codeResembleRuleOidName}}]</div>
+            <div style="padding-top: 10px;display: flex; justify-content: flex-end;float: right;overflow: hidden" >
+              <el-button type="primary" size="small" @click="simHandlerClick">纭畾</el-button>
+              <el-button  size="small" @click="SimidialogVisible=false">鍙栨秷</el-button>
+            </div>
+          </div>
+        </el-dialog>
       </basic-container>
     </el-main>
   </el-container>
@@ -187,7 +259,7 @@
   editSave,
   copy
 } from "@/api/template/templateAttr";
-
+import {defaultReferDataGrid,referDataGrid} from '@/api/MasterData/master'
 export default {
   name: "classifyTrees.vue",
   //浣跨敤inject鎺ユ敹鍙傛暟
@@ -196,6 +268,66 @@
   inject: [, "crudTreeData"],
   data() {
     return {
+      //缂栫爜瑙勫垯
+      MasterdialogVisible:false,
+      masterData:[],
+      masterSelectList:[],
+      masterName:"",
+      masterOid:"",
+      //鍏抽敭灞炴��
+      KeydialogVisible:false,
+      KeyName:"",
+      KeyOid:"",
+      KeyData:[],
+      KeySelectLIst:[],
+      //鐩镐技椤�
+      simName:"",
+      simOid:"",
+      simData:[],
+      SimidialogVisible:false,
+      simSelectList:[],
+      masterOption:{
+        addBtn:false,
+        index:true,
+        border:true,
+        selection:true,
+        menu:false,
+        height:380,
+        column:[
+          {
+            label:'鑻辨枃鍚嶇О',
+            prop:'id'
+          },
+          {
+            label:'涓枃鍚嶇О',
+            prop:'name'
+          },
+          {
+            label:'鎻忚堪',
+            prop:'description'
+          }
+        ]
+      },
+      SelectOption:[
+        {
+          value: 'name',
+          label: '涓枃鍚嶇О'
+        },
+        {
+          value: 'id',
+          label: '鑻辨枃鍚嶇О'
+        }
+      ],
+      SelectValue:"",
+      SelectFInd:"",
+      rules: {
+        id: [
+          { required: true, message: '璇疯緭鍏ュ悕绉�', trigger: 'blur' },
+        ],
+        name:[
+          { required: true, message: '璇疯緭鍏ョ紪鍙�', trigger: 'blur' },
+        ]
+      },
       addFlag:false,
       // 琛ㄦ牸褰撳墠琛宨d
       crudOid:"",
@@ -434,8 +566,170 @@
     }
   },
   methods: {
+    //缂栫爜瑙勫垯澶辩劍
+    CodeFoucus(){
+      this.MasterdialogVisible=true;
+      this.MasterdefaultRend()
+    },
+    //缂栫爜澶氶��
+    masterSelect(row){
+    if(row.length>0){
+      this.masterSelectList=row;
+      this.masterName=row[0].name;
+      this.masterOid=row[0].oid;
+    }
+    },
+    //缂栫爜瑙勫垯鏌ヨ
+    SelectFindeHandler(){
+      if(this.SelectValue == 'id'){
+        const masterParameter={
+          'conditionMap[id]':this.SelectFInd
+        }
+        this.MasterdefaultRend(masterParameter);
+        this.SelectValue=""
+        this.SelectFInd=""
+      }else if(this.SelectValue == 'name'){
+        const masterParameter={
+          'conditionMap[name]':this.SelectFInd
+        }
+        this.MasterdefaultRend(masterParameter)
+        this.SelectValue=""
+        this.SelectFInd=""
+      }
+    },
+    //缂栫爜瑙勫垯纭畾
+    MasterHandlerClick(){
+      if(this.masterSelectList.length>1){
+        this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�')
+      }else if(this.masterSelectList.length<=0){
+        this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
+      }else {
+        this.MasterdialogVisible=false;
+        this.masterSelectList=[]
+        this.$set(this.TreeAddform,'coderuleoidName',this.masterName)
+        this.$set(this.TreeAddform,'coderuleOid',this.masterOid)
+        this.$emit('MasterHandler',this.loneTreeNewForm)
+        console.log(this.loneTreeNewForm)
+      }
+    },
+    //缂栫爜鎺ュ彛
+    MasterdefaultRend(){
+      defaultReferDataGrid({
+        referType:'coderule',
+        isMuti:'false',
+        'conditionMap["lcstatus"]':'Released'
+      }).then(res=>{
+        this.masterData=res.data.records;
+      })
+    },
+    Keyfouce(){
+      this.KeydialogVisible=true;
+      this.KeydefaultRend()
+    },
+    //鍏抽敭灞炴�х‘瀹�
+    KeyHandlerClick(){
+      if(this.KeySelectLIst.length>1){
+        this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�')
+      }else if(this.KeySelectLIst.length<=0){
+        this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
+      }else {
+        this.KeydialogVisible=false;
+        this.KeySelectLIst=[]
+        this.$set(this.TreeAddform,'codeResembleRuleOidName',this.simName)
+        this.$set(this.TreeAddform,'codeResembleRuleOid',this.simOid)
+        this.$emit('MasterHandler',this.loneTreeNewForm)
+      }
+    },
+    //鍏抽敭灞炴�ф煡璇�
+    KeySelectFindeHandler(){
+      if(this.SelectValue == 'id'){
+        const masterParameter={
+          'conditionMap[id]':this.SelectFInd
+        }
+        this.KeydefaultRend(masterParameter);
+        this.SelectValue=""
+        this.SelectFInd=""
+      }else if(this.SelectValue == 'name'){
+        const masterParameter={
+          'conditionMap[name]':this.SelectFInd
+        }
+        this.KeydefaultRend(masterParameter)
+        this.SelectValue=""
+        this.SelectFInd=""
+      }
+    },
+    //鍏抽敭灞炴�ф帴鍙�
+    KeydefaultRend(){
+      defaultReferDataGrid({
+        referType:'codekeyattrrepeat',
+        isMuti:'false',
+        'conditionMap["lcstatus"]':'Enabled'
+      }).then(res=>{
+        this.KeyData=res.data.records;
+      })
+    },
+    // 鍏抽敭澶氶��
+    KeySelect(row){
+      this.KeySelectLIst=row;
+      this.KeyName=row[0].name;
+      this.KeyOid=row[0].oid;
+    },
+    //鍏抽敭澶辩劍
+    simFouce(){
+      this.SimidialogVisible=true;
+      this.simdefaultRend()
+    },
+    //鐩镐技椤圭‘瀹�
+    simHandlerClick(){
+      if(this.simSelectList.length>1){
+        this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�')
+      }else if(this.simSelectList.length<=0){
+        this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')
+      }else {
+        this.SimidialogVisible=false;
+        this.simSelectList=[]
+        this.$set(this.TreeAddform,'codeResembleRuleOidName',this.simName)
+        this.$set(this.TreeAddform,'codeResembleRuleOid',this.simOid)
+        this.$emit('MasterHandler',this.loneTreeNewForm)
+      }
+    },
+    //鐩镐技椤规煡璇�
+    SimSelectFindeHandler(){
+      if(this.SelectValue == 'id'){
+        const masterParameter={
+          'conditionMap[id]':this.SelectFInd
+        }
+        this.simdefaultRend(masterParameter);
+        this.SelectValue=""
+        this.SelectFInd=""
+      }else if(this.SelectValue == 'name'){
+        const masterParameter={
+          'conditionMap[name]':this.SelectFInd
+        }
+        this.simdefaultRend(masterParameter)
+        this.SelectValue=""
+        this.SelectFInd=""
+      }
+    },
+    //  鐩镐技椤瑰閫�
+    simSelect(row){
+      this.simSelectList=row;
+      this.simName=row[0].name;
+      this.simOid=row[0].oid;
+      console.log('oid',this.oid)
+    },
+    //鐩镐技椤归」鎺ュ彛
+    simdefaultRend(){
+      defaultReferDataGrid({
+        referType:'coderesemblerule',
+        isMuti:'false',
+        'conditionMap["lcstatus"]':'Enabled'
+      }).then(res=>{
+        this.simData=res.data.records;
+      })
+    },
+    //瀛愪紶鐖�
     MasterHandler(val){
-      console.log('鐖朵翰',val)
       this.TreeList=val
     },
     //琛屽崟閫変簨浠�
@@ -488,6 +782,7 @@
     TreeAddHandler() {
       const data = this.TreeAddform
       this.$set(data, "parentCodeClassifyOid", this.nodeClickList.oid)
+      console.log('data',data)
       TreeSave(data).then(() => {
         this.$message({
           type: 'success',

--
Gitblit v1.9.3