From beca7bbfc604f5c9c918d359b1fb6f30d1af729b Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Tue, 31 Mar 2026 09:54:39 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=B3=E9=97=AD=E5=B9=B6=E5=AE=8C=E6=88=90?= =?UTF-8?q?=E5=8C=BB=E5=AD=A6=E5=AE=A1=E6=A0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/InspectionController.cs | 13 ++++++++++-- IRaCIS.Core.API/IRaCIS.Core.API.xml | 2 +- .../IRaCIS.Core.Application.xml | 15 +++++++++++++ .../Reading/Dto/ReadingMedicalReviewDto.cs | 21 +++++++++++++++++++ .../Interface/IReadingMedicalReviewService.cs | 2 ++ 5 files changed, 50 insertions(+), 3 deletions(-) diff --git a/IRaCIS.Core.API/Controllers/InspectionController.cs b/IRaCIS.Core.API/Controllers/InspectionController.cs index 771c08514..1c6cc1f3a 100644 --- a/IRaCIS.Core.API/Controllers/InspectionController.cs +++ b/IRaCIS.Core.API/Controllers/InspectionController.cs @@ -155,10 +155,19 @@ namespace IRaCIS.Core.API.Controllers [TrialGlobalLimit("AfterStopCannNotOpt")] [UnitOfWork] - public async Task FinishMedicalReview(DataInspectionDto opt) + public async Task FinishMedicalReview(DataInspectionDto opt) { var singid = await _inspectionService.RecordSing(opt.SignInfo); - var result = await _readingMedicalReviewService.FinishMedicalReview(opt.Data); + + await _readingMedicalReviewService.ClosedMedicalReviewDialog(new ClosedMedicalReviewDialogInDto() { + DialogCloseReason=opt.Data.DialogCloseReason, + IsClosedDialog=opt.Data.IsClosedDialog, + MedicalDialogCloseEnum=opt.Data.MedicalDialogCloseEnum, + TaskMedicalReviewId=opt.Data.TaskMedicalReviewId + }); + var result = await _readingMedicalReviewService.FinishMedicalReview(new FinishMedicalReviewInDto() { + TaskMedicalReviewId=opt.Data.TaskMedicalReviewId + }); await _inspectionService.CompletedSign(singid, result); return result; } diff --git a/IRaCIS.Core.API/IRaCIS.Core.API.xml b/IRaCIS.Core.API/IRaCIS.Core.API.xml index 62deac025..16f69915e 100644 --- a/IRaCIS.Core.API/IRaCIS.Core.API.xml +++ b/IRaCIS.Core.API/IRaCIS.Core.API.xml @@ -136,7 +136,7 @@ - + 医学审核完成 diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 7a97525cc..7e04a7df0 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -10935,6 +10935,21 @@ IR阅片页面是否可以查看既往任务结果 + + + 是否关闭 + + + + + 医学审核对话关闭原因 + + + + + 对话关闭原因 + + trials:medicalFeedback:message:msg1 diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs index ef361d1ea..ad8345656 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs @@ -203,6 +203,27 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public Guid TaskMedicalReviewId { get; set; } } + public class CloseAndFinishMedicalReview + { + public Guid TaskMedicalReviewId { get; set; } + + + /// + /// 是否关闭 + /// + public bool IsClosedDialog { get; set; } + + /// + /// 医学审核对话关闭原因 + /// + public MedicalDialogClose MedicalDialogCloseEnum { get; set; } + + /// + /// 对话关闭原因 + /// + public string DialogCloseReason { get; set; } = string.Empty; + } + public class JointMedicalReviewI18n { /// diff --git a/IRaCIS.Core.Application/Service/Reading/Interface/IReadingMedicalReviewService.cs b/IRaCIS.Core.Application/Service/Reading/Interface/IReadingMedicalReviewService.cs index 732026ace..a7a8e6099 100644 --- a/IRaCIS.Core.Application/Service/Reading/Interface/IReadingMedicalReviewService.cs +++ b/IRaCIS.Core.Application/Service/Reading/Interface/IReadingMedicalReviewService.cs @@ -9,5 +9,7 @@ namespace IRaCIS.Core.Application.Contracts { Task FinishMedicalReview(FinishMedicalReviewInDto inDto); + Task ClosedMedicalReviewDialog(ClosedMedicalReviewDialogInDto inDto); + } } \ No newline at end of file