Uat_Study
parent
276e7ee729
commit
b4b4c82e59
|
@ -42,12 +42,56 @@ namespace IRaCIS.Core.Application.Service
|
||||||
_systemClinicalQuestionRepository = systemClinicalQuestionRepository;
|
_systemClinicalQuestionRepository = systemClinicalQuestionRepository;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 获取系统临床数据预览
|
/// 获取计算问题
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="inDto"></param>
|
/// <param name="inDto"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
|
public async Task<List<GetClinicalCalculateQuestionsOutDto>> GetClinicalCalculateQuestions(GetClinicalCalculateQuestionsInDto inDto)
|
||||||
|
{
|
||||||
|
var result = await _trialClinicalQuestionRepository
|
||||||
|
|
||||||
|
.Where(x => x.TrialClinicalId == inDto.TrialClinicalId)
|
||||||
|
.WhereIf(!inDto.ClinicalQuestionType.IsNullOrEmpty(), x => x.ClinicalQuestionType == inDto.ClinicalQuestionType)
|
||||||
|
.OrderBy(x => x.ShowOrder)
|
||||||
|
.Select(x => new GetClinicalCalculateQuestionsOutDto
|
||||||
|
()
|
||||||
|
{
|
||||||
|
QuestionId = x.Id,
|
||||||
|
QuestionName = x.QuestionName.LanguageName(x.QuestionEnName, _userInfo.IsEn_Us)
|
||||||
|
|
||||||
|
}).ToListAsync();
|
||||||
|
|
||||||
|
var tablequestion = await _trialClinicalTableQuestionRepository.Where(x => x.TrialClinicalId == inDto.TrialClinicalId && x.ClinicalTableQuestionType == "number").Select(x =>
|
||||||
|
new
|
||||||
|
{
|
||||||
|
TableQuestionId = x.Id,
|
||||||
|
QuestionId= x.QuestionId,
|
||||||
|
QuestionName = x.QuestionName.LanguageName(x.QuestionEnName, _userInfo.IsEn_Us)
|
||||||
|
}).ToListAsync();
|
||||||
|
|
||||||
|
|
||||||
|
result.ForEach(x =>
|
||||||
|
{
|
||||||
|
x.TableQuestions = tablequestion.Where(y => x.QuestionId == y.QuestionId).Select(y => new CalculateQuestion()
|
||||||
|
{
|
||||||
|
|
||||||
|
QuestionId = y.QuestionId,
|
||||||
|
QuestionName = y.QuestionName
|
||||||
|
|
||||||
|
}).ToList();
|
||||||
|
});
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取系统临床数据预览
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="inDto"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPost]
|
||||||
public async Task<(List<ClinicalQuestionPreviewDto>, bool)> GetSystemClinicalQuestionPreview(GetSystemClinicalQuestionPreviewDto inDto)
|
public async Task<(List<ClinicalQuestionPreviewDto>, bool)> GetSystemClinicalQuestionPreview(GetSystemClinicalQuestionPreviewDto inDto)
|
||||||
{
|
{
|
||||||
var questions = await _systemClinicalQuestionRepository.Where(x => x.SystemClinicalId == inDto.SystemClinicalId)
|
var questions = await _systemClinicalQuestionRepository.Where(x => x.SystemClinicalId == inDto.SystemClinicalId)
|
||||||
|
|
|
@ -10,10 +10,37 @@ using System.Threading.Tasks;
|
||||||
namespace IRaCIS.Core.Application.Service.Reading.Dto
|
namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
{
|
{
|
||||||
|
|
||||||
#region 预览
|
|
||||||
|
|
||||||
|
|
||||||
public class GetSystemClinicalQuestionPreviewDto
|
#region 获取计算问题
|
||||||
|
public class GetClinicalCalculateQuestionsOutDto
|
||||||
|
{
|
||||||
|
public Guid QuestionId { get; set; }
|
||||||
|
|
||||||
|
public string QuestionName { get; set; }
|
||||||
|
|
||||||
|
public List<CalculateQuestion> TableQuestions { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public class GetClinicalCalculateQuestionsInDto
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 项目临床数据Id
|
||||||
|
/// </summary>
|
||||||
|
public Guid TrialClinicalId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 临床问题类型(分组,单选。)
|
||||||
|
/// </summary>
|
||||||
|
public string ClinicalQuestionType { get; set; } = string.Empty;
|
||||||
|
}
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region 预览
|
||||||
|
|
||||||
|
|
||||||
|
public class GetSystemClinicalQuestionPreviewDto
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 系统临床数据Id
|
/// 系统临床数据Id
|
||||||
|
|
Loading…
Reference in New Issue