From 7ce592bb5a5b9e0dc78786e727f042b95ebc81c8 Mon Sep 17 00:00:00 2001 From: lihang <lihang@vci-tech.com> Date: 星期四, 13 七月 2023 16:00:59 +0800 Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs --- Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue | 518 ++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 398 insertions(+), 120 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue b/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue index 9b013db..1ad84bd 100644 --- a/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue +++ b/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue @@ -1,32 +1,104 @@ <template> <div> - <avue-form v-model="loneTreeNewForm" :option="option" @submit="submit" v-if="flag == 'renonly'"> + <avue-form v-model="loneTreeNewForm" :option="option" v-if="flag == 'renonly'"> </avue-form> - <avue-form v-model="loneTreeNewForm" :option="options" @submit="submits" v-else-if="flag == 'edit'"> + <avue-form v-model="loneTreeNewForm" :option="this.options" @submit="submits" v-else-if="flag == 'edit'"> </avue-form> <div> -<!-- 涓恒�愮紪鐮佽鍒欍�戦�夊彇鍊�--> +<!-- 缂栫爜瑙勫垯--> <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="padding-top: 10px;display: flex; justify-content: flex-end" > - <el-button type="primary" size="small" @click="MasterHandlerClick">纭畾</el-button> - <el-button size="small" @click="MasterdialogVisible=false">鍙栨秷</el-button> + <div style="height: 30px"> + <div style="display: inline-block;float: left;border: 1px solid #eee;padding: 5px;margin-top: 5px;font-size: 14px " >宸茶缃殑鍊间负:[{{this.loneTreeNewForm.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> - <avue-crud :data="KeyData" :option="masterOption" @select="masterSelect"></avue-crud> - <div style="padding-top: 10px;display: flex; justify-content: flex-end" > - <el-button type="primary" size="small" @click="KeyHandlerClick">纭畾</el-button> - <el-button size="small" @click="KeydialogVisible=false">鍙栨秷</el-button> + <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.loneTreeNewForm.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> - <avue-crud :data="simData" :option="masterOption" @select="masterSelect"></avue-crud> - <div style="padding-top: 10px;display: flex; justify-content: flex-end" > - <el-button type="primary" size="small" @click="simHandlerClick">纭畾</el-button> - <el-button size="small" @click="SimidialogVisible=false">鍙栨秷</el-button> + <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.loneTreeNewForm.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> +<!-- 瀛樺偍鐨勪笟鍔$被鍨�--> + <el-dialog :visible.sync="BtmdialogVisible" title="涓恒�愪笟鍔$被鍨嬨�戦�夊彇鍊�" append-to-body> + <template> + <el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 135px !important;"> + <el-option + v-for="item in SelectOption" + :key="item.value" + :label="item.label" + :value="item.value" + style="width: 130px"> + </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="BtmSelectFindeHandler" style="margin-left: 20px">鏌ヨ</el-button> + </template> + <avue-crud :data="BtmData" :option="masterOption" @select="btmSelect"></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.loneTreeNewForm.btmTypeName}}]</div> + <div style="padding-top: 10px;display: flex; justify-content: flex-end;float: right;overflow: hidden" > + <el-button type="primary" size="small" @click="btmHandlerClick">纭畾</el-button> + <el-button size="small" @click="BtmdialogVisible=false">鍙栨秷</el-button> + </div> </div> </el-dialog> </div> @@ -34,20 +106,62 @@ </template> <script> -import {defaultReferDataGrid} from '@/api/MasterData/master' +import {defaultReferDataGrid,referDataGrid} from '@/api/MasterData/master' import {TreeEditSave} from '@/api/template/templateAttr' export default { name: "classifyTreeform.vue", - props: ['loneTreeNewForm','flag'], + props: ['loneTreeNewForm','flag','Editclose','TreeFlag','nodeClickList'], data() { return { - KeyData:[], - simData:[], - name:"", - oid:"", + SelectFInd:"", + masterName:"", + masterOid:"", + KeyName:"", + KeyOid:"", + simName:"", + simOid:"", + btmName:"", + btmOid:"", + btmId:"", masterInput:'', MasterSearchSelects:"", masterData:[], + KeyData:[], + simData:[], + BtmData:[], + SelectOption:[ + { + value: 'name', + label: '涓枃鍚嶇О' + }, + { + value: 'id', + label: '鑻辨枃鍚嶇О' + } + ], + SelectValue:"", + btmOption:{ + addBtn:false, + index:true, + border:true, + selection:true, + menu:false, + height:380, + column:[ + { + label:'涓氬姟绫诲瀷缂栧彿', + prop:'id' + }, + { + label:'涓氬姟绫诲瀷鍚嶇О', + prop:'name' + }, + { + label:'鎻忚堪', + prop:'description' + } + ] + }, masterOption:{ addBtn:false, index:true, @@ -73,6 +187,7 @@ MasterdialogVisible:false, KeydialogVisible:false, SimidialogVisible:false, + BtmdialogVisible:false, form: { name: "鍝堝搱", sex: "鐢�" @@ -84,9 +199,9 @@ column: [ { label: '涓婚搴�/鍒嗙被缂栧彿', - prop: 'btmtypeid', + prop: 'id', labelWidth:135, - readonly: true, + disabled: true, rules: [{ required: true, message: "涓婚搴�/鍒嗙被缂栧彿", @@ -96,7 +211,7 @@ { label: '涓婚搴�/鍒嗙被鍚嶇О', prop: 'name', - readonly: true, + disabled: true, labelWidth:135, rules: [{ required: true, @@ -108,13 +223,13 @@ label:"鎻忚堪", prop:"description", labelWidth:128, - readonly: true, + disabled: true, }, { label: '瀛樺偍鐨勪笟鍔$被鍨�', - prop: 'btmtypename', + prop: 'btmTypeName', labelWidth:128, - readonly: true, + disabled: true, rules: [{ required: true, message: "瀛樺偍鐨勪笟鍔$被鍨�", @@ -125,105 +240,150 @@ label:"缂栫爜瑙勫垯", prop:"coderuleoidName", labelWidth:128, - readonly: true, + disabled: true, }, { label:"鍏抽敭灞炴�ф煡璇㈣鍒�", prop:"codekeyattrrepeatoidName", labelWidth:128, - readonly: true, + disabled: true, }, { label:"鐩镐技鏌ヨ瑙勫垯", prop:"codeResembleRuleOidName", labelWidth:128, - readonly: true, + disabled: true, }, ] }, - options: { - column: [ - { - label: '涓婚搴�/鍒嗙被缂栧彿', - prop: 'btmtypeid', - labelWidth:128, - rules: [{ - required: true, - message: "涓婚搴�/鍒嗙被缂栧彿", - trigger: "blur" - }] - }, - { - label: '涓婚搴�/鍒嗙被鍚嶇О', - prop: 'name', - labelWidth:128, - rules: [{ - required: true, - message: "涓婚搴�/鍒嗙被鍚嶇О", - trigger: "blur" - }] - }, - { - label:"鎻忚堪", - prop:"description", - labelWidth:128, - }, - { - label: '瀛樺偍鐨勪笟鍔$被鍨�', - prop: 'btmtypename', - labelWidth:128, - rules: [{ - required: true, - message: "瀛樺偍鐨勪笟鍔$被鍨�", - trigger: "blur" - }] - }, - { - label:"缂栫爜瑙勫垯", - prop:"coderuleoidName", - labelWidth:128, - focus:this.CodeFoucus - }, - { - label:"鍏抽敭灞炴�ф煡璇㈣鍒�", - prop:"codekeyattrrepeatoidName", - labelWidth:128, - focus:this.Keyfouce - }, - { - label:"鐩镐技鏌ヨ瑙勫垯", - prop:"codeResembleRuleOidName", - labelWidth:128, - focus: this.simFouce - }, - ] - }, FormList: {}, - masterSelectList:[] + masterSelectList:[], + KeySelectLIst:[], + simSelectList:[], + btmSelectList:[] } }, + computed:{ + options(){ + return{ + column: [ + { + label: '涓婚搴�/鍒嗙被缂栧彿', + prop: 'id', + labelWidth:128, + rules: [{ + required: true, + message: "涓婚搴�/鍒嗙被缂栧彿", + trigger: "blur" + }] + }, + { + label: '涓婚搴�/鍒嗙被鍚嶇О', + prop: 'name', + labelWidth:128, + rules: [{ + required: true, + message: "涓婚搴�/鍒嗙被鍚嶇О", + trigger: "blur" + }] + }, + { + label:"鎻忚堪", + prop:"description", + labelWidth:128, + }, + { + label: '瀛樺偍鐨勪笟鍔$被鍨�', + prop: 'btmTypeName', + labelWidth:128, + focus:this.btmFoucus, + // readonly: true, + display:this.TreeFlag, + rules: [{ + required: true, + message: "瀛樺偍鐨勪笟鍔$被鍨�", + trigger: "blur" + }] + }, + { + label:"缂栫爜瑙勫垯", + prop:"coderuleoidName", + labelWidth:128, + focus:this.CodeFoucus, + readonly: true, + }, + { + label:"鍏抽敭灞炴�ф煡璇㈣鍒�", + prop:"codekeyattrrepeatoidName", + labelWidth:128, + focus:this.Keyfouce, + readonly: true, + }, + { + label:"鐩镐技鏌ヨ瑙勫垯", + prop:"codeResembleRuleOidName", + labelWidth:128, + focus: this.simFouce, + readonly: true, + }, + + ] + + } + } + }, + watch:{ + }, created() { - this.MasterdefaultRend() - this.KeydefaultRend() }, methods: { submits(form,done){ - console.log(this.loneTreeNewForm) - TreeEditSave(this.loneTreeNewForm).then(res=>{ - this.$message.success('淇敼鎴愬姛'); - }).catch(res=>{ - this.$message.error(res) - }) - done() + if(this.TreeFlag){ + TreeEditSave(this.loneTreeNewForm).then(res=>{ + this.$message.success('淇敼鎴愬姛'); + this.Editclose() + this.$emit('referTreeForm'); + this.$emit('flushed'); + done() + }) + }else { + this.loneTreeNewForm.btmTypeName=''; + this.loneTreeNewForm.btmTypeId=''; + TreeEditSave(this.loneTreeNewForm).then(res=>{ + this.$message.success('淇敼鎴愬姛'); + this.Editclose() + this.$emit('referTreeForm'); + this.$emit('flushed'); + done() + }) + } }, error(err) { - this.$message.success('璇锋煡鐪嬫帶鍒跺彴'); - console.log(err) + this.$message.success(err); + }, + //缂栫爜瑙勫垯鏌ヨ + 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="" + } }, //缂栫爜瑙勫垯澶辩劍 CodeFoucus(){ this.MasterdialogVisible=true; + this.MasterdefaultRend() }, //缂栫爜瑙勫垯纭畾 MasterHandlerClick(){ @@ -234,62 +394,183 @@ }else { this.MasterdialogVisible=false; this.masterSelectList=[] - this.loneTreeNewForm.codeRuleOidName=this.name; - this.loneTreeNewForm.codeRuleOid=this.oid; - console.log(this.masterSelectList) + this.$set(this.loneTreeNewForm,'coderuleoidName',this.masterName) + this.$set(this.loneTreeNewForm,'coderuleoid',this.masterOid) + this.$emit('MasterHandler',this.loneTreeNewForm) } }, //缂栫爜澶氶�� masterSelect(row){ - console.log(row) this.masterSelectList=row; - this.name=row[0].name; - this.oid=row[0].oid; - console.log('oid',this.oid) + this.masterName=row[0].name; + this.masterOid=row[0].oid; }, //缂栫爜鎺ュ彛 - MasterdefaultRend(){ + MasterdefaultRend(masterParameter){ defaultReferDataGrid({ referType:'coderule', isMuti:'false', - 'conditionMap["lcstatus"]':'Released' + 'conditionMap["lcstatus"]':'Released', + ...masterParameter }).then(res=>{ - console.log('---',res) this.masterData=res.data.records; - }) }, - // 鍏抽敭灞炴�уけ鐒� + //鍏抽敭灞炴�уけ鐒� Keyfouce(){ this.KeydialogVisible=true; + this.KeydefaultRend() }, //鍏抽敭灞炴�х‘瀹� KeyHandlerClick(){ - if(this.masterSelectList.length>1){ + if(this.KeySelectLIst.length>1){ this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�') - }else if(this.masterSelectList.length<=0){ + }else if(this.KeySelectLIst.length<=0){ this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') }else { - + this.KeydialogVisible=false; + this.KeySelectLIst=[] + this.$set(this.loneTreeNewForm,'codekeyattrrepeatoidName',this.KeyName) + this.$set(this.loneTreeNewForm,'codekeyattrrepeatoid',this.KeyOid) + 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; - + 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.loneTreeNewForm,'codeResembleRuleOidName',this.simName) + this.$set(this.loneTreeNewForm,'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; + }, + //鐩镐技椤归」鎺ュ彛 + simdefaultRend(){ + defaultReferDataGrid({ + referType:'coderesemblerule', + isMuti:'false', + 'conditionMap["lcstatus"]':'Enabled' + }).then(res=>{ + this.simData=res.data.records; + }) + }, + //涓氬姟绫诲瀷澶辩劍 + btmFoucus(){ + this.BtmdialogVisible=true; + this.btmdefaultRend() + }, + //涓氬姟绫诲瀷纭畾 + btmHandlerClick(){ + if(this.btmSelectList.length>1){ + this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�') + }else if(this.btmSelectList.length<=0){ + this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') + }else { + this.BtmdialogVisible=false; + this.btmSelectList=[] + this.$set(this.loneTreeNewForm,'btmTypeName',this.btmName ||this.btmOid) + this.$set(this.loneTreeNewForm,'btmTypeId',this.btmId) + this.$emit('MasterHandler',this.loneTreeNewForm) + } + }, + //涓氬姟绫诲瀷鏌ヨ + BtmSelectFindeHandler(){ + if(this.SelectValue == 'id'){ + const masterParameter={ + 'conditionMap[id]':this.SelectFInd + } + this.btmdefaultRend(masterParameter); + this.SelectValue="" + this.SelectFInd="" + }else if(this.SelectValue == 'name'){ + const masterParameter={ + 'conditionMap[name]':this.SelectFInd + } + this.btmdefaultRend(masterParameter) + this.SelectValue="" + this.SelectFInd="" + } + }, + //涓氬姟绫诲瀷澶氶�� + btmSelect(row){ + this.btmSelectList=row; + this.btmName=row[0].name; + this.btmOid=row[0].oid; + this.btmId=row[0].id; + }, + //涓氬姟绫诲瀷鎺ュ彛 + btmdefaultRend(masterParameter){ + referDataGrid({valueField:'id',isMuti:'false',...masterParameter}).then(res=>{ + this.BtmData=res.data.data.records + }) } } } @@ -298,6 +579,3 @@ <style scoped> </style> - -<!--uiDataController/defaultReferDataGrid?referBo=coderule&isMuti=false&conditionMap%5B%22lcstatus%22%5D=Released--> -<!--uiDataController/defaultReferDataGrid?conditionMap%5B%22lcstatus%22%5D=Released&referBo=coderule&isMuti=false&_=1687831291212--> -- Gitblit v1.9.3