diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 045e4f278..7ddce37c1 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -3854,31 +3854,6 @@ 仲裁规则/对象 - - - 修约小数点 - - - - - 项目标准Id - - - - - 项目分页 - - - - - 项目裁判问题集合 - - - - - 项目问题集合 - - pageId @@ -4009,6 +3984,26 @@ 标准 + + + 修约小数点 + + + + + 项目标准Id + + + + + 项目分页 + + + + + 项目问题集合 + + 表单类型 @@ -4642,6 +4637,20 @@ + + + 获取项目裁判信息 + + + + + + + 获取项目阅片标准信息 + + + + 设置项目阅片标准 diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs index 2865e6571..452103f4f 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs @@ -327,16 +327,7 @@ namespace IRaCIS.Core.Application.Contracts /// public int ArbitrationRule { get; set; } = 2; - /// - /// 修约小数点 - /// - public int? DigitPlaces { get; set; } - public FormType? FormType { get; set; } - /// - /// 项目标准Id - /// - public Guid? TrialCriterionId { get; set; } ///// ///// 全局阅片 @@ -370,21 +361,9 @@ namespace IRaCIS.Core.Application.Contracts - /// - /// 项目分页 - /// - public List ReadingCriterionPageList { get; set; } + - /// - /// 项目裁判问题集合 - /// - public List TrialJudgeQuestionList { get; set; } - - - /// - /// 项目问题集合 - /// - public List TrialQuestionList { get; set; } + } public class ReadingCriterionPageDto @@ -546,6 +525,31 @@ namespace IRaCIS.Core.Application.Contracts public Guid TrialId { get; set; } } + public class GetTrialReadingCriterionInfoOutDto + { + /// + /// 修约小数点 + /// + public int? DigitPlaces { get; set; } + + public FormType? FormType { get; set; } + /// + /// 项目标准Id + /// + public Guid? TrialCriterionId { get; set; } + + /// + /// 项目分页 + /// + public List ReadingCriterionPageList { get; set; } + + /// + /// 项目问题集合 + /// + public List TrialQuestionList { get; set; } + + + } public class GetTrialReadingInfoInDto { diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs index 1d87296ed..673181179 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs @@ -73,35 +73,59 @@ namespace IRaCIS.Core.Application public async Task GetTrialReadingInfo(GetTrialReadingInfoInDto inDto) { GetTrialReadingInfoOutDto trialInfo= await _trialRepository.Where(x=>x.Id==inDto.TrialId).ProjectTo(_mapper.ConfigurationProvider).FirstNotNullAsync(); - trialInfo.DigitPlaces = null; - trialInfo.ReadingCriterionPageList = await _readingCriterionPageRepository.Where(x => x.TrialId == inDto.TrialId).ProjectTo(_mapper.ConfigurationProvider).ToListAsync(); - - var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.TrialId == inDto.TrialId && x.IsConfirm).FirstOrDefaultAsync(); - - if (trialCriterion != null) - { - trialInfo.DigitPlaces= trialCriterion.DigitPlaces; - trialInfo.TrialCriterionId = trialCriterion.Id; - trialInfo.FormType = trialCriterion.FormType; - }; - - trialInfo.TrialJudgeQuestionList = await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrial.IsConfirm && x.IsJudgeQuestion && x.TrialId == inDto.TrialId) - .Select(x => new TrialJudgeQuestion() - { - AnswerCombination = x.AnswerCombination, - AnswerGroup = x.AnswerGroup, - JudgeType = x.JudgeType, - QuestionId = x.Id, - QuestionName = x.QuestionName, - ReadingQuestionCriterionTrialId = x.ReadingQuestionCriterionTrialId - }).ToListAsync(); - - trialInfo.TrialQuestionList= await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrial.IsConfirm&&x.TrialId==inDto.TrialId) - .ProjectTo(_mapper.ConfigurationProvider).ToListAsync(); return trialInfo; } + /// + /// 获取项目裁判信息 + /// + /// + /// + [HttpPost] + public async Task> GetTrialReadingJudgeList(GetTrialReadingInfoInDto inDto) + { + return await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrial.IsConfirm && x.IsJudgeQuestion && x.TrialId == inDto.TrialId) + .Select(x => new TrialJudgeQuestion() + { + AnswerCombination = x.AnswerCombination, + AnswerGroup = x.AnswerGroup, + JudgeType = x.JudgeType, + QuestionId = x.Id, + QuestionName = x.QuestionName, + ReadingQuestionCriterionTrialId = x.ReadingQuestionCriterionTrialId + }).ToListAsync(); + } + + /// + /// 获取项目阅片标准信息 + /// + /// + /// + [HttpPost] + public async Task GetTrialReadingCriterionInfo(GetTrialReadingInfoInDto inDto) + { + GetTrialReadingCriterionInfoOutDto result = new GetTrialReadingCriterionInfoOutDto(); + result.ReadingCriterionPageList = await _readingCriterionPageRepository.Where(x => x.TrialId == inDto.TrialId).ProjectTo(_mapper.ConfigurationProvider).ToListAsync(); + var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.TrialId == inDto.TrialId && x.IsConfirm).FirstOrDefaultAsync(); + + if (trialCriterion != null) + { + result.DigitPlaces = trialCriterion.DigitPlaces; + result.TrialCriterionId = trialCriterion.Id; + result.FormType = trialCriterion.FormType; + }; + + + result.TrialQuestionList = await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrial.IsConfirm && x.TrialId == inDto.TrialId) + .ProjectTo(_mapper.ConfigurationProvider).ToListAsync(); + + + + + return result; + } + /// /// 设置项目阅片标准 ///