From ff17e52bc26e3d0d15fc098f926a8e688d569ca0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=B4=AA=E6=B4=AA?= <2498601771@qq.com> Date: Fri, 12 Jan 2024 17:22:25 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E4=BA=8B=E4=BB=B6=E7=AD=96=E7=95=A5=E7=95=8C=E9=9D=A2=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E6=97=B6=EF=BC=8C=E7=AC=AC=E4=B8=89=E6=AD=A5=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=E6=80=BB=E8=A2=AB=E8=A7=A6=E5=8F=91=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../table/detection/GeneralSettings.vue | 2 + .../table/detection/RuleDefinition.vue | 5 + .../detectionPolicies/PolicyForm.vue | 114 ++++++++++++------ 3 files changed, 81 insertions(+), 40 deletions(-) diff --git a/src/components/table/detection/GeneralSettings.vue b/src/components/table/detection/GeneralSettings.vue index 351daafd..1d37d834 100644 --- a/src/components/table/detection/GeneralSettings.vue +++ b/src/components/table/detection/GeneralSettings.vue @@ -197,6 +197,8 @@ export default { if (this.settingObj.ruleType && this.settingObj.category && this.settingObj.eventType && this.settingObj.name) { this.settingObj.settingNoContinue = true this.onContinue() + } else { + this.$emit('setSettingForm', this.settingObj) } }, /** 点击继续,进行第二步 */ diff --git a/src/components/table/detection/RuleDefinition.vue b/src/components/table/detection/RuleDefinition.vue index d4010f98..f21ff90f 100644 --- a/src/components/table/detection/RuleDefinition.vue +++ b/src/components/table/detection/RuleDefinition.vue @@ -507,6 +507,8 @@ export default { this.$refs.form2.validate(valid2 => { if (valid2) { this.getConditions() + this.indicatorRuleObj.editFlag = false + this.indicatorRuleObj.saveFlag = true this.$emit('setRuleObj', this.thresholdRuleObj) } }) @@ -534,6 +536,9 @@ export default { if (this.indicatorRuleObj.dataSource && this.indicatorRuleObj.knowledgeId && this.indicatorRuleObj.level) { this.indicatorRuleObj.ruleNoContinue = true this.onContinue() + } else { + this.indicatorRuleObj.editFlag = true + this.$emit('setRuleObj', this.indicatorRuleObj) } } } diff --git a/src/views/detections/detectionPolicies/PolicyForm.vue b/src/views/detections/detectionPolicies/PolicyForm.vue index d41c9007..733392b1 100644 --- a/src/views/detections/detectionPolicies/PolicyForm.vue +++ b/src/views/detections/detectionPolicies/PolicyForm.vue @@ -18,7 +18,7 @@
- +
@@ -35,7 +35,7 @@
- +
@@ -57,16 +57,16 @@
At least
- +
times within
- + - +
With the counter resetting after no activity for
- + - + - + - + 内至少发生 - +
@@ -121,10 +121,10 @@
若连续 - + - + { - if (this.settingObj.settingNoContinue || this.ruleObj.settingNoContinue || !valid) { - this.$confirm(this.$t('tip.leavePage'), { - confirmButtonText: this.$t('tip.confirm'), - cancelButtonText: this.$t('overall.cancel'), - message: this.$t('tip.leavePageTips'), - title: this.$t('tip.leavePage'), - type: 'warning', - iconClass: 'width:0px;height:0px;', - customClass: 'del-model' - }).then(() => { - this.$router.push({ - path: '/detection/policy', - query: queryInfo - }) - }).catch(() => {}) - } else { - this.$router.push({ - path: '/detection/policy', - query: queryInfo + + if (this.settingObj.editFlag || this.ruleObj.editFlag || this.triggerObj.editFlag) { + // if (this.settingObj.editFlag) { + // this.isCompleteSetting = false + // this.handleFormError('1') + // } + // if (this.ruleObj.editFlag) { + // this.isCompleteRule = false + // this.handleFormError('2') + // } + if (this.triggerObj.editFlag) { + this.$refs.form3.validate(valid => { + if (!valid) { + this.confirmMessage(queryInfo) + } else { + this.$router.push({ + path: '/detection/policy', + query: queryInfo + }) + } }) + } else { + this.confirmMessage(queryInfo) } - }) + } else { + this.$router.push({ + path: '/detection/policy', + query: queryInfo + }) + } + }, + confirmMessage (queryInfo) { + this.$confirm(this.$t('tip.leavePage'), { + confirmButtonText: this.$t('tip.confirm'), + cancelButtonText: this.$t('overall.cancel'), + message: this.$t('tip.leavePageTips'), + title: this.$t('tip.leavePage'), + type: 'warning', + iconClass: 'width:0px;height:0px;', + customClass: 'del-model' + }).then(() => { + this.$router.push({ + path: '/detection/policy', + query: queryInfo + }) + }).catch(() => {}) + }, + resetEditFlag () { + this.triggerObj.editFlag = true } } }