diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 7ddce37c1..541009056 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -2074,6 +2074,11 @@ PageName + + + 是否公共分页 + + 排序 @@ -3874,6 +3879,11 @@ 是否启用 + + + 是否公共分页 + + 创建时间 @@ -4644,6 +4654,13 @@ + + + 获取项目标准分页信息 + + + + 获取项目阅片标准信息 diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs index 14f1b4da3..bc50df039 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs @@ -37,7 +37,12 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public Guid ReadingQuestionCriterionTrialId{ get; set; } -} + /// + /// 是否公共分页 + /// + public bool IsPublicPage { get; set; } + + } public class AddOrUpdateReadingQuestionCriterionTrialInDto @@ -381,6 +386,8 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto /// 当前ID /// public Guid? Id { get; set; } + + public Guid? ReadingCriterionPageId { get; set; } } public class GetSystemCriterionOtherQuestionInDto diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs index 9ae857a03..cc01522d2 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs @@ -713,7 +713,7 @@ namespace IRaCIS.Application.Services .WhereIf(!inDto.QuestionName.IsNullOrEmpty(), x => x.QuestionName.Contains(inDto.QuestionName)) .WhereIf(!inDto.Type.IsNullOrEmpty(), x => x.Type.Contains(inDto.Type)) .WhereIf(inDto.ReadingCriterionPageId!=null, x => x.ReadingCriterionPageId==inDto.ReadingCriterionPageId) - .ProjectTo(_mapper.ConfigurationProvider); + .ProjectTo(_mapper.ConfigurationProvider).OrderBy(x=>x.ShowOrder); return await query.ToListAsync(); } @@ -732,6 +732,7 @@ namespace IRaCIS.Application.Services var questionList = await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrialId == inDto.ReadingQuestionCriterionTrialId) .Where(x => types.Contains(x.Type)) .WhereIf(inDto.Id != null, x => x.Id != inDto.Id && x.ParentId != inDto.Id) + .WhereIf(inDto.ReadingCriterionPageId != null, x => x.ReadingCriterionPageId == inDto.ReadingCriterionPageId) .Select(x => new CriterionOtherQuestionOutDto() { QuestionId = x.Id, diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs index ba932872e..b50072ee5 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs @@ -388,6 +388,12 @@ namespace IRaCIS.Core.Application.Contracts /// public bool IsEnable { get; set; } + + /// + /// 是否公共分页 + /// + public bool IsPublicPage { get; set; } + /// /// 创建时间 /// @@ -401,6 +407,9 @@ namespace IRaCIS.Core.Application.Contracts public class TrialReadQuestion { + + public Guid Id { get; set; } + /// /// 排序 /// diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs index a4203c34f..a6b6740e8 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs @@ -97,6 +97,17 @@ namespace IRaCIS.Core.Application }).ToListAsync(); } + /// + /// 获取项目标准分页信息 + /// + /// + /// + [HttpPost] + public async Task> GetReadingCriterionPageList(GetTrialReadingInfoInDto inDto) + { + return await _readingCriterionPageRepository.Where(x => x.TrialId == inDto.TrialId).ProjectTo(_mapper.ConfigurationProvider).ToListAsync(); + } + /// /// 获取项目阅片标准信息 /// @@ -117,8 +128,8 @@ namespace IRaCIS.Core.Application }; - result.TrialQuestionList = await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrial.IsConfirm && x.TrialId == inDto.TrialId) - .ProjectTo(_mapper.ConfigurationProvider).ToListAsync(); + result.TrialQuestionList = await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrial.IsConfirm && x.TrialId == inDto.TrialId&&x.ReadingQuestionCriterionTrialId == result.TrialCriterionId) + .ProjectTo(_mapper.ConfigurationProvider).OrderBy(x => x.ShowOrder).ToListAsync(); diff --git a/IRaCIS.Core.Domain/Reading/ReadingCriterionPage.cs b/IRaCIS.Core.Domain/Reading/ReadingCriterionPage.cs index d45e7ab1b..578aeffae 100644 --- a/IRaCIS.Core.Domain/Reading/ReadingCriterionPage.cs +++ b/IRaCIS.Core.Domain/Reading/ReadingCriterionPage.cs @@ -43,6 +43,12 @@ namespace IRaCIS.Core.Domain.Models public Guid CreateUserId { get; set; } + /// + /// 是否公共分页 + /// + public bool IsPublicPage { get; set; } = false; + + public Guid ReadingQuestionCriterionTrialId { get; set; } public List ReadingQuestionList { get; set; } = new List();