From ae6b4c68921f1d414f5af02b190e2d492fef92c6 Mon Sep 17 00:00:00 2001 From: he <10978375@qq.com> Date: Thu, 7 Jul 2022 15:15:50 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=80=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Allocation/Interface/IVisitTaskService.cs | 16 ++++++++ .../Service/Allocation/VisitTaskService.cs | 9 +---- .../Reading/Dto/ReadingMedicalReviewDto.cs | 14 +++++++ .../Reading/ReadingMedicalReviewService.cs | 38 ++++++++++++++++++- 4 files changed, 68 insertions(+), 9 deletions(-) create mode 100644 IRaCIS.Core.Application/Service/Allocation/Interface/IVisitTaskService.cs diff --git a/IRaCIS.Core.Application/Service/Allocation/Interface/IVisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/Interface/IVisitTaskService.cs new file mode 100644 index 000000000..5050515cb --- /dev/null +++ b/IRaCIS.Core.Application/Service/Allocation/Interface/IVisitTaskService.cs @@ -0,0 +1,16 @@ +//-------------------------------------------------------------------- +// 此代码由T4模板自动生成 byzhouhang 20210918 +// 生成时间 2022-06-07 14:10:49 +// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。 +//-------------------------------------------------------------------- + + +using IRaCIS.Core.Application.ViewModel; + +namespace IRaCIS.Core.Application.Service +{ + public interface IVisitTaskService + { + Task ApplyReReading(ApplyReReadingCommand applyReReadingCommand); + } +} \ No newline at end of file diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs index f9bedc8bd..097601989 100644 --- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs @@ -20,7 +20,7 @@ namespace IRaCIS.Core.Application.Service /// 访视读片任务 /// [ApiExplorerSettings(GroupName = "Trial")] - public class VisitTaskService : BaseService + public class VisitTaskService : BaseService, IVisitTaskService { private readonly IRepository _visitTaskRepository; @@ -990,12 +990,7 @@ namespace IRaCIS.Core.Application.Service //产生新的任务 - #region 重阅修改医学审核状态 - await _taskMedicalReviewRepository.BatchUpdateNoTrackingAsync(x => x.IsClosedDialog && applyReReadingCommand.TaskIdList.Contains(x.VisitTaskId), x => new TaskMedicalReview() - { - IsClosedDialog = true - }); - #endregion + await _visitTaskRepository.SaveChangesAsync(); diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs index 52bbac44d..783c60127 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs @@ -183,6 +183,20 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto [NotDefault] public Guid TaskMedicalReviewId { get; set; } } + + public class ApplyReReadingInDto: SendMedicalReviewDialogInDto + { + + public Guid TrialId { get; set; } + + public bool IsCopyOrigenalForms { get; set; } + + public RequestReReadingType RequestReReadingType { get; set; } + + public string RequestReReadingReason { get; set; } = string.Empty; + + } + public class SendMedicalReviewDialogInDto { public Guid TaskMedicalReviewId { get; set; } diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs index ea1f07f94..3b71921c7 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs @@ -24,6 +24,7 @@ namespace IRaCIS.Core.Application.Service private readonly IRepository _trialRepository; private readonly IRepository _visitTaskRepository; private readonly IRepository _userTaskRepository; + private readonly IVisitTaskService _visitTaskService; private readonly IRepository _taskMedicalReviewRepository; private readonly IRepository _readingMedicalReviewDialogRepository; private readonly IRepository _readingMedicineQuestionAnswerRepository; @@ -33,9 +34,10 @@ namespace IRaCIS.Core.Application.Service IRepository readingMedicineTrialQuestionRepository, IRepository trialRepository, IRepository visitTaskRepository, - IRepository userTaskRepository, + IRepository userTaskRepository, + IVisitTaskService visitTaskService, IRepository taskMedicalReviewRepository, - IRepository readingMedicalReviewDialogRepository, + IRepository readingMedicalReviewDialogRepository, IRepository readingMedicineQuestionAnswerRepository, IRepository readingMedicineSystemQuestionRepository ) @@ -44,6 +46,7 @@ namespace IRaCIS.Core.Application.Service this._trialRepository = trialRepository; this._visitTaskRepository = visitTaskRepository; this._userTaskRepository = userTaskRepository; + this._visitTaskService = visitTaskService; this._taskMedicalReviewRepository = taskMedicalReviewRepository; this._readingMedicalReviewDialogRepository = readingMedicalReviewDialogRepository; this._readingMedicineQuestionAnswerRepository = readingMedicineQuestionAnswerRepository; @@ -355,6 +358,37 @@ namespace IRaCIS.Core.Application.Service return ResponseOutput.Result(result); } + /// + /// IR 申请重阅 + /// + /// + /// + 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() + { + IsCopyOrigenalForms = inDto.IsCopyOrigenalForms, + RequestReReadingReason = inDto.RequestReReadingReason, + RequestReReadingType = inDto.RequestReReadingType, + TrialId = inDto.TrialId, + TaskIdList = new List() + { + visitTaskId + + } + }); + + #region 重阅修改医学审核状态 + await _taskMedicalReviewRepository.BatchUpdateNoTrackingAsync(x => !x.IsClosedDialog && x.Id==inDto.TaskMedicalReviewId, x => new TaskMedicalReview() + { + IsClosedDialog = true + }); + #endregion + return await this.SendMedicalReviewDialog(inDto); + } + + /// /// 获取医学审核对话 ///