Merge branch 'master' of http://192.168.1.2:8033/IRaCIS_Core_Api
commit
73fb523b3d
|
@ -187,23 +187,26 @@ namespace IRaCIS.Core.Application.Service
|
||||||
public async Task<IResponseOutput> SubmitClinicalForm(SubmitClinicalFormInDto inDto)
|
public async Task<IResponseOutput> SubmitClinicalForm(SubmitClinicalFormInDto inDto)
|
||||||
{
|
{
|
||||||
|
|
||||||
var checkDateQuestionId = await _trialClinicalQuestionRepository.Where(x => x.TrialClinicalId == inDto.ClinicalDataTrialSetId && x.IsCheckDate).Select(x => x.Id).FirstNotNullAsync();
|
|
||||||
|
|
||||||
ClinicalForm clinicalForm = new ClinicalForm() { };
|
ClinicalForm clinicalForm = new ClinicalForm() { };
|
||||||
try
|
clinicalForm = new ClinicalForm()
|
||||||
|
{
|
||||||
|
ClinicalDataTrialSetId = inDto.ClinicalDataTrialSetId,
|
||||||
|
SubjectId = inDto.SubjectId,
|
||||||
|
Id = inDto.ClinicalFormId ?? NewId.NextGuid(),
|
||||||
|
ReadingId = inDto.ReadingId,
|
||||||
|
VisitId = inDto.VisitId,
|
||||||
|
};
|
||||||
|
try
|
||||||
{
|
{
|
||||||
clinicalForm = new ClinicalForm()
|
var checkDateQuestionId = await _trialClinicalQuestionRepository.Where(x => x.TrialClinicalId == inDto.ClinicalDataTrialSetId && x.IsCheckDate).Select(x => x.Id).FirstNotNullAsync();
|
||||||
{
|
clinicalForm.CheckDate = DateTime.Parse(inDto.QuestionAnswers.Where(x => x.QuestionId == checkDateQuestionId).Select(x => x.Answer).First());
|
||||||
ClinicalDataTrialSetId = inDto.ClinicalDataTrialSetId,
|
|
||||||
SubjectId = inDto.SubjectId,
|
}
|
||||||
Id = inDto.ClinicalFormId ?? NewId.NextGuid(),
|
|
||||||
ReadingId=inDto.ReadingId,
|
|
||||||
VisitId=inDto.VisitId,
|
|
||||||
CheckDate = DateTime.Parse(inDto.QuestionAnswers.Where(x => x.QuestionId == checkDateQuestionId).Select(x => x.Answer).First()),
|
|
||||||
};
|
|
||||||
}
|
|
||||||
catch (Exception)
|
catch (Exception)
|
||||||
{
|
{
|
||||||
throw new BusinessValidationFailedException("检查日期问题答案填写错误!");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
List<ClinicalQuestionAnswer> clinicalQuestionAnswers = inDto.QuestionAnswers.Select(x => new ClinicalQuestionAnswer()
|
List<ClinicalQuestionAnswer> clinicalQuestionAnswers = inDto.QuestionAnswers.Select(x => new ClinicalQuestionAnswer()
|
||||||
|
|
|
@ -61,7 +61,13 @@ namespace IRaCIS.Application.Services
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public async Task<IResponseOutput> ApplySystemClinical(ApplySystemClinicalInDto inDto)
|
public async Task<IResponseOutput> ApplySystemClinical(ApplySystemClinicalInDto inDto)
|
||||||
{
|
{
|
||||||
if (_systemClinicalQuestionRepository.Where(x => x.SystemClinicalId == inDto.SystemClinicalId && x.IsCheckDate).Count() != 1)
|
|
||||||
|
var isNeedVerify = await _clinicalDataSystemSetRepository.AnyAsync(x => x.Id == inDto.SystemClinicalId && (x.ClinicalDataLevel == ClinicalLevel.ImageRead || x.ClinicalDataLevel == ClinicalLevel.OncologyRead)
|
||||||
|
&& x.ClinicalUploadType == ClinicalUploadType.Structuring && x.UploadRole == UploadRole.CRC
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
if (_systemClinicalQuestionRepository.Where(x => isNeedVerify&& x.SystemClinicalId == inDto.SystemClinicalId && x.IsCheckDate).Count() != 1)
|
||||||
{
|
{
|
||||||
throw new BusinessValidationFailedException(_localizer["ClinicalDataSet_Apply"]);
|
throw new BusinessValidationFailedException(_localizer["ClinicalDataSet_Apply"]);
|
||||||
|
|
||||||
|
@ -87,7 +93,12 @@ namespace IRaCIS.Application.Services
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public async Task<IResponseOutput> ApplyTrialClinical(ApplyTrialClinicalInDto inDto)
|
public async Task<IResponseOutput> ApplyTrialClinical(ApplyTrialClinicalInDto inDto)
|
||||||
{
|
{
|
||||||
if (_trialClinicalQuestionRepository.Where(x => x.TrialClinicalId == inDto.TrialClinicalId && x.IsCheckDate).Count() != 1)
|
|
||||||
|
var isNeedVerify = await _clinicalDataTrialSetRepository.AnyAsync(x => x.Id == inDto.TrialClinicalId && (x.ClinicalDataLevel == ClinicalLevel.ImageRead|| x.ClinicalDataLevel==ClinicalLevel.OncologyRead)
|
||||||
|
&& x.ClinicalUploadType == ClinicalUploadType.Structuring && x.UploadRole == UploadRole.CRC
|
||||||
|
);
|
||||||
|
|
||||||
|
if (_trialClinicalQuestionRepository.Where(x => isNeedVerify&& x.TrialClinicalId == inDto.TrialClinicalId && x.IsCheckDate).Count() != 1)
|
||||||
{
|
{
|
||||||
throw new BusinessValidationFailedException(_localizer["ClinicalDataSet_Apply"]);
|
throw new BusinessValidationFailedException(_localizer["ClinicalDataSet_Apply"]);
|
||||||
|
|
||||||
|
|
|
@ -1239,7 +1239,12 @@ namespace IRaCIS.Core.Domain.Share
|
||||||
[Display(Name = "PDF")]
|
[Display(Name = "PDF")]
|
||||||
PDF = 1,
|
PDF = 1,
|
||||||
|
|
||||||
}
|
/// <summary>
|
||||||
|
/// 结构化录入
|
||||||
|
/// </summary>
|
||||||
|
Structuring = 2,
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 数据类型
|
/// 数据类型
|
||||||
|
|
Loading…
Reference in New Issue