Merge branch 'Test_IRC_Net8' of http://192.168.3.68:2000/XCKJ/irc-netcore-api into Test_IRC_Net8

IRC_NewDev
hang 2024-03-13 17:42:40 +08:00
commit 3e9900cc45
3 changed files with 47 additions and 1 deletions

View File

@ -8599,6 +8599,14 @@
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingMedicineQuestionService.VerifyIsCanConfirm(IRaCIS.Core.Application.ViewModel.VerifyIsCanConfirmInDto)">
<summary>
验证医学审核问题是否可确认
</summary>
<param name="inDto"></param>
<returns></returns>
<exception cref="T:IRaCIS.Core.Infrastructure.BusinessValidationFailedException"></exception>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingMedicineQuestionService.AddTrialDataFromSystem(IRaCIS.Core.Application.ViewModel.AddTrialDataFromSystemInDto)">
<summary>
从系统里面选择问题添加到项目里面

View File

@ -263,8 +263,12 @@ namespace IRaCIS.Core.Application.ViewModel
public ReadingCategory? ReadingCategory { get; set; }
}
public class VerifyIsCanConfirmInDto
{
public Guid TrialReadingCriterionId { get; set; }
}
public class GetMedicineQuestionPreviewOutDto
public class GetMedicineQuestionPreviewOutDto
{
public Guid Id { get; set; }

View File

@ -36,6 +36,7 @@ namespace IRaCIS.Core.Application.Service
this._readingMedicineSystemQuestionRepository = readingMedicineSystemQuestionRepository;
}
#region 系统
@ -605,6 +606,39 @@ namespace IRaCIS.Core.Application.Service
}
/// <summary>
/// 验证医学审核问题是否可确认
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
/// <exception cref="BusinessValidationFailedException"></exception>
[HttpPost]
public async Task VerifyIsCanConfirm(VerifyIsCanConfirmInDto inDto)
{
var criterionInfo = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).FirstNotNullAsync();
if (!criterionInfo.IsSigned)
{
throw new BusinessValidationFailedException(_localizer["ReadingMed_NoConfirmed"]);
}
if (!(await _readingMedicineTrialQuestionRepository.AnyAsync(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId && x.ReadingCategory == ReadingCategory.Visit)))
{
throw new BusinessValidationFailedException(_localizer["ReadingMed_NoVisitQ"]);
}
if (criterionInfo.IsReadingPeriod&& !(await _readingMedicineTrialQuestionRepository.AnyAsync(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId && x.ReadingCategory == ReadingCategory.Global)))
{
throw new BusinessValidationFailedException(_localizer["ReadingMed_NoGlobalQ"]);
}
if (criterionInfo.IsArbitrationReading&&!(await _readingMedicineTrialQuestionRepository.AnyAsync(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId && x.ReadingCategory == ReadingCategory.Judge)))
{
throw new BusinessValidationFailedException(_localizer["ReadingMed_NoJudgeQ"]);
}
if (criterionInfo.IsOncologyReading&& !(await _readingMedicineTrialQuestionRepository.AnyAsync(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId && x.ReadingCategory == ReadingCategory.Oncology)))
{
throw new BusinessValidationFailedException(_localizer["ReadingMed_NoOncologyQ"]);
}
}
/// <summary>
/// 从系统里面选择问题添加到项目里面
/// </summary>