fuliqi
2025-01-20 e7f487351d23e038034a245a448eb4384755f72a
超时监听器时间格式
1个文件已修改
23 ■■■■■ 已修改文件
src/components/Process/panel/taskListener.vue 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/Process/panel/taskListener.vue
@@ -418,6 +418,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,2})-(\d{1,2})$/;
        for (let i = 0; i < this.listenerForm.fields.length; i++) {
          if (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);