From b58ab5e69257e1dcebe9a7e971e4d9ff588b1713 Mon Sep 17 00:00:00 2001 From: he <10978375@qq.com> Date: Tue, 12 Dec 2023 13:19:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=B4=E5=BA=8A=E6=95=B0=E6=8D=AE=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Interface/IClinicalAnswerService.cs | 2 ++ .../TrialSiteUser/PersonalWorkstation.cs | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/IRaCIS.Core.Application/Service/Reading/Interface/IClinicalAnswerService.cs b/IRaCIS.Core.Application/Service/Reading/Interface/IClinicalAnswerService.cs index a7b15aee6..0553e985a 100644 --- a/IRaCIS.Core.Application/Service/Reading/Interface/IClinicalAnswerService.cs +++ b/IRaCIS.Core.Application/Service/Reading/Interface/IClinicalAnswerService.cs @@ -21,5 +21,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Interface Task CRCCancelConfirmClinical(CRCCancelConfirmClinicalInDto inDto); + Task> GetCRCConfirmList(GetCRCConfirmListInDto inDto); + } } diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/PersonalWorkstation.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/PersonalWorkstation.cs index 0d5e1cd72..b6106b44b 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/PersonalWorkstation.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/PersonalWorkstation.cs @@ -1,6 +1,7 @@ using IRaCIS.Application.Contracts; using IRaCIS.Core.Application.Contracts; using IRaCIS.Core.Application.Interfaces; +using IRaCIS.Core.Application.Service.Reading.Interface; using IRaCIS.Core.Application.ViewModel; using IRaCIS.Core.Domain.Models; using IRaCIS.Core.Domain.Share; @@ -22,11 +23,13 @@ namespace IRaCIS.Core.Application private readonly IRepository _trialDocumentRepository; private readonly IRepository _systemDocumentRepository; private readonly IRepository _readModuleRepository; + private readonly IClinicalAnswerService _clinicalAnswerService; private readonly IRepository _systemNoticeRepository; public PersonalWorkstation(IRepository trialRepository, IRepository trialUserRepository, IRepository trialDocumentRepository, IRepository systemDocumentRepository, IRepository readModuleRepository, + IClinicalAnswerService clinicalAnswerService, IRepository systemNoticeRepository) { _trialRepository = trialRepository; @@ -34,6 +37,7 @@ namespace IRaCIS.Core.Application _trialDocumentRepository = trialDocumentRepository; _systemDocumentRepository = systemDocumentRepository; this._readModuleRepository = readModuleRepository; + this._clinicalAnswerService = clinicalAnswerService; _systemNoticeRepository = systemNoticeRepository; } @@ -511,6 +515,20 @@ namespace IRaCIS.Core.Application var result = await query.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, inQuery.SortField, inQuery.Asc, string.IsNullOrWhiteSpace(inQuery.SortField), defalutSortArray); + // ReadModuleCount情况太多了 暂时用之前的方法 + foreach (var item in result.CurrentPageData) + { + item.ReadModuleCount = (await _clinicalAnswerService.GetCRCConfirmList(new Service.Reading.Dto.GetCRCConfirmListInDto() + { + TrialId = item.TrialId, + PageIndex = 1, + PageSize = 9999, + + })).CurrentPageData.SelectMany(x => x.ClinicalFormList).Count(); + } + + + var toBeDealedCount = _subjectVisitRepository //.Where(t => t.Trial.TrialUserList.Any(t => t.UserId == _userInfo.Id) && t.Trial.clinicalDataTrialSets.Any(t => t.ClinicalDataLevel == ClinicalLevel.Subject && t.IsConfirm))