From e2b105cf39f90c781ba6ce180c9c821adb52475f Mon Sep 17 00:00:00 2001 From: caiyiling <1321909229@qq.com> Date: Mon, 17 Aug 2026 17:18:54 +0800 Subject: [PATCH] =?UTF-8?q?=E9=98=85=E7=89=87=E8=A7=84=E5=88=99=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reading-unit/components/ArbitrationRules.vue | 16 +++++++++++++++- .../components/ArbitrationRulesByVisit.vue | 10 ++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/views/trials/trials-panel/setting/reading-unit/components/ArbitrationRules.vue b/src/views/trials/trials-panel/setting/reading-unit/components/ArbitrationRules.vue index 91f8fc5d..ca107947 100644 --- a/src/views/trials/trials-panel/setting/reading-unit/components/ArbitrationRules.vue +++ b/src/views/trials/trials-panel/setting/reading-unit/components/ArbitrationRules.vue @@ -396,6 +396,10 @@ export default { ], }, judgeRuleEnum: -1, + savedJudgyInfo: { + JudgeModeEnum: null, + JudgeRuleEnum: null, + }, } }, watch: { @@ -408,6 +412,15 @@ export default { await this.initData() }, methods: { + resetJudgeTypeRelatedFields(question = {}) { + this.$set(question, 'AnswerGroup2List', []) + this.$set(question, 'AnswerGroupList', []) + this.$set(question, 'grouping', []) + this.$set(question, 'groupingA', []) + this.$set(question, 'groupingB', []) + this.$set(question, 'JudgeDifferenceValue', 0) + this.$set(question, 'JudgeDifferenceType', 0) + }, async initData() { await this.getTrialJudgyInfo() if (this.judgeRuleEnum !== 1) { @@ -427,9 +440,10 @@ export default { } }, JudgeTypeChange(value, index) { + this.resetJudgeTypeRelatedFields(this.QuestionList[index]) this.$nextTick(() => { if (value === 4 || value === 5) { - if (this.$refs['JudgeDifferenceValue' + value + index][0]) { + if (this.$refs['JudgeDifferenceValue' + value + index] && this.$refs['JudgeDifferenceValue' + value + index][0]) { this.$refs['JudgeDifferenceValue' + value + index][0].resetFields() // this.QuestionList[index].JudgeDifferenceValue = 0; } diff --git a/src/views/trials/trials-panel/setting/reading-unit/components/ArbitrationRulesByVisit.vue b/src/views/trials/trials-panel/setting/reading-unit/components/ArbitrationRulesByVisit.vue index c398ccf7..a493811d 100644 --- a/src/views/trials/trials-panel/setting/reading-unit/components/ArbitrationRulesByVisit.vue +++ b/src/views/trials/trials-panel/setting/reading-unit/components/ArbitrationRulesByVisit.vue @@ -366,6 +366,15 @@ export default { this.activeVisitTab = '' await this.getVisitPlanOptions() }, + resetVisitJudgeTypeRelatedFields(question = {}) { + this.$set(question, 'AnswerGroup2List', []) + this.$set(question, 'AnswerGroupList', []) + this.$set(question, 'grouping', []) + this.$set(question, 'groupingA', []) + this.$set(question, 'groupingB', []) + this.$set(question, 'JudgeDifferenceValue', null) + this.$set(question, 'JudgeDifferenceType', 0) + }, normalizeQuestionList(questionList = []) { return questionList.map((item) => ({ ...item, @@ -448,6 +457,7 @@ export default { } }, visitJudgeTypeChange(value, index, visitKey) { + this.resetVisitJudgeTypeRelatedFields(this.questionListMap[visitKey][index]) this.$nextTick(() => { if (value === 4 || value === 5) { const refName = `JudgeDifferenceValue${value}_${visitKey}_${index}`