From 51453805bae17ac96ae7be39d9f6dcb8f05b8e54 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期五, 04 八月 2023 18:44:54 +0800
Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs
---
Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue | 194 ++++++++++++++++++++++++++++--------------------
1 files changed, 114 insertions(+), 80 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
index f0d7364..581c486 100644
--- a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
+++ b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
@@ -24,7 +24,7 @@
</div>
</div>
<!-- 鏍戣妭鐐规坊鍔犲璇濇-->
- <el-dialog :title="this.TreeFlag ? '娣诲姞鍒嗙被' :'娣诲姞涓婚搴�'" :visible.sync="TreeAddFormVisible" v-loading="AddLoading" append-to-body
+ <el-dialog :title="this.TreeFlag ? '娣诲姞鍒嗙被' :'娣诲姞涓婚搴�'" :before-close="TreeEscHandler" :visible.sync="TreeAddFormVisible" v-loading="AddLoading" append-to-body
style="width: 1700px;margin: auto">
<el-form :model="TreeAddform" :rules="rules">
<el-form-item :label="this.TreeFlag ? '鍒嗙被缂栧彿锛�' :'涓婚搴撶紪鍙凤細'" label-width="150px" style="display: inline-block" prop="id">
@@ -52,13 +52,13 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
- <el-button @click="TreeAddFormVisible = false">鍙� 娑�</el-button>
+ <el-button @click="TreeEscHandler">鍙� 娑�</el-button>
<el-button type="primary" @click="TreeAddHandler">纭� 瀹�</el-button>
</div>
</el-dialog>
<!-- 淇敼瀵硅瘽妗�-->
<el-dialog :visible.sync="TreeEditFormVisible" append-to-body title="淇敼鍒嗙被">
- <classifyTreeform ref="childForm" :loneTreeNewForm="TreeList" :nodeList="nodeList" :flag="'edit'" @MasterHandler="MasterHandler" :Editclose=" ()=>{TreeEditFormVisible=false}" :TreeFlag="TreeFlagCode" :nodeClickList="nodeClickList" @referTreeForm="referTreeForm" @flushed="flushed"></classifyTreeform>
+ <classifyTreeform ref="childForm" :loneTreeNewForm="TreeList" :nodeList="nodeList" :flag="'edit'" @MasterHandler="MasterHandler" :Editclose=" ()=>{TreeEditFormVisible=false}" :TreeFlag="editTreeFLagCode" :nodeClickList="nodeClickList" @referTreeForm="referTreeForm" @flushed="flushed"></classifyTreeform>
</el-dialog>
<avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata" :defaultExpandAll="false"
:option="Treeoption"
@@ -121,12 +121,12 @@
</div>
</el-dialog>
<!-- 妯℃澘鍏嬮殕 -->
- <el-dialog :visible.sync="CloneVisible" append-to-body title="鍏嬮殕妯℃澘">
+ <el-dialog :visible.sync="CloneVisible" append-to-body title="鍏嬮殕妯℃澘" :before-close="cloneClose">
<el-container>
<el-aside width="300px">
<div style="margin-bottom: 5px"><el-tag>涓婚搴撳垎绫�</el-tag></div>
<!-- 鍏嬮殕妯℃澘鐨勬爲 娌跨敤棣栭〉鏍戠殑loading鍜宱ption锛屼絾鏄痙ata鍜寁-model缁戝畾鐨勬暟鎹垱寤轰竴涓柊鐨勫彉閲忥紝鍙﹀鐐瑰嚮鏂规硶涔熸槸閲嶆柊鑾峰彇鏉ユ搷浣滃厠闅嗘ā鏉跨殑鏁版嵁-->
- <avue-tree v-model="TreeAvueform" v-loading="loading" :data="Treedata"
+ <avue-tree ref="cloneTree" v-model="TreeAvueform" v-loading="loading" :data="Treedata"
:defaultExpandAll="false"
:option="Treeoption"
style="height: 50.5vh;margin-right: 10px"
@@ -160,7 +160,7 @@
</el-container >
<div style="display: flex; justify-content: flex-end; align-items: center;margin-top: 10px" >
<el-button size="small " type="primary" @click="Clonehandler">纭畾</el-button>
- <el-button size="small" @click="CloneVisible=false" >鍙栨秷</el-button>
+ <el-button size="small" @click="cloneClose" >鍙栨秷</el-button>
</div>
<el-dialog
width="30%"
@@ -231,7 +231,11 @@
<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>
+ <avue-crud :data="masterData" :option="masterOption" @row-click="masterSelect">
+ <template slot="radio" slot-scope="{row}">
+ <el-radio v-model="masterRow" :label="row.$index" style="padding-left: 10px !important;">{{''}}</el-radio>
+ </template>
+ </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" >
@@ -255,7 +259,11 @@
<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>
+ <avue-crud :data="KeyData" :option="masterOption" @row-click="KeySelect">
+ <template slot="radio" slot-scope="{row}">
+ <el-radio v-model="masterRow" :label="row.$index" style="padding-left: 10px !important;">{{''}}</el-radio>
+ </template>
+ </avue-crud>
<div style="height: 30px">
<div style="display: inline-block;float: left;border: 1px solid #eeeeee;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" >
@@ -279,7 +287,11 @@
<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>
+ <avue-crud :data="simData" :option="masterOption" @row-click="simSelect">
+ <template slot="radio" slot-scope="{row}">
+ <el-radio v-model="masterRow" :label="row.$index" style="padding-left: 10px !important;">{{''}}</el-radio>
+ </template>
+ </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" >
@@ -303,7 +315,11 @@
<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>
+ <avue-crud :data="BtmData" :option="masterOption" @row-click="btmSelect">
+ <template slot="radio" slot-scope="{row}">
+ <el-radio v-model="masterRow" :label="row.$index" style="padding-left: 10px !important;">{{''}}</el-radio>
+ </template>
+ </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.btmTypeName}}]</div>
<div style="padding-top: 10px;display: flex; justify-content: flex-end;float: right;overflow: hidden" >
@@ -350,15 +366,18 @@
inject: ["crudTreeData"],
data() {
return {
+ masterRow:null,
AddLoading:false,
// 瀹氫箟涓�涓彉閲忔潵淇濆瓨鏍戣姹傜殑鏁伴噺
- requestCount:0,
+ requestCount:null,
//瀵煎叆鐘舵�佹
ThemeImportVisible:false,
selectRow:'',
selectList:[],
//鏍戣妭鐐规樉绀洪殣钘�
- TreeFlagCode:false,
+ TreeFlagCode:true,
+ //淇敼鑺傜偣鏄剧ず闅愯棌
+ editTreeFLagCode:false,
//缂栫爜瑙勫垯
MasterdialogVisible:false,
masterData:[],
@@ -387,10 +406,15 @@
addBtn:false,
index:true,
border:true,
- selection:true,
menu:false,
height:380,
column:[
+ {
+ label: '',
+ prop: 'radio',
+ width: 60,
+ display: false
+ },
{
label:'鑻辨枃鍚嶇О',
prop:'id'
@@ -415,7 +439,7 @@
label: '鑻辨枃鍚嶇О'
}
],
- SelectValue:"",
+ SelectValue:"id",
SelectFInd:"",
addFlag:false,
// 琛ㄦ牸褰撳墠琛宨d
@@ -486,10 +510,10 @@
},
rules: {
id: [
- { required: true, message: '璇疯緭鍏ュ悕绉�', trigger: 'blur' },
+ { required: true, message: '璇疯緭鍏ョ紪鍙�', trigger: 'blur' },
],
name:[
- { required: true, message: '璇疯緭鍏ョ紪鍙�', trigger: 'blur' },
+ { required: true, message: '璇疯緭鍏ュ悕绉�', trigger: 'blur' },
],
btmTypeName:[
{ required: true, message: '璇烽�夋嫨涓氬姟绫诲瀷', trigger: 'blur' },
@@ -660,11 +684,7 @@
}
},
watch:{
- TreeFlagCode:{
- handler(newval,oldval){
- console.log('TreeFlagCode',newval)
- }
- }
+
},
//tab鏍忛粯璁ゆ槸琛ㄦ牸
mounted() {
@@ -676,7 +696,7 @@
this.$refs.tree.setCurrentKey(null)
this.nodeClickList = {}
this.TreeList=[]
- this.TreeFlagCode=false;
+ this.TreeFlagCode=true;
}
}, true)
},
@@ -741,6 +761,8 @@
},
methods: {
+ // 鍏抽棴寮圭獥
+
/** 瀵煎叆 */
ImportExcel(){
this.ThemeImportVisible=true;
@@ -762,11 +784,11 @@
},
//缂栫爜澶氶��
masterSelect(row){
- if(row.length>0){
+ this.masterRow=row.$index;
this.masterSelectList=row;
- this.masterName=row[0].name;
- this.masterOid=row[0].oid;
- }
+ this.masterName=row.name;
+ this.masterOid=row.oid;
+
},
//缂栫爜瑙勫垯鏌ヨ
SelectFindeHandler(){
@@ -775,15 +797,11 @@
'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=""
}
},
//缂栫爜瑙勫垯纭畾
@@ -834,15 +852,11 @@
'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=""
}
},
//鍏抽敭灞炴�ф帴鍙�
@@ -857,9 +871,10 @@
},
// 鍏抽敭澶氶��
KeySelect(row){
+ this.masterRow=row.$index;
this.KeySelectLIst=row;
- this.KeyName=row[0].name;
- this.KeyOid=row[0].oid;
+ this.KeyName=row.name;
+ this.KeyOid=row.oid;
},
//鍏抽敭澶辩劍
simFouce(){
@@ -887,22 +902,19 @@
'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.masterRow=row.$index;
this.simSelectList=row;
- this.simName=row[0].name;
- this.simOid=row[0].oid;
+ this.simName=row.name;
+ this.simOid=row.oid;
},
//鐩镐技椤归」鎺ュ彛
simdefaultRend(){
@@ -940,22 +952,19 @@
'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.masterRow=row.$index;
this.btmSelectList=row;
- this.btmName=row[0].name;
- this.btmOid=row[0].id;
+ this.btmName=row.name;
+ this.btmOid=row.id;
},
//涓氬姟绫诲瀷鎺ュ彛
btmdefaultRend(masterParameter){
@@ -986,8 +995,16 @@
})
//璋冪敤淇敼灞炴�у悕鏂规硶
this.ModifyProperties(this.CloneTreedata, 'name', 'label');
+ console.log(this.CloneTreedata)
+ this.CloneTreedata = this.CloneTreedata.map(item => {
+ if (item.attributes.lcStatus === "Disabled") {
+ item.label += '銆愬仠鐢ㄣ��';
+ }
+ return item;
+ });
}).catch(res => {
this.$message.error(res)
+
})
},
//瀹氫箟涓�涓慨鏀规暟鎹睘鎬у悕鐨勬柟娉�
@@ -1011,9 +1028,8 @@
background: 'rgba(0, 0, 0, 0.3)'
});
try {
- if (this.nodeClickList !== "") {
- this.TreeFlag = true;
- }
+ //鏂板琛ㄥご鍚嶇О
+ this.TreeFlag=!this.nodeClickList
await new Promise(resolve => setTimeout(resolve, 500));
this.TreeAddFormVisible = true;
loading.close();
@@ -1021,6 +1037,11 @@
this.$message.error(error);
loading.close();
}
+ },
+ //鏍戣妭鐐瑰彇娑堜簨浠�
+ TreeEscHandler(){
+ this.TreeAddform={};
+ this.TreeAddFormVisible=false
},
//鏍戣妭鐐规坊鍔犱簨浠�
TreeAddHandler() {
@@ -1038,6 +1059,9 @@
});
this.getAttr();
this.TreeAddFormVisible = false;
+ //娣诲姞瀹屾垚鍚庡彸渚ф竻绌�
+ this.ProData=[];
+ this.Formlist=[];
})
.catch((res) => {
this.$message({
@@ -1193,13 +1217,12 @@
//鏍戠偣鍑讳簨浠�
async nodeClick(data) {
console.log(data);
- if (data.parentId === "") {
- this.TreeFlagCode = true;
- }else {
- this.TreeFlagCode =false;
- }
+ //鎿嶄綔鏂板鍜屼慨鏀圭殑涓氬姟绫诲瀷闅愯棌
+ this.TreeFlagCode = !data;
+ this.editTreeFLagCode = !data.parentId;
this.nodeClickList = data;
this.selectRow = 0;
+ this.crudArray=[]
try {
this.requestCount += 1;
const [res1, res2, res3] = await Promise.all([
@@ -1221,6 +1244,7 @@
await this.gridCode();
} else {
this.ProData = [];
+ this.crudOid=''
}
this.TreeList = res3.data.data;
} catch (error) {
@@ -1318,7 +1342,7 @@
message: "娣诲姞鎴愬姛!"
});
done(row)
- this.CrudRend()
+ this.TemRefresh();
}).catch(res => {
this.$message({
type: 'info',
@@ -1330,7 +1354,7 @@
//妯℃澘绠$悊淇敼
CrudRowUpdata(row,index,done) {
editSave(row).then(() => {
- this.CrudRend()
+ this.TemRefresh();
this.$message({
type: "success",
message: "鎿嶄綔鎴愬姛!"
@@ -1343,13 +1367,20 @@
//妯℃澘绠$悊鍒犻櫎
CrudRowDel(row) {
deleteData(row).then(()=> {
- this.CrudRend()
+ this.TemRefresh();
}).catch(res => {
this.$message({
type: 'info',
message: res
});
})
+ },
+ //鍏嬮殕鍙栨秷
+ cloneClose(){
+ this.$refs.cloneTree.setCurrentKey(null)
+ this.ClonenodeClickList = {}
+ this.CloneFormlist=[]
+ this.CloneVisible=false;
},
//鍏嬮殕妯℃澘鏌ヨ
CloneEnterFind(){
@@ -1399,29 +1430,32 @@
}
},
//鍏嬮殕妯℃澘鍗曢�夋鏀瑰彉
- selectionChange(row){
- this.CloneSelect=row;
- //鍙屽悜缁戝畾锛屾彁浜よ〃鍗曡緭鍏ユ鍥炲~涓婂綋鍓嶉�夋嫨鐨勬暟鎹�
- this.CloneModel.id=row[0].id;
- this.CloneModel.name=row[0].name;
- //杩欓噷鏈夌偣缁曪紝CloneSelect鏄垜閫夋嫨妗嗛�夋嫨鐨勬暟鎹�傜瓑浜巘his.nodeClickList.oid鏄洜涓猴紝鍏嬮殕妯℃澘浼犻�掓暟鎹鎶婂綋鍓嶉�夋嫨鏍戠殑oid浼犻�掔粰鍚庣銆傝�屼笉鏄綋鍓嶈鍏嬮殕妯℃澘鐨刼id
- this.CloneSelect[0].codeclassifyoid=this.nodeClickList.oid
+ selectionChange(row) {
+ this.CloneSelect = row;
+ const { id, name } = row[0];
+ this.CloneModel = { id, name };
+ this.CloneSelect[0].codeclassifyoid = this.nodeClickList.oid;
+ console.log('row',row)
+ console.log('CloneSelect',this.CloneSelect)
+ console.log('CloneModel',this.CloneModel)
},
//鍏嬮殕琛ㄥ崟鎻愪氦
- Clonesubmit(row,done){
- //閲嶆柊璧嬪�糃loneSelect浼犻�掔殑鏁版嵁涓鸿緭鍏ユ鍙互淇敼鐨勬暟鎹紝CloneModel鎻愪氦琛ㄥ崟杈撳叆妗嗗弻鍚戠粦瀹氭暟鎹�
- this.CloneSelect[0].id=this.CloneModel.id;
- this.CloneSelect[0].name=this.CloneModel.name;
- copy(this.CloneSelect[0]).then(()=>{
- //鍥犱负鏄祵濂楀脊绐楁墍浠ユ墜鍔ㄥ叧闂瑿loneinnerVisible锛孋loneVisible涓や釜寮圭獥銆�
- this.CloneinnerVisible=false
- this.CloneVisible=false
- this.$message.success("澶嶅埗鎴愬姛")
- this.CrudRend()
- done(row)
- }).catch(res=>{
- done(res)
- })
+ Clonesubmit(row, done) {
+ // 閲嶆柊璧嬪�糃loneSelect浼犻�掔殑鏁版嵁涓鸿緭鍏ユ鍙互淇敼鐨勬暟鎹紝CloneModel鎻愪氦琛ㄥ崟杈撳叆妗嗗弻鍚戠粦瀹氭暟鎹�
+ Object.assign(this.CloneSelect[0], this.CloneModel);
+ // CloneSelect鏁扮粍绗竴椤� 鍖归厤CloneModel瀵硅薄
+ copy(this.CloneSelect[0])
+ .then(() => {
+ // 鍥犱负鏄祵濂楀脊绐楁墍浠ユ墜鍔ㄥ叧闂瑿loneinnerVisible锛孋loneVisible涓や釜寮圭獥銆�
+ this.CloneinnerVisible = false;
+ this.CloneVisible = false;
+ this.$message.success("澶嶅埗鎴愬姛");
+ this.TemRefresh();
+ done(row);
+ })
+ .catch((error) => {
+ done(error);
+ });
},
//鍒锋柊
TemRefresh() {
--
Gitblit v1.9.3