From 08110ca678e3316f8adfad451a6a7fd5f845893d Mon Sep 17 00:00:00 2001
From: lihang <lihang@vci-tech.com>
Date: 星期四, 13 七月 2023 11:13:37 +0800
Subject: [PATCH] 业务类型增加生命周期的处理
---
Source/UBCS-WEB/src/components/Tree/attrCrud.vue | 158 +++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 118 insertions(+), 40 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
index 1eb7dde..5e22116 100644
--- a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
+++ b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
@@ -1,17 +1,17 @@
<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" size="small" @click="fullscreenHandle" icon="el-icon-full-screen">鍏ㄥ睆缂栬緫</el-button>
<!-- 楠岃瘉瑙勫垯-->
- <el-button icon="el-icon-info" size="small" @click="rulesVisible=true">楠岃瘉瑙勫垯</el-button>
+ <el-button 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 icon="el-icon-magic-stick" size="small" @click="injectBtn">鍒嗙被娉ㄥ叆</el-button>
<!-- 缁勫悎瑙勫垯-->
@@ -22,8 +22,8 @@
<el-button 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>
<!-- 鍒犻櫎-->
@@ -32,7 +32,7 @@
<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>
<!-- 楠岃瘉瑙勫垯-->
@@ -64,7 +64,7 @@
</div>
</el-dialog>
<!-- 鏋氫妇娉ㄥ叆-->
- <el-dialog :visible.sync="enumVisible" append-to-body title="鏋氫妇娉ㄥ叆">
+ <el-dialog :visible.sync="enumVisible" append-to-body title="鏋氫妇娉ㄥ叆" :before-close="this.enumBeforeClose">
<!-- 娓叉煋琛ㄦ牸鍙婃寜閽� -->
<!-- 娓叉煋琛ㄦ牸鍙婃寜閽� -->
<div>
@@ -103,7 +103,7 @@
<template>
<div style="display: flex;justify-content: right;margin-top: 15px">
<el-button size="small" type="primary" @click="enumAddHandle">淇濆瓨</el-button>
- <el-button size="small" @click="enumVisible=false">鍙栨秷</el-button>
+ <el-button size="small" @click="enumCancell">鍙栨秷</el-button>
</div>
</template>
</div>
@@ -208,10 +208,11 @@
:thisSceneTableData="thisSceneTableData"
:visible.sync="isShowformulaEdit"
@updateFormulaContent="updataFormlaContent"
+ :componentRuleText="componentRuleText"
></formula-editor>
<!-- 鏂板 -->
<el-dialog :visible.sync="addVisible" append-to-body title="浠庝笟鍔$被鍨嬩腑閫夋嫨灞炴��">
- <avue-crud :data="businessData" :option="businessOption" @selection-change="businessSelect">
+ <avue-crud ref="AddOriginPlace" :data="businessData" :option="businessOption" @selection-change="businessSelect">
<template slot="menuLeft">
<div style="display: flex;">
<el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 150px !important;">
@@ -269,12 +270,12 @@
@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' " @focus="DataChangeHandler(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.key"
- :label="optionItem.value"
- :value="optionItem.key">
+ :key="optionItem.dictValue"
+ :label="optionItem.dictValue"
+ :value="optionItem.dictValue">
</el-option>
</el-select>
<el-switch
@@ -292,7 +293,7 @@
<el-button
size="small"
type="text"
- @click.native.prevent="CrudRowDel(scope.row)">
+ @click.native.prevent="CrudRowDel(scope.$index)">
绉婚櫎
</el-button>
</template>
@@ -303,6 +304,7 @@
<script>
import {AttrByBtm, gridCodeClassifyTemplateAttr, batchAddSave, copyto,listByFlag} from '@/api/template/templateAttr'
+import {getList} from "@/api/refer/table";
export default {
name: "attrCrud .vue",
@@ -350,6 +352,7 @@
},
data() {
return {
+ screenWidth: document.documentElement.clientWidth, // 灞忓箷瀹藉害
//褰撳墠鍗曞厓鏍�
CurrentCell:'',
// 鏂板
@@ -781,7 +784,8 @@
// 灞炴�ч獙璇佽緭鍏ユ
RulesForm: {
expressionText: "",
- TestContent: ""
+ TestContent: "",
+ ruleRowBds:""
},
//灞炴�ч獙璇佽鍒欓厤缃�
rulesOption: {
@@ -1322,6 +1326,8 @@
},
//鏃堕棿鏍煎紡涓嬫媺妗�
codeDataFlag:false,
+ // 缁勫悎瑙勫崟鍏冩牸缂栬緫鍥炲~
+ componentRuleText:""
}
},
computed:{
@@ -1341,9 +1347,24 @@
}
},
mounted() {
+ window.addEventListener(
+ 'resize',
+ () => {
+ if(Math.abs(this.screenWidth - document.body.clientWidth) > 20) {
+ this.$nextTick(() => {
+ this.$refs.AddOriginPlace.refreshTable();
+ })
+ }
+ this.screenWidth = document.body.clientWidth;
+ }
+ )
},
created() {
-
+ this.option.column.forEach((item,index) => {
+ if (item.edit == 'select') {
+ this.selectChangeHandler(item.editConfig,index)
+ }
+ })
},
methods: {
formAttr(row, column) {
@@ -1373,28 +1394,35 @@
this.$set(this.CurrentCell,'referConfig',JSON.stringify(val))
},
- //鏃堕棿涓嬫媺鏍煎紡
- DataChangeHandler(editConfig,index){
+ //鍙緭鍙�変笅鎷�
+ selectChangeHandler(editConfig,index){
+ let that=this;
+ /*if(that.option.column[index].data && that.option.column[index].data.length>=0){
+ return;
+ }*/
listByFlag(editConfig.extraParams).then(res=>{
- console.log(res);
- this.option.column[index].data=res;
+ that.option.column[index].data=res.data.data;
})
},
//灞炴�у垎缁勬寜閽�
attrVisibleHandle() {
- if (this.attrSelectList.length > 1) {
- this.$message.warning('鍙兘閫夋嫨涓�鏉℃ā鏉垮睘鎬�')
- } else if (this.attrSelectList < 1) {
- this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉垮睘鎬�')
- } else if (this.attrSelectList.length === 1) {
+ if (this.attrSelectList < 1) {
+ this.$message.warning('璇烽�夋嫨妯℃澘灞炴��')
+ } else {
this.attrVisible = true;
+ console.log(this.attrSelectList)
}
},
//灞炴�у垎缁勬彁浜�
attrHandle() {
- this.$set(this.attrRow, 'attributeGroup', JSON.stringify(this.attrModel))
- this.attrModel = ""
- this.attrVisible = false
+ console.log(this.attrSelectList)
+ // this.$set(this.attrRow, 'attributeGroup', this.attrModel)
+ // this.attrSelectList.attributeGroup=this.attrModel
+ this.attrSelectList.forEach(item=>{
+ item.attributeGroup=this.attrModel
+ })
+ this.attrModel = "";
+ this.attrVisible = false;
},
//灞炴�у垎缁勬竻绌�
attrRemove() {
@@ -1482,7 +1510,6 @@
'conditionMap[classifyTemplateOid]': this.Formlist[0].oid,
'conditionMap[oid_notequal]': this.attrOid
}).then(res => {
- console.log(res)
this.CascadeData = res.data.data;
})
}
@@ -1491,7 +1518,11 @@
CascadeAddHandle() {
let CascadeString = "";
CascadeString = this.selectRowArr.id + (this.selectRowArr.name);
- this.$set(this.attrRow, 'parentCode', CascadeString)
+ if(this.CurrentCell){
+ this.$set(this.CurrentCell, 'parentCode', CascadeString)
+ }else {
+ this.$set(this.attrSelectList[0], 'parentCode', CascadeString)
+ }
this.CascadeVisible = false;
},
//绾ц仈灞炴�ф竻闄�
@@ -1516,6 +1547,7 @@
//琛ㄦ牸閫夋嫨
selectionChange(list) {
this.attrSelectList = list;
+ console.log(list)
},
//淇濆瓨
addsHandler() {
@@ -1529,7 +1561,6 @@
this.editingRows = row;
this.editShows = column.property;
this.rowOid = row.oid;
- console.log(row,column)
this.CurrentCell=row;
if(column.property == 'referConfig' ){
this.$refs.referConfigFormDialog.isShowReferConfigForm = true;
@@ -1537,11 +1568,27 @@
}else if(column.property == 'classifyInvokeLevelName'){
this.injectVisible=true;
}else if(column.property == 'componentRule'){
+
+ if(this.CurrentCell){
+ this.CurrentCell.componentRule=this.componentRuleText;
+ }
this.isShowformulaEdit = true;
}else if(column.property == 'enumString'){
this.enumVisible=true;
}else if(column.property == 'parentCode'){
+ gridCodeClassifyTemplateAttr({
+ 'conditionMap[classifyTemplateOid]': this.Formlist[0].oid,
+ 'conditionMap[oid_notequal]': this.CurrentCell.oid
+ }).then(res => {
+ console.log(res)
+ this.CascadeData = res.data.data;
+ })
this.CascadeVisible=true;
+ }else if(column.property == 'verifyRule'){
+ this.RulesForm.expressionTextt=this.CurrentCell.verifyRule;
+ this.rulesVisible=true;
+ console.log(this.CurrentCell.verifyRule)
+ console.log(this.RulesForm.expressionText)
}
},
saveRows() {
@@ -1574,6 +1621,14 @@
this.enumVisible = true;
}
},
+ enumBeforeClose(done){
+ this.tableData=[]
+ done()
+ },
+ enumCancell(){
+ this.tableData=[]
+ this.enumVisible=false;
+ },
//鏋氫妇娉ㄥ叆澶氶�夋
handleSelectionChange(row) {
this.enumRow = JSON.parse(JSON.stringify(row));
@@ -1587,7 +1642,8 @@
this.$set(this.CurrentCell, 'enumString', JSON.stringify(this.enumRow));
this.enumVisible = false;
}else {
- this.$set(this.attrRow, 'enumString', JSON.stringify(this.enumRow));
+ this.$set(this.attrSelectList[0], 'enumString', JSON.stringify(this.enumRow));
+ this.tableData=[]
this.enumVisible = false;
}
}
@@ -1596,8 +1652,18 @@
saveRow() {
this.editingRow = null;
},
+ //楠岃瘉瑙勫垯鎸夐挳
+ ruleAddHandler(){
+ if (this.attrSelectList < 1) {
+ this.$message.warning('璇烽�夋嫨妯℃澘灞炴��')
+ } else{
+ this.rulesVisible=true
+ }
+
+ },
//瑙勫垯鏍¢獙锛屽弻鍑昏〃鍗曚簨浠�
handleRulesRowDBLClick(row) {
+ this.ruleRowBds=row.bds
this.RulesForm.expressionText = row.bds
},
// 楠岃瘉瑙勫垯娓呴櫎鍐呭
@@ -1607,11 +1673,21 @@
},
// 楠岃瘉瑙勫垯纭畾
rulesHandle() {
+ if(this.CurrentCell){
+ this.$set(this.CurrentCell,'verifyRule',this.RulesForm.expressionText)
+ }else {
+ this.attrSelectList.forEach((item)=>{
+ this.$set(item,'verifyRule',this.RulesForm.expressionText)
+ })
+ this.rulesremove()
+ }
this.rulesVisible = false
},
//楠岃瘉瑙勫垯妫�鏌�
rulesExamine() {
- if (this.RulesForm.expressionText.test(this.RulesForm.TestContent)) {
+ console.log(this.RulesForm.expressionText)
+ const regex = new RegExp(this.rulesData.ruleRowBds);
+ if(regex.test(this.RulesForm.TestContent)){
this.$message.success('鏍¢獙鎴愬姛')
}
},
@@ -1622,7 +1698,8 @@
} else if (this.attrSelectList.length < 1) {
this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉挎暟鎹�')
} else if (this.attrSelectList.length === 1) {
- this.injectVisible = true
+ this.injectVisible = true;
+
}
},
//鍒嗙被娉ㄥ叆淇濆瓨
@@ -1637,8 +1714,8 @@
this.$set(this.CurrentCell, "classifyInvokeLevelName", data);
this.$set(this.CurrentCell, "classifyInvokeLevel", JSON.stringify(this.injectOption));
}else {
- this.$set(this.attrRow, 'classifyInvokeLevelName', data);
- this.$set(this.attrRow, 'classifyInvokeLevel', JSON.stringify(this.injectOption));
+ this.$set(this.attrSelectList[0], 'classifyInvokeLevelName', data);
+ this.$set(this.attrSelectList[0], 'classifyInvokeLevel', JSON.stringify(this.injectOption));
}
this.injectVisible = false
},
@@ -1655,13 +1732,14 @@
},
//灞炴�фā鏉胯〃鏍煎崟鍏冩牸鐐瑰嚮浜嬩欢
//琛ㄦ牸鎿嶄綔鏍忓垹闄�
- CrudRowDel(row) {
- this.ProData.splice(row.$index, 1)
+ CrudRowDel(index) {
+ this.ProData.splice(index, 1)
},
//琛ㄦ牸鍒犻櫎
CrudRemove() {
this.attrSelectList.forEach((item)=>{
- this.ProData.splice(item.$index, 1)
+ const index = this.ProData.indexOf(item);
+ this.ProData.splice(index, 1)
})
},
//琛ㄦ牸閲嶇疆
--
Gitblit v1.9.3