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 | 571 +++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 452 insertions(+), 119 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue b/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue index d0270c8..1ad84bd 100644 --- a/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue +++ b/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue @@ -1,24 +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="submit" 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="dialogVisible" title="涓恒�愮紪鐮佽鍒欍�戦�夊彇鍊�" append-to-body> - <div> - <el-input placeholder="璇烽�夋嫨鍐呭" v-model="masterInput" class="input-with-select"> - <el-select v-model="MasterSearchSelects" placeholder="璇烽�夋嫨"> - <el-option label="鑻辨枃鍚嶇О" value="0"></el-option> - <el-option label="涓枃鍚嶇О" value="1"></el-option> - </el-select> - <el-button slot="append" icon="el-icon-search"></el-button> - </el-input> - </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="dialogVisible=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> + <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> + <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> @@ -26,31 +106,68 @@ </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 { + SelectFInd:"", + masterName:"", + masterOid:"", + KeyName:"", + KeyOid:"", + simName:"", + simOid:"", + btmName:"", + btmOid:"", + btmId:"", masterInput:'', MasterSearchSelects:"", - masterData:[ + masterData:[], + KeyData:[], + simData:[], + BtmData:[], + SelectOption:[ { - id:'001', - name:'001', - description:'001' + value: 'name', + label: '涓枃鍚嶇О' }, { - id:'002', - name:'002', - description:'002' + 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, border:true, selection:true, + menu:false, height:380, column:[ { @@ -67,7 +184,10 @@ } ] }, - dialogVisible:false, + MasterdialogVisible:false, + KeydialogVisible:false, + SimidialogVisible:false, + BtmdialogVisible:false, form: { name: "鍝堝搱", sex: "鐢�" @@ -79,9 +199,9 @@ column: [ { label: '涓婚搴�/鍒嗙被缂栧彿', - prop: 'btmtypeid', - labelWidth:128, - readonly: true, + prop: 'id', + labelWidth:135, + disabled: true, rules: [{ required: true, message: "涓婚搴�/鍒嗙被缂栧彿", @@ -91,8 +211,8 @@ { label: '涓婚搴�/鍒嗙被鍚嶇О', prop: 'name', - readonly: true, - labelWidth:128, + disabled: true, + labelWidth:135, rules: [{ required: true, message: "涓婚搴�/鍒嗙被鍚嶇О", @@ -103,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: "瀛樺偍鐨勪笟鍔$被鍨�", @@ -120,121 +240,337 @@ 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: { - submitBtn:false, - emptyBtn:false, - 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, - }, - { - label:"鐩镐技鏌ヨ瑙勫垯", - prop:"codeResembleRuleOidName", - labelWidth:128, - }, - ] - }, FormList: {}, - masterSelectList:[] + masterSelectList:[], + KeySelectLIst:[], + simSelectList:[], + btmSelectList:[] } }, - created() { + 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() { }, methods: { - submit(form, done) { - this.$message.success(JSON.stringify(form)); - done() + submits(form,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.dialogVisible=true; - console.log(this.dialogVisible) + this.MasterdialogVisible=true; + this.MasterdefaultRend() }, + //缂栫爜瑙勫垯纭畾 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.loneTreeNewForm,'coderuleoidName',this.masterName) + this.$set(this.loneTreeNewForm,'coderuleoid',this.masterOid) + this.$emit('MasterHandler',this.loneTreeNewForm) + } + }, + //缂栫爜澶氶�� + masterSelect(row){ + this.masterSelectList=row; + this.masterName=row[0].name; + this.masterOid=row[0].oid; + }, + //缂栫爜鎺ュ彛 + MasterdefaultRend(masterParameter){ defaultReferDataGrid({ referType:'coderule', isMuti:'false', - 'conditionMap["lcstatus"]':'Released' + 'conditionMap["lcstatus"]':'Released', + ...masterParameter }).then(res=>{ - console.log('---',res) + this.masterData=res.data.records; }) - // if(this.masterSelectList.length>1){ - // this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�') - // }else if(this.masterSelectList.length<=0){ - // this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') - // }else { - // this.dialogVisible=false; - // console.log(this.masterInput) - // console.log(this.MasterSearchSelect) - // } }, - masterSelect(row){ - console.log(row) - this.masterSelectList=row; + //鍏抽敭灞炴�уけ鐒� + 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.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; + }) + }, + //鍏抽敭澶氶�� + 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 + }) } } } @@ -243,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