From 7015cc59316ba711978387cb1b63c55bf782c071 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 03 三月 2025 01:10:25 +0800
Subject: [PATCH] 判断是项目还是工程
---
src/components/Process/panel/taskListener.vue | 49 +++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 45 insertions(+), 4 deletions(-)
diff --git a/src/components/Process/panel/taskListener.vue b/src/components/Process/panel/taskListener.vue
index bdc3aa0..c46c01c 100644
--- a/src/components/Process/panel/taskListener.vue
+++ b/src/components/Process/panel/taskListener.vue
@@ -184,8 +184,8 @@
</el-drawer>
<!-- 娉ㄥ叆瑗挎 缂栬緫/鍒涘缓 閮ㄥ垎 -->
- <el-dialog title="瀛楁閰嶇疆" :visible.sync="listenerFieldFormModelVisible" width="600px" append-to-body destroy-on-close>
- <el-form :model="listenerFieldForm" label-width="96px" ref="listenerFieldFormRef" style="height: 136px" @submit.native.prevent>
+ <el-dialog title="瀛楁閰嶇疆" :visible.sync="listenerFieldFormModelVisible" :close-on-click-modal="false" width="600px" append-to-body destroy-on-close>
+ <el-form :model="listenerFieldForm" label-width="96px" ref="listenerFieldFormRef" @submit.native.prevent>
<el-form-item label="瀛楁鍚嶇О锛�" prop="name" :rules="{ required: true, trigger: ['blur', 'change'] }">
<el-input v-model="listenerFieldForm.name" clearable />
</el-form-item>
@@ -202,6 +202,11 @@
:rules="{ required: true, trigger: ['blur', 'change'] }"
>
<el-input v-model="listenerFieldForm.string" clearable />
+ <el-alert
+ :closable="false"
+ title="璧嬬爜鏃堕棿鏍煎紡涓猴細澶�-灏忔椂锛屼緥濡傦細涓�澶╅浂3灏忔椂搴旈厤缃负锛�1-3"
+ type="info">
+ </el-alert>
</el-form-item>
<el-form-item
v-if="listenerFieldForm.fieldType === 'expression'"
@@ -341,6 +346,7 @@
// 鎵撳紑 鐩戝惉鍣ㄨ鎯� 渚ц竟鏍�
openListenerForm(listener, index) {
+ this.resetListenersList();
if (listener) {
this.listenerForm = this.initListenerForm(listener);
this.editingListenerIndex = index;
@@ -417,6 +423,29 @@
async saveListenerConfig() {
let validateStatus = await this.$refs["listenerFormRef"].validate();
if (!validateStatus) return; // 楠岃瘉涓嶉�氳繃鐩存帴杩斿洖
+ console.log('鐩戝惉鍣ㄥ弬鏁�',this.listenerForm)
+ //鏍¢獙瓒呮椂鐩戝惉鍣ㄥ弬鏁�
+ if (this.listenerForm.class === 'com.ycl.listener.flowable.FlowableOverTimeListener') {
+ // 0-0 鏍煎紡
+ const regex = /^(\d{1,3})-(\d{1,2})$/;
+ for (let i = 0; i < this.listenerForm.fields.length; i++) {
+ if (this.listenerForm.fields[i].name === '绾㈢爜鏃堕暱' || this.listenerForm.fields[i].name === '榛勭爜鏃堕暱' || this.listenerForm.fields[i].name === '鍔炵悊鏈熼檺') {
+ const match = this.listenerForm.fields[i].string.match(regex);
+ if (match) {
+ const hours1 = parseInt(match[1], 10);
+ const hours2 = parseInt(match[2], 10);
+ // 妫�鏌ュ皬鏃舵暟鏄惁鍦ㄥ悎鐞嗚寖鍥村唴锛屽苟涓旂浜屼釜灏忔椂鏁板皬浜庣瓑浜�24
+ if (hours1 < 0 || hours2 > 24) {
+ this.$message.error(this.listenerForm.fields[i].name + '灏忔椂鏁颁笉鍚堢悊');
+ return;
+ }
+ } else {
+ this.$message.error(this.listenerForm.fields[i].name + '鏃堕棿鏍煎紡涓嶆纭�');
+ return;
+ }
+ }
+ }
+ }
const listenerObject = createListenerObject(this.modelerStore.moddle, this.listenerForm, true, "flowable");
if (this.editingListenerIndex === -1) {
this.bpmnElementListeners.push(listenerObject);
@@ -435,11 +464,18 @@
},
initListenerType(listener) {
+ console.log("鐩戝惉鍣╨istener",listener)
let listenerType;
if (listener.class) listenerType = "classListener";
if (listener.expression) listenerType = "expressionListener";
if (listener.delegateExpression) listenerType = "delegateExpressionListener";
if (listener.script) listenerType = "scriptListener";
+ //鐩戝惉鍣ㄥ瓧娈礲ug淇
+ if (listener && listener.fields) {
+ listener.fields.forEach(field => {
+ field.fieldType = field.string ? "string" : "expression";
+ });
+ }
return {
...JSON.parse(JSON.stringify(listener)),
...(listener.script ?? {}),
@@ -469,7 +505,6 @@
self.eventDefinitionType = key.replace("time", "").toLowerCase();
}
}
- console.log(k);
self.eventTimeDefinitions = listener.eventDefinitions[0][k].body;
}
}
@@ -499,7 +534,11 @@
saveSystemListener() {
if (this.checkedListenerData.length > 0) {
this.checkedListenerData.forEach(value => {
- // 淇濆瓨鍏朵粬閰嶇疆
+ value.fields.forEach(field => {
+ if (field.name === '寮�濮嬭鏃惰妭鐐�') {
+ field.string = this.modelerStore.element.id;
+ }
+ });
const listenerObject = createSystemListenerObject(this.modelerStore.moddle, value, true, "flowable");
this.bpmnElementListeners.push(listenerObject);
this.elementListenersList.push(changeListenerObject(value));
@@ -513,6 +552,8 @@
this.listenerSystemChecked = true;
// 闅愯棌渚ц竟鏍�
this.listenerSystemVisible = false;
+ //瑙f瀽娉ㄥ叆瀛楁娣诲姞鍒板綋鍓嶈〃鍗�
+ this.resetListenersList();
}
}
}
--
Gitblit v1.8.0