diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs index 198860523..e7c9853c9 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs @@ -184,7 +184,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public Guid TaskMedicalReviewId { get; set; } } - public class ApplyReReadingInDto: SendMedicalReviewDialogInDto + public class ApplyReReadingInDto { public Guid TrialId { get; set; } @@ -195,10 +195,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public string RequestReReadingReason { get; set; } = string.Empty; - } - public class SendMedicalReviewDialogInDto - { public Guid TaskMedicalReviewId { get; set; } public string Content { get; set; } @@ -208,6 +205,26 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto /// public MedicalReviewDoctorUserIdea DoctorUserIdeaEnum { get; set; } = MedicalReviewDoctorUserIdea.defalut; + + /// + /// 不同意重阅原因 + /// + public string DisagreeReason { get; set; } = string.Empty; + + /// + /// 是否申请重阅 + /// + public bool? IsApplyHeavyReading { get; set; } + + } + + public class SendMedicalReviewDialogInDto + { + public Guid TaskMedicalReviewId { get; set; } + + public string Content { get; set; } + + /// /// 是否有问题 /// @@ -223,15 +240,6 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto /// public AuditAdvice AuditAdviceEnum { get; set; } = AuditAdvice.None; - /// - /// 不同意重阅原因 - /// - public string DisagreeReason { get; set; } = string.Empty; - - /// - /// 是否申请重阅 - /// - public bool? IsApplyHeavyReading { get; set; } } public class SaveMedicineQuestionInDto diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs index ff0b88759..85e75b34f 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs @@ -345,9 +345,7 @@ namespace IRaCIS.Core.Application.Service UserTypeEnumInt = _userInfo.UserTypeEnumInt, VisitTaskId = visitTaskId, AuditAdviceEnum=inDto.AuditAdviceEnum, - DisagreeReason=inDto.DisagreeReason, - DoctorUserIdeaEnum=inDto.DoctorUserIdeaEnum, - IsApplyHeavyReading=inDto.IsApplyHeavyReading, + IsHaveQuestion=inDto.IsHaveQuestion, Questioning=inDto.Questioning, }; @@ -366,26 +364,40 @@ namespace IRaCIS.Core.Application.Service public async Task ApplyReReading(ApplyReReadingInDto inDto) { var visitTaskId = await _taskMedicalReviewRepository.Where(x => x.Id == inDto.TaskMedicalReviewId).Select(x => x.VisitTaskId).FirstOrDefaultAsync(); - await _visitTaskService.ApplyReReading(new ApplyReReadingCommand() + if (inDto.IsApplyHeavyReading??false) { - IsCopyOrigenalForms = inDto.IsCopyOrigenalForms, - RequestReReadingReason = inDto.RequestReReadingReason, - RequestReReadingType = inDto.RequestReReadingType, - TrialId = inDto.TrialId, - TaskIdList = new List() - { - visitTaskId - + await _visitTaskService.ApplyReReading(new ApplyReReadingCommand() + { + IsCopyOrigenalForms = inDto.IsCopyOrigenalForms, + RequestReReadingReason = inDto.RequestReReadingReason, + RequestReReadingType = inDto.RequestReReadingType, + TrialId = inDto.TrialId, + TaskIdList = new List() + { + visitTaskId + + } + }); + await _taskMedicalReviewRepository.BatchUpdateNoTrackingAsync(x => !x.IsClosedDialog && x.Id == inDto.TaskMedicalReviewId, x => new TaskMedicalReview() + { + IsClosedDialog = true + }); } - }); - - #region 重阅修改医学审核状态 - await _taskMedicalReviewRepository.BatchUpdateNoTrackingAsync(x => !x.IsClosedDialog && x.Id==inDto.TaskMedicalReviewId, x => new TaskMedicalReview() + ReadingMedicalReviewDialog dialog = new ReadingMedicalReviewDialog() { - IsClosedDialog = true - }); - #endregion - return await this.SendMedicalReviewDialog(inDto); + TaskMedicalReviewId = inDto.TaskMedicalReviewId, + UserTypeShortName = _userInfo.UserTypeShortName, + Content = inDto.Content, + UserTypeEnumInt = _userInfo.UserTypeEnumInt, + VisitTaskId = visitTaskId, + DisagreeReason = inDto.DisagreeReason, + DoctorUserIdeaEnum = inDto.DoctorUserIdeaEnum, + IsApplyHeavyReading = inDto.IsApplyHeavyReading, + }; + + await _readingMedicalReviewDialogRepository.AddAsync(dialog); + var result = await _readingMedicalReviewDialogRepository.SaveChangesAsync(); + return ResponseOutput.Result(result); }