From 6b807f419b6b53e67bc37690b12e416403a9eb37 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Wed, 15 May 2024 16:17:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=A1=B9=E7=9B=AE=E4=B8=AD?= =?UTF-8?q?=E5=BF=83=E6=9F=A5=E8=AF=A2=EF=BC=8C=E6=96=87=E6=A1=A3=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Service/Document/DTO/TrialDocumentViewModel.cs | 2 ++ .../Service/Document/TrialDocumentService.cs | 2 ++ .../Service/TrialSiteUser/DTO/UserTrialViewModel.cs | 7 +++++-- .../Service/TrialSiteUser/TrialSiteService.cs | 2 +- .../Service/TrialSiteUser/_MapConfig.cs | 5 +++-- 5 files changed, 13 insertions(+), 5 deletions(-) diff --git a/IRaCIS.Core.Application/Service/Document/DTO/TrialDocumentViewModel.cs b/IRaCIS.Core.Application/Service/Document/DTO/TrialDocumentViewModel.cs index 476e7c6b3..487809bb1 100644 --- a/IRaCIS.Core.Application/Service/Document/DTO/TrialDocumentViewModel.cs +++ b/IRaCIS.Core.Application/Service/Document/DTO/TrialDocumentViewModel.cs @@ -36,6 +36,8 @@ namespace IRaCIS.Core.Application.Contracts public bool? IsDeleted { get; set; } public Guid? FileTypeId { get; set; } + public Guid? UserTypeId { get; set; } + public string Name { get; set; } = String.Empty; [NotDefault] diff --git a/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs b/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs index 036068532..ca19ab0b9 100644 --- a/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs +++ b/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs @@ -11,6 +11,7 @@ using Microsoft.AspNetCore.Authorization; using IRaCIS.Core.Application.Auth; using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Application.Filter; +using System.Linq; namespace IRaCIS.Core.Application.Services { @@ -63,6 +64,7 @@ namespace IRaCIS.Core.Application.Services var trialDocumentQueryable = _trialDocumentRepository.AsQueryable(true).Where(t => t.TrialId == queryTrialDocument.TrialId) .WhereIf(!string.IsNullOrEmpty(queryTrialDocument.Name), t => t.Name.Contains(queryTrialDocument.Name)) .WhereIf(queryTrialDocument.FileTypeId != null, t => t.FileTypeId == queryTrialDocument.FileTypeId) + .WhereIf(queryTrialDocument.UserTypeId != null, t => t.NeedConfirmedUserTypeList.Any(t=>t.NeedConfirmUserTypeId== queryTrialDocument.UserTypeId) ) .WhereIf(queryTrialDocument.IsDeleted != null, t => t.IsDeleted == queryTrialDocument.IsDeleted) .ProjectTo(_mapper.ConfigurationProvider, new { token = _userInfo.UserToken, isEn_Us = _userInfo.IsEn_Us }); diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/UserTrialViewModel.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/UserTrialViewModel.cs index bf2769f68..e1f014663 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/UserTrialViewModel.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/UserTrialViewModel.cs @@ -220,8 +220,8 @@ namespace IRaCIS.Application.Contracts - public int? VisitCount { get; set; } - public int? SubjectCount { get; set; } + //public int? VisitCount { get; set; } + //public int? SubjectCount { get; set; } } @@ -265,6 +265,9 @@ namespace IRaCIS.Application.Contracts public List UserNameList { get; set; } = new List(); + + public int? VisitCount { get; set; } + public int? SubjectCount { get; set; } } diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs index 7820cd673..6d3b7845f 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs @@ -158,7 +158,7 @@ namespace IRaCIS.Core.Application.Services var siteStatQuery = _trialSiteRepository.Where(t => t.TrialId == param.TrialId).IgnoreQueryFilters() .WhereIf(param.IsDeleted != null, t => t.IsDeleted == param.IsDeleted) - .WhereIf(!string.IsNullOrWhiteSpace(param.SiteName), t => t.Site.SiteName.Contains(param.SiteName)) + .WhereIf(!string.IsNullOrWhiteSpace(param.SiteName), t => t.Site.SiteName.Contains(param.SiteName) || t.TrialSiteAliasName.Contains(param.TrialSiteAliasName)) .WhereIf(!string.IsNullOrWhiteSpace(param.TrialSiteAliasName), t => t.TrialSiteAliasName.Contains(param.TrialSiteAliasName)) .WhereIf(!string.IsNullOrWhiteSpace(param.TrialSiteCode), t => t.TrialSiteCode.Contains(param.TrialSiteCode)) .WhereIf(_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ClinicalResearchCoordinator, t => t.CRCUserList.Any(k => k.UserId == _userInfo.Id)) diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/_MapConfig.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/_MapConfig.cs index 41ffe590f..55300c875 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/_MapConfig.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/_MapConfig.cs @@ -132,8 +132,7 @@ namespace IRaCIS.Core.Application.Service .ForMember(d => d.ContactPhone, u => u.MapFrom(s => s.Site.ContactPhone)) .ForMember(d => d.Address, u => u.MapFrom(s => s.Site.Address)) .ForMember(d => d.Site, u => u.MapFrom(s => s.Site.SiteName)) - .ForMember(d => d.VisitCount, u => u.MapFrom(s => s.SubjectVisitList.Count())) - .ForMember(d => d.SubjectCount, u => u.MapFrom(s => s.SubjectList.Count())) + @@ -151,6 +150,8 @@ namespace IRaCIS.Core.Application.Service .ForMember(d => d.Site, u => u.MapFrom(s => isEn_Us ?s.Site.SiteName:s.Site.SiteNameCN)) .ForMember(d => d.Hospital, u => u.MapFrom(s => s.Site.Hospital.HospitalName)) .ForMember(d => d.UserCount, u => u.MapFrom(s => s.CRCUserList.Count())) + .ForMember(d => d.VisitCount, u => u.MapFrom(s => s.SubjectVisitList.Count())) + .ForMember(d => d.SubjectCount, u => u.MapFrom(s => s.SubjectList.Count())) .ForMember(d => d.UserNameList, u => u.MapFrom(s => s.CRCUserList.Where(t => t.IsDeleted == false).Select(u => u.User.FullName))); CreateMap();