From db3f7b4cde315d9fea966917d7c30018bd243762 Mon Sep 17 00:00:00 2001 From: wangxiaoshuang <825034831@qq.com> Date: Wed, 20 May 2026 09:12:19 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E5=88=86=E5=89=B2=E6=A0=87=E8=AE=B0?= =?UTF-8?q?=E4=B8=8E=E8=A1=A8=E6=A0=BC=E9=97=AE=E9=A2=98=E8=BF=9B=E8=A1=8C?= =?UTF-8?q?=E7=BB=91=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/customize/QuestionFormItem.vue | 4 ++-- .../dicoms3D/components/customize/QuestionList.vue | 14 ++++++++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue index d5dd4d56..8d53f335 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue @@ -647,7 +647,7 @@ export default { let res = await submitTableQuestion(params) if (res.IsSuccess) { this.QuestionsForm.RowId = res.Result.RowId - obj.rowId = res.Result.RowId + // obj.rowId = res.Result.RowId data.RowId = res.Result.RowId this.AnswersList.push(this.QuestionsForm) this.$emit('setFormItemData', { key: this.question.Id, val: this.AnswersList, question: this.question }) @@ -1375,7 +1375,7 @@ export default { // 移除问题标记值 this.$set(this.questionForm, obj.question.Id, null) } - if (obj.question.IsTableQuestion && obj.operateStateEnum === 4) { + if (obj.question.IsTableQuestion && (obj.operateStateEnum === 4 || obj.operateStateEnum === 24)) { // 移除表格问题标记 this.$set(this.QuestionsForm, obj.question.Id, null) } else if (obj.question.IsTableQuestion && obj.operateStateEnum === 7 && this.question.Id === obj.question.ParentQsId) { diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue index 6e791fdd..6178855f 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue @@ -545,7 +545,16 @@ export default { const { question } = obj let confirm = await this.$confirm(this.$t('segment:confirm:sureDelete')) if (!confirm) return false - this.$set(this.questionForm, question.Id, '') + if (this.isTableQuestion) { + this.questionForm[question.ParentQsId].some((item, index) => { + if (item.RowId === question.RowId) { + this.$set(this.questionForm[question.ParentQsId][index], question.Id, '') + } + return item.RowId === question.RowId + }) + } else { + this.$set(this.questionForm, question.Id, '') + } let o = { Answer: '', SegmentId: null, @@ -1555,4 +1564,5 @@ export default { // min-height:400px; // color: #ddd; -// } +// } + From feb94dc83283473b8c678c1d734cf9a4a3bf8690 Mon Sep 17 00:00:00 2001 From: wangxiaoshuang <825034831@qq.com> Date: Wed, 20 May 2026 09:31:13 +0800 Subject: [PATCH 2/5] 1 --- .../reading/dicoms3D/components/customize/QuestionList.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue index 6178855f..38c3ce25 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue @@ -554,7 +554,7 @@ export default { }) } else { this.$set(this.questionForm, question.Id, '') - } + } let o = { Answer: '', SegmentId: null, From 36d5661044dcdbb6c40e1ae5701ba1dfa74bed22 Mon Sep 17 00:00:00 2001 From: wangxiaoshuang <825034831@qq.com> Date: Wed, 20 May 2026 14:58:38 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E5=88=86=E5=89=B2=E6=A0=87=E8=AE=B0?= =?UTF-8?q?=E4=B8=8E=E8=A1=A8=E6=A0=BC=E9=97=AE=E9=A2=98=E7=BB=91=E5=AE=9A?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../trials-panel/reading/dicoms3D/components/SegmentForm.vue | 2 +- .../dicoms3D/components/customize/QuestionTableFormItem.vue | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/SegmentForm.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/SegmentForm.vue index 3276bb1a..f7e1593b 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/SegmentForm.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/SegmentForm.vue @@ -127,7 +127,7 @@ export default { } if (this.visitInfo.operateStateEnum === 22) { let o = {} - if (this.isTableQuestion) { + if (this.visitInfo.isTableQuestion) { o.TableQuestionId = this.visitInfo.operateQuestionId o.RowId = this.visitInfo.operateRowId } else { diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue index 10a48e54..26edcd31 100644 --- a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue +++ b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue @@ -416,7 +416,7 @@ export default { }, validatorNumberInput(rule, value, callback) { let reg = new RegExp(/^(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?|\.\d+)|NE)$/, 'g') - if (value === '') { + if (value === '' || value == null) { callback(); } else { if (!reg.test(value)) { From c65ad92d393317bb2210d1d35a69a7ca1f281995 Mon Sep 17 00:00:00 2001 From: wangxiaoshuang <825034831@qq.com> Date: Wed, 20 May 2026 17:41:08 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E4=B8=AD=E5=BF=83=E8=B0=83=E7=A0=94?= =?UTF-8?q?=E8=AE=BE=E5=A4=87=E8=B0=83=E7=A0=94=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../research/components/EquipmentForm.vue | 137 ++++++++++++---- .../research/components/EquipmentList.vue | 153 ++++++++++-------- .../research/components/ResearchForm.vue | 2 +- src/views/research/form.vue | 4 +- .../site-research/components/ImageManual.vue | 112 ++++++++++++- 5 files changed, 301 insertions(+), 107 deletions(-) diff --git a/src/views/research/components/EquipmentForm.vue b/src/views/research/components/EquipmentForm.vue index 676aa37b..73fa0c71 100644 --- a/src/views/research/components/EquipmentForm.vue +++ b/src/views/research/components/EquipmentForm.vue @@ -2,39 +2,101 @@
- - - - - + +
+ + + + + +
- + - - + +
+ + + + + +
- + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+ + + + + + + + + + + + - +
@@ -69,24 +131,35 @@ export default { type: String, default: '' }, - isShowParameters: { - type: Boolean, - default: false + EquipmentControlFieldList: { + type: Array, + default: () => { + return [] + } } }, data() { return { form: { Id: '', - EquipmentTypeId: '', - Parameters: '', - ManufacturerName: '', - ScannerType: '', - Note: '', + EquipmentTypeEnum: null, + OtherEquipmentType: null, + Parameters: null, + Note: null, + ManufacturerType: null, + ManufacturerName: null, + ScannerType: null, + MagneticFieldStrengthType: null, + BodyCoilChannelCount: null, + HasDedicatedPdfFatQuantificationSequence: null, + PdfFatQuantificationSequenceType: null, + OtherSequenceSpecification: null, + HasT2R2Correction: null, + CanFullyExportPdfParameterMapsAndRawDicom: null, TrialSiteSurveyId: '' }, rules: { - EquipmentTypeId: [ + EquipmentTypeEnum: [ { required: true, message: this.$t('trials:researchForm:formRule:select'), trigger: ['blur', 'change'] } ] }, diff --git a/src/views/research/components/EquipmentList.vue b/src/views/research/components/EquipmentList.vue index f27b38b7..7b3d67aa 100644 --- a/src/views/research/components/EquipmentList.vue +++ b/src/views/research/components/EquipmentList.vue @@ -2,63 +2,88 @@
- + {{ $t('common:button:add') }}
- + - + + + - + - + + + - + + + + + + + + + + + + + + + + + + + + + + + + - - + +