From a357fe7ce6f5ac26de56134f151d0f9f0084aaeb Mon Sep 17 00:00:00 2001 From: wangxiaoshuang <825034831@qq.com> Date: Tue, 15 Jul 2025 17:51:42 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B4=A8=E6=8E=A7=E5=A4=8D=E6=A0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../qc-check/components/qualityAssurance.vue | 51 ++++++++++++------- .../visit/qc-check/components/questions.vue | 11 ++-- .../trials-panel/visit/qc-check/index.vue | 2 +- 3 files changed, 42 insertions(+), 22 deletions(-) diff --git a/src/views/trials/trials-panel/visit/qc-check/components/qualityAssurance.vue b/src/views/trials/trials-panel/visit/qc-check/components/qualityAssurance.vue index 7ffd4f19..71ea60ed 100644 --- a/src/views/trials/trials-panel/visit/qc-check/components/qualityAssurance.vue +++ b/src/views/trials/trials-panel/visit/qc-check/components/qualityAssurance.vue @@ -396,7 +396,7 @@

{{ $t('trials:audit:message:noData') }}

- +

{{ $t('trials:audit:title:resetQuestions') }}

@@ -407,13 +407,13 @@ - - + +

{{ $t('trials:audit:title:resetQuestions') }}

+ :current-q-c-enum="currentQCType" :is-audit="isAudit" :SecondReviewTime="item.SecondReviewTime" />
@@ -800,7 +800,7 @@
+ v-if="SecondReviewState > 0" @click="handleResetSave"> {{ $t('trials:audit:button:reviewTask') }} @@ -1052,7 +1052,6 @@ export default { ) } if (type === 'noneDicom') { - console.log(this.selectTableNonedicom) data.NoneDicomStudyIdList = this.selectTableNonedicom.map( (item) => item.Id ) @@ -1169,7 +1168,7 @@ export default { this.loading = true getVisitQCInfo(this.data.Id, this.data.QCProcessEnum, this.currentQCType) .then((res) => { - this.secondReviewList = res.Result.SecondReviewTimeList + this.secondReviewList = res.Result.SecondReviewList if (this.secondReviewList.length > 0) { this.secondReviewActiveName = this.secondReviewList[0].SecondReviewTime if (!this.isAudit) { @@ -1209,7 +1208,8 @@ export default { res.Result.RelationInfo.IsHaveFirstGiveMedicineDate this.loading = false }) - .catch(() => { + .catch((err) => { + console.log(err) this.loading = false }) }, @@ -1220,7 +1220,7 @@ export default { this.trialId, this.data.Id, this.data.QCProcessEnum, - this.currentQCType + this.SecondReviewState > 0 ? 3 : this.currentQCType ) .then((res) => { this.loading = false @@ -1248,12 +1248,20 @@ export default { } var answerList = [] res.forEach((item) => { - var index = this.qCQuestionAnswerList.findIndex( - (v) => v.TrialQCQuestionConfigureId === item.Id - ) - if (index > -1) { + if (this.SecondReviewState <= 0) { + var index = this.qCQuestionAnswerList.findIndex( + (v) => v.TrialQCQuestionConfigureId === item.Id + ) + if (index > -1) { + answerList.push({ + id: this.qCQuestionAnswerList[index].Id, + answer: item.answer, + trialQCQuestionConfigureId: item.Id, + }) + } + } else { answerList.push({ - id: this.qCQuestionAnswerList[index].Id, + id: item.AnswerId, answer: item.answer, trialQCQuestionConfigureId: item.Id, }) @@ -1275,7 +1283,12 @@ export default { this.$t('common:message:savedSuccessfully') ) } - this.getCheckList() + if (this.SecondReviewState <= 0) { + this.getCheckList() + } else { + this.$refs[refKey].getQuestions() + } + resolve(true) } }) @@ -1848,7 +1861,7 @@ export default { data: { TrialId: this.trialId, SubjectVisitId: this.data.Id, - AuditState: this.auditState, + AuditState: this.signCode === 219 ? 1 : this.auditState, IsSecondPass: this.signCode === 219 ? this.IsSecondPass : null }, signInfo: signInfo, @@ -1862,6 +1875,10 @@ export default { this.$message.success(this.$t('common:message:savedSuccessfully')) // this.getQCInfo() this.isAudit = true + if (this.signCode === 219) { + this.$emit('getList') + return this.getQCInfo() + } this.$forceUpdate() getNextIQCQuality({ trialId: this.trialId, diff --git a/src/views/trials/trials-panel/visit/qc-check/components/questions.vue b/src/views/trials/trials-panel/visit/qc-check/components/questions.vue index cdf7b5e2..c6840abd 100644 --- a/src/views/trials/trials-panel/visit/qc-check/components/questions.vue +++ b/src/views/trials/trials-panel/visit/qc-check/components/questions.vue @@ -48,6 +48,7 @@ export default { loading: false, questions: [], questionForm: {}, + AnswerIdObj: {}, isRender: false } }, @@ -68,7 +69,7 @@ export default { trialId: this.trialId || this.$route.query.trialId, subjectVisitId: this.subjectVisitId, qcProcessEnum: this.qcProcessEnum, - currentQCEnum: this.currentQCEnum + currentQCEnum: this.SecondReviewTime ? 3 : this.currentQCEnum } if (this.SecondReviewTime) { param.SecondReviewTime = this.SecondReviewTime @@ -76,6 +77,7 @@ export default { getQCQuestionAnswer(param).then(res => { res.Result.map((v) => { this.$set(this.questionForm, v.Id, v.Answer) + this.$set(this.AnswerIdObj, v.Id, v.AnswerId) if (v.Childrens.length > 0) { this.setChild(v.Childrens) } @@ -84,11 +86,12 @@ export default { this.isRender = true this.loading = false - }).catch(() => { this.loading = false }) + }).catch((err) => { console.log(err); this.loading = false }) }, setChild(obj) { obj.forEach(i => { this.$set(this.questionForm, i.Id, i.Answer) + this.$set(this.AnswerIdObj, i.Id, i.AnswerId) if (i.Childrens && i.Childrens.length > 0) { this.setChild(i.Childrens) } @@ -114,7 +117,7 @@ export default { } else { var answers = [] for (const k in this.questionForm) { - answers.push({ Id: k, answer: this.questionForm[k] }) + answers.push({ Id: k, answer: this.questionForm[k], AnswerId: this.AnswerIdObj[k] }) } resolve(answers) // 设置当前节点的Answer @@ -132,7 +135,7 @@ export default { return new Promise((resolve, reject) => { var answers = [] for (const k in this.questionForm) { - answers.push({ Id: k, answer: this.questionForm[k] }) + answers.push({ Id: k, answer: this.questionForm[k], AnswerId: this.AnswerIdObj[k] }) } resolve(answers) }) diff --git a/src/views/trials/trials-panel/visit/qc-check/index.vue b/src/views/trials/trials-panel/visit/qc-check/index.vue index 287e3502..5e605743 100644 --- a/src/views/trials/trials-panel/visit/qc-check/index.vue +++ b/src/views/trials/trials-panel/visit/qc-check/index.vue @@ -341,7 +341,7 @@