From 930766d03537d803cea4bf468ab2abc44ff42645 Mon Sep 17 00:00:00 2001
From: yuxc <653031404@qq.com>
Date: 星期三, 19 七月 2023 14:51:29 +0800
Subject: [PATCH] 1、主要解决 mybatis返回map时value值为null,属性和value都不显示问题
---
Source/UBCS-WEB/src/components/Tree/attrCrud.vue | 102 ++++++++++++++++++++++++++++++--------------------
1 files changed, 61 insertions(+), 41 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
index b361ff8..43120ab 100644
--- a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
+++ b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
@@ -1,38 +1,38 @@
<template>
<div>
<div style="display: flex;flex-wrap: wrap;" v-if="this.crudArrayFlag">
- <el-button-group>
+
<!--鏂板-->
- <el-button v-if="attrEditVisible == false && attrFlagChiledren==false" size="small" type="primary" icon="el-icon-plus" @click="busineHandle">娣诲姞 {{ msg }}</el-button>
+ <el-button v-if="attrEditVisible == false && attrFlagChiledren==false && crudLCStatus=='Editing'" size="small" type="primary" icon="el-icon-plus" @click="busineHandle">娣诲姞 {{ msg }}</el-button>
<!-- 鍏ㄥ睆缂栬緫-->
- <el-button v-if=" attrEditVisible == false && attrFlagChiledren==false" size="small" @click="fullscreenHandle" icon="el-icon-full-screen">鍏ㄥ睆缂栬緫</el-button>
+ <el-button v-if=" attrEditVisible == false && attrFlagChiledren==false && crudLCStatus=='Editing'" size="small" @click="fullscreenHandle" icon="el-icon-full-screen">鍏ㄥ睆缂栬緫</el-button>
<!-- 楠岃瘉瑙勫垯-->
- <el-button icon="el-icon-info" size="small" @click="ruleAddHandler">楠岃瘉瑙勫垯</el-button>
+ <el-button v-if="crudLCStatus=='Editing'" icon="el-icon-info" size="small" @click="ruleAddHandler">楠岃瘉瑙勫垯</el-button>
<!-- 灞炴�у垎缁�-->
- <el-button icon="el-icon-menu" size="small" @click="attrVisibleHandle">灞炴�у垎缁�</el-button>
- </el-button-group>
- <el-button-group>
+ <el-button v-if="crudLCStatus=='Editing'" icon="el-icon-menu" size="small" @click="attrVisibleHandle">灞炴�у垎缁�</el-button>
+
+
<!-- 鍒嗙被娉ㄥ叆-->
- <el-button icon="el-icon-magic-stick" size="small" @click="injectBtn">鍒嗙被娉ㄥ叆</el-button>
+ <el-button v-if="crudLCStatus=='Editing'" icon="el-icon-magic-stick" size="small" @click="injectBtn">鍒嗙被娉ㄥ叆</el-button>
<!-- 缁勫悎瑙勫垯-->
- <el-button size="small" @click="isShowHandler">缁勫悎瑙勫垯</el-button>
+ <el-button v-if="crudLCStatus=='Editing'" size="small" @click="isShowHandler">缁勫悎瑙勫垯</el-button>
<!-- 鏋氫妇娉ㄥ叆-->
- <el-button size="small" @click="enmuVisHandle">鏋氫妇娉ㄥ叆</el-button>
+ <el-button v-if="crudLCStatus=='Editing'" size="small" @click="enmuVisHandle">鏋氫妇娉ㄥ叆</el-button>
<!-- 绾ц仈灞炴��-->
- <el-button size="small" @click="CascadeHandle">绾ц仈灞炴��</el-button>
+ <el-button v-if="crudLCStatus=='Editing'" size="small" @click="CascadeHandle">绾ц仈灞炴��</el-button>
<!-- 棰勮鎺掑簭-->
<el-button size="small" @click="orderHandle" icon="el-icon-arrow-down">棰勮鎺掑簭</el-button>
- </el-button-group>
- <el-button-group>
+
+
<!-- 淇濆瓨-->
- <el-button size="small" @click="addsHandler" icon="el-icon-check">淇濆瓨</el-button>
+ <el-button v-if="crudLCStatus=='Editing'" size="small" @click="addsHandler" icon="el-icon-check">淇濆瓨</el-button>
<!-- 鍒犻櫎-->
- <el-button size="small" @click="CrudRemove" icon="el-icon-delete">鍒犻櫎</el-button>
+ <el-button v-if="crudLCStatus=='Editing'" size="small" @click="CrudRemove" icon="el-icon-delete">鍒犻櫎</el-button>
<!-- 閲嶇疆-->
<el-button size="small" @click="reset" icon="el-icon-refresh-right">閲嶇疆</el-button>
<!-- 鍚屾鍒板叾浠栨ā鏉�-->
<el-button size="small"@click="syncHandle" icon="el-icon-share">鍚屾鍒板叾浠栨ā鏉�</el-button>
- </el-button-group>
+
<!-- 缂栫爜鐢宠棰勮-->
<el-button size="small" @click="applicationHandle" style="">缂栫爜鐢宠棰勮</el-button>
<!-- 楠岃瘉瑙勫垯-->
@@ -242,7 +242,7 @@
</div>
<el-table :data="ProData"
style="width: 100%"
- height="280"
+ height="750"
@cell-click="handleCellClicks"
@select="selectHandle"
@selection-change="selectionChange"
@@ -270,7 +270,7 @@
@blur="saveRows"></el-input>
<el-input-number size="small" controls-position="right" v-if="editingRows === row && editShows== item.prop && item.edit == 'number'" v-model="row[item.prop]"
@blur="saveRows" :style="{width:(item.width-10)+'px'}"></el-input-number>
- <el-select v-model="row[item.prop]" filterable allow-create default-first-option slot="prepend" v-if="editingRows === row && editShows== item.prop && item.edit == 'select' " @visible-change="DataChangeHandler($event,item.editConfig,index)">
+ <el-select v-model="row[item.prop]" filterable allow-create default-first-option slot="prepend" v-if="editingRows === row && editShows== item.prop && item.edit == 'select' " @blur="selectChangeHandler(item.editConfig,index)">
<el-option
v-for="optionItem in item.data"
:key="optionItem.dictValue"
@@ -316,6 +316,10 @@
type: String,
default: ''
},
+ crudLCStatus: {
+ type: String,
+ default: 'Editing'
+ },
crudArray: {
type: Array,
},
@@ -374,6 +378,7 @@
editingRows: null,
editShows:"",
attrFlag: false,
+ referObject:{},
//缂栫爜鐢宠棰勮option
applicationoption: {
column: []
@@ -1360,7 +1365,11 @@
)
},
created() {
-
+ this.option.column.forEach((item,index) => {
+ if (item.edit == 'select') {
+ this.selectChangeHandler(item.editConfig,index)
+ }
+ })
},
methods: {
formAttr(row, column) {
@@ -1387,15 +1396,16 @@
//鍙傜収閰嶇疆瀛愮粍浠�
echoReferConfig(val){
console.log('val--',val)
+ this.referObject=val
this.$set(this.CurrentCell,'referConfig',JSON.stringify(val))
},
- //鏃堕棿涓嬫媺鏍煎紡
- DataChangeHandler($event,editConfig,index){
+ //鍙緭鍙�変笅鎷�
+ selectChangeHandler(editConfig,index){
let that=this;
- if(!$event){
+ /*if(that.option.column[index].data && that.option.column[index].data.length>=0){
return;
- }
+ }*/
listByFlag(editConfig.extraParams).then(res=>{
that.option.column[index].data=res.data.data;
})
@@ -1403,7 +1413,7 @@
//灞炴�у垎缁勬寜閽�
attrVisibleHandle() {
if (this.attrSelectList < 1) {
- this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉垮睘鎬�')
+ this.$message.warning('璇烽�夋嫨妯℃澘灞炴��')
} else {
this.attrVisible = true;
console.log(this.attrSelectList)
@@ -1541,7 +1551,7 @@
console.log(row)
},
//琛ㄦ牸閫夋嫨
- selectionChange(list,) {
+ selectionChange(list) {
this.attrSelectList = list;
console.log(list)
},
@@ -1631,15 +1641,26 @@
},
//鏋氫妇娉ㄥ叆淇濆瓨
enumAddHandle() {
- if (this.enumRow.length < 1) {
- this.$message.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�')
- } else {
- if(this.CurrentCell){
- this.$set(this.CurrentCell, 'enumString', JSON.stringify(this.enumRow));
+ let hasError = false; // 娣诲姞涓�涓彉閲�
+ this.tableData.forEach((item, index) => {
+ if (item.key === '') {
+ this.$message.warning(`绗�${index + 1}琛岀殑閫夐」鍊间笉鑳戒负绌篳);
+ hasError = true;
+ return;
+ } else if (item.value === '') {
+ this.$message.warning(`绗�${index + 1}琛岀殑閫夐」涓枃鏍囩涓嶈兘涓虹┖`);
+ hasError = true;
+ return;
+ }
+ });
+ // 淇濆瓨鎵ц閫昏緫
+ if (!hasError) {
+ if (this.CurrentCell) {
+ this.$set(this.CurrentCell, 'enumString', JSON.stringify(this.tableData));
this.enumVisible = false;
- }else {
- this.$set(this.attrSelectList[0], 'enumString', JSON.stringify(this.enumRow));
- this.tableData=[]
+ } else {
+ this.$set(this.attrSelectList[0], 'enumString', JSON.stringify(this.tableData));
+ this.tableData=[];
this.enumVisible = false;
}
}
@@ -1650,11 +1671,9 @@
},
//楠岃瘉瑙勫垯鎸夐挳
ruleAddHandler(){
- if(this.attrSelectList.length>1){
- this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�')
- }else if(this.attrSelectList.length<1){
- this.$message.warning('璇烽�夋嫨涓�鎻愭ā鏉垮睘鎬�')
- }else if(this.attrSelectList.length === 1){
+ if (this.attrSelectList < 1) {
+ this.$message.warning('璇烽�夋嫨妯℃澘灞炴��')
+ } else{
this.rulesVisible=true
}
@@ -1671,11 +1690,12 @@
},
// 楠岃瘉瑙勫垯纭畾
rulesHandle() {
- if(this.CurrentCell.length>0){
+ if(this.CurrentCell){
this.$set(this.CurrentCell,'verifyRule',this.RulesForm.expressionText)
}else {
- console.log(this.attrSelectList)
- this.$set(this.attrSelectList[0],'verifyRule',this.RulesForm.expressionText)
+ this.attrSelectList.forEach((item)=>{
+ this.$set(item,'verifyRule',this.RulesForm.expressionText)
+ })
this.rulesremove()
}
this.rulesVisible = false
--
Gitblit v1.10.0