From 6ae0fcef149ddbe614746023a58a3885b3ac4bde Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期二, 25 三月 2025 11:31:04 +0800 Subject: [PATCH] Merge branch 'dev' --- src/components/Process/panel/PropertiesPanel.vue | 78 ++++++++++++++++++++++++++++++++------ 1 files changed, 65 insertions(+), 13 deletions(-) diff --git a/src/components/Process/panel/PropertiesPanel.vue b/src/components/Process/panel/PropertiesPanel.vue index e1a171f..e7bc2dc 100644 --- a/src/components/Process/panel/PropertiesPanel.vue +++ b/src/components/Process/panel/PropertiesPanel.vue @@ -15,15 +15,37 @@ </div> <el-dialog :visible.sync="propertyFormModelVisible" title="灞炴�ч厤缃�" width="600px" @close="closeProperty" append-to-body :destroy-on-close="true" :close-on-click-modal="false"> - <div v-for="item in canConfigPropertyList" style="margin-bottom: 20px"> - <div v-if="item.vueType === 'switch'"> - <el-switch + <div v-for="item in canConfigPropertyList" style="margin-bottom: 20px; display: flex; align-items: center;"> + <!-- Name --> + <span style="flex: 0 0 100px; text-align: right; margin-right: 20px;">{{ item.name }}</span> + <!-- 缁勪欢 --> + <div > + <!-- Switch --> + <div v-if="item.vueType === 'switch'"> + <el-switch v-model="item.value" - :inactive-text="item.name" @change="(val) => item.method(item.name, val === true ? '鏄�' : '鍚�')" active-color="#13ce66" - inactive-color="#ff4949"> - </el-switch> + inactive-color="#ff4949" + > + </el-switch> + </div> + <!-- Select --> + <div v-if="item.vueType === 'select'"> + <el-select + v-model="item.value" + @change="(val) => item.method(item.name, val)" + placeholder="璇烽�夋嫨" + > + <el-option + v-for="option in item.options" + :key="option.value" + :label="option.label" + :value="option.value" + > + </el-option> + </el-select> + </div> </div> </div> <!-- <el-form :model="propertyForm" label-width="80px" size="mini" ref="attributeFormRef" @submit.native.prevent>--> @@ -63,7 +85,6 @@ this.propertyForm.name = name this.propertyForm.value = value this.saveAttribute() - this.resetList() } }, { @@ -74,7 +95,6 @@ this.propertyForm.name = name this.propertyForm.value = value this.saveAttribute() - this.resetList() } }, { @@ -85,7 +105,32 @@ this.propertyForm.name = name this.propertyForm.value = value this.saveAttribute() - this.resetList() + } + }, + { + name: '鏄惁鍏佽鎸傝捣', + value: false, + vueType: 'switch', + method: (name, value) => { + this.propertyForm.name = name + this.propertyForm.value = value + this.saveAttribute() + } + }, + { + name: '椤圭洰闃舵', + value: null, + vueType: 'select', + options: [ + {label: '鍌ㄥ瑙勫垝闃舵',value: '鍌ㄥ瑙勫垝闃舵'}, + {label: '椤圭洰鍓嶆湡闃舵',value: '椤圭洰鍓嶆湡闃舵'}, + {label: '瀹炴柦闃舵',value: '瀹炴柦闃舵'}, + {label: '绔e伐鎶曠敤闃舵',value: '绔e伐鎶曠敤闃舵'} + ], + method: (name, value) => { + this.propertyForm.name = name + this.propertyForm.value = value + this.saveAttribute() } } ], // 鍙互閰嶇疆鐨勫睘鎬у垪琛� @@ -109,7 +154,7 @@ methods: { closeProperty() { this.propertyFormModelVisible = false - this.resetList() + // this.resetList() }, resetList() { this.canConfigPropertyList = [ @@ -156,16 +201,23 @@ return ex.$type === `flowable:Properties`; }) ?? []; // 淇濆瓨鎵�鏈夌殑 鎵╁睍灞炴�у瓧娈� - this.bpmnElementPropertyList = this.bpmnElementProperties.reduce((pre, current) => pre.concat(current.values), []); - + this.bpmnElementPropertyList = this.bpmnElementProperties.reduce((pre, current) => { + // 妫�鏌� current.values 鏄惁鏄暟缁勶紝濡傛灉涓嶆槸鍒欎娇鐢ㄧ┖鏁扮粍 + const values = current.values ? current.values : []; + return pre.concat(values); + }, []); + console.log("bpmnElementProperties",this.bpmnElementProperties) // 鍥炴樉 this.canConfigPropertyList.forEach(item => { const find = this.bpmnElementPropertyList.find(el => el.name === item.name); if (find) { if (item.vueType === 'switch') { item.value = find.value === '鏄�' ? true : false + }else if (item.vueType === 'select') { + item.value = find.value } - + } else { + item.value = null } }) this.elementPropertyList = JSON.parse(JSON.stringify(this.bpmnElementPropertyList ?? [])); -- Gitblit v1.8.0