修改一版

This commit is contained in:
he
2022-07-13 15:27:26 +08:00
parent edf85de710
commit 491b0a4d7d
3 changed files with 110 additions and 73 deletions
@@ -327,16 +327,7 @@ namespace IRaCIS.Core.Application.Contracts
/// </summary>
public int ArbitrationRule { get; set; } = 2;
/// <summary>
/// 修约小数点
/// </summary>
public int? DigitPlaces { get; set; }
public FormType? FormType { get; set; }
/// <summary>
/// 项目标准Id
/// </summary>
public Guid? TrialCriterionId { get; set; }
///// <summary>
///// 全局阅片
@@ -370,21 +361,9 @@ namespace IRaCIS.Core.Application.Contracts
/// <summary>
/// 项目分页
/// </summary>
public List<ReadingCriterionPageDto> ReadingCriterionPageList { get; set; }
/// <summary>
/// 项目裁判问题集合
/// </summary>
public List<TrialJudgeQuestion> TrialJudgeQuestionList { get; set; }
/// <summary>
/// 项目问题集合
/// </summary>
public List<TrialReadQuestion> TrialQuestionList { get; set; }
}
public class ReadingCriterionPageDto
@@ -546,6 +525,31 @@ namespace IRaCIS.Core.Application.Contracts
public Guid TrialId { get; set; }
}
public class GetTrialReadingCriterionInfoOutDto
{
/// <summary>
/// 修约小数点
/// </summary>
public int? DigitPlaces { get; set; }
public FormType? FormType { get; set; }
/// <summary>
/// 项目标准Id
/// </summary>
public Guid? TrialCriterionId { get; set; }
/// <summary>
/// 项目分页
/// </summary>
public List<ReadingCriterionPageDto> ReadingCriterionPageList { get; set; }
/// <summary>
/// 项目问题集合
/// </summary>
public List<TrialReadQuestion> TrialQuestionList { get; set; }
}
public class GetTrialReadingInfoInDto
{
@@ -73,35 +73,59 @@ namespace IRaCIS.Core.Application
public async Task<GetTrialReadingInfoOutDto> GetTrialReadingInfo(GetTrialReadingInfoInDto inDto)
{
GetTrialReadingInfoOutDto trialInfo= await _trialRepository.Where(x=>x.Id==inDto.TrialId).ProjectTo<GetTrialReadingInfoOutDto>(_mapper.ConfigurationProvider).FirstNotNullAsync();
trialInfo.DigitPlaces = null;
trialInfo.ReadingCriterionPageList = await _readingCriterionPageRepository.Where(x => x.TrialId == inDto.TrialId).ProjectTo<ReadingCriterionPageDto>(_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<TrialReadQuestion>(_mapper.ConfigurationProvider).ToListAsync();
return trialInfo;
}
/// <summary>
/// 获取项目裁判信息
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
[HttpPost]
public async Task<List<TrialJudgeQuestion>> 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();
}
/// <summary>
/// 获取项目阅片标准信息
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
[HttpPost]
public async Task<GetTrialReadingCriterionInfoOutDto> GetTrialReadingCriterionInfo(GetTrialReadingInfoInDto inDto)
{
GetTrialReadingCriterionInfoOutDto result = new GetTrialReadingCriterionInfoOutDto();
result.ReadingCriterionPageList = await _readingCriterionPageRepository.Where(x => x.TrialId == inDto.TrialId).ProjectTo<ReadingCriterionPageDto>(_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<TrialReadQuestion>(_mapper.ConfigurationProvider).ToListAsync();
return result;
}
/// <summary>
/// 设置项目阅片标准
/// </summary>