代码修改
parent
ae546cd016
commit
3439a6b691
|
@ -293,6 +293,26 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
public Guid RowId { get; set; }
|
public Guid RowId { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class AdditionalQuestionAnswer
|
||||||
|
{
|
||||||
|
public Guid QuestionId { get; set; }
|
||||||
|
|
||||||
|
public string Answer { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class SubmitTaskAdditionalQuestionInDto
|
||||||
|
{
|
||||||
|
public Guid VisitTaskId { get; set; }
|
||||||
|
|
||||||
|
public List<AdditionalQuestionAnswer> AnswerList { get; set; } = new List<AdditionalQuestionAnswer>();
|
||||||
|
}
|
||||||
|
|
||||||
|
public class GetTaskAdditionalQuestionInDto
|
||||||
|
{
|
||||||
|
public Guid TrialReadingCriterionId { get; set; }
|
||||||
|
public Guid VisitTaskId { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
public class ChangeCalculationAnswerInDto
|
public class ChangeCalculationAnswerInDto
|
||||||
{
|
{
|
||||||
public Guid VisitTaskId { get; set; }
|
public Guid VisitTaskId { get; set; }
|
||||||
|
|
|
@ -1365,6 +1365,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public class GetCalculateTableQuestionsInDto
|
public class GetCalculateTableQuestionsInDto
|
||||||
{
|
{
|
||||||
[NotDefault]
|
[NotDefault]
|
||||||
|
|
|
@ -90,6 +90,9 @@ namespace IRaCIS.Application.Services
|
||||||
//}
|
//}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 获取自定义表格问题预览
|
/// 获取自定义表格问题预览
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -979,7 +982,7 @@ namespace IRaCIS.Application.Services
|
||||||
needAddDatas.Add(question);
|
needAddDatas.Add(question);
|
||||||
};
|
};
|
||||||
|
|
||||||
await _readingQuestionTrialRepository.BatchDeleteNoTrackingAsync(x => x.ReadingQuestionCriterionTrialId == trialCriterion.Id);
|
await _readingQuestionTrialRepository.BatchDeleteNoTrackingAsync(x => x.ReadingQuestionCriterionTrialId == trialCriterion.Id&&!x.IsAdditional);
|
||||||
await _readingQuestionTrialRepository.AddRangeAsync(needAddDatas);
|
await _readingQuestionTrialRepository.AddRangeAsync(needAddDatas);
|
||||||
var systemCriterion = await _readingQuestionCriterionSystemRepository.Where(x => x.Id == trialCriterion.ReadingQuestionCriterionSystemId).FirstNotNullAsync();
|
var systemCriterion = await _readingQuestionCriterionSystemRepository.Where(x => x.Id == trialCriterion.ReadingQuestionCriterionSystemId).FirstNotNullAsync();
|
||||||
await _readingQuestionCriterionTrialRepository.BatchUpdateNoTrackingAsync(x => x.Id == trialCriterion.Id, x => new ReadingQuestionCriterionTrial()
|
await _readingQuestionCriterionTrialRepository.BatchUpdateNoTrackingAsync(x => x.Id == trialCriterion.Id, x => new ReadingQuestionCriterionTrial()
|
||||||
|
|
|
@ -127,6 +127,45 @@ namespace IRaCIS.Application.Services
|
||||||
this._trialEmailNoticeConfigService = trialEmailNoticeConfigService;
|
this._trialEmailNoticeConfigService = trialEmailNoticeConfigService;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取任务附加问题
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPost]
|
||||||
|
public async Task<List<TrialReadQuestion>> GettTaskAdditionalQuestion(GetTaskAdditionalQuestionInDto inDto)
|
||||||
|
{
|
||||||
|
var result= await _readingQuestionTrialRepository.Where(x => x.IsAdditional && x.ReadingQuestionCriterionTrialId == inDto.TrialReadingCriterionId).IgnoreQueryFilters().ProjectTo<TrialReadQuestion>(_mapper.ConfigurationProvider).OrderBy(x => x.ShowOrder).ToListAsync();
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 提交附加问题
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPost]
|
||||||
|
public async Task<bool> SubmitTaskAdditionalQuestion(SubmitTaskAdditionalQuestionInDto inDto)
|
||||||
|
{
|
||||||
|
var taskInfo = await _visitTaskRepository.Where(x => inDto.VisitTaskId == x.Id).FirstNotNullAsync();
|
||||||
|
var questionids = inDto.AnswerList.Select(x => x.QuestionId).ToList();
|
||||||
|
await _readingTaskQuestionAnswerRepository.BatchDeleteNoTrackingAsync(x => x.VisitTaskId == inDto.VisitTaskId && questionids.Contains(x.ReadingQuestionTrialId));
|
||||||
|
|
||||||
|
await _readingTaskQuestionAnswerRepository.AddRangeAsync(inDto.AnswerList.Select(x => new ReadingTaskQuestionAnswer()
|
||||||
|
{
|
||||||
|
VisitTaskId = inDto.VisitTaskId,
|
||||||
|
ReadingQuestionCriterionTrialId = taskInfo.TrialReadingCriterionId,
|
||||||
|
Answer = x.Answer,
|
||||||
|
ReadingQuestionTrialId = x.QuestionId,
|
||||||
|
TrialId = taskInfo.TrialId,
|
||||||
|
SubjectId = taskInfo.SubjectId
|
||||||
|
}).ToList());
|
||||||
|
|
||||||
|
return await _readingTaskQuestionAnswerRepository.SaveChangesAsync();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 维护任务关系
|
/// 维护任务关系
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
Loading…
Reference in New Issue