修改一版

Uat_Study
he 2022-10-10 11:05:11 +08:00
parent b89029adff
commit 5445411c9d
7 changed files with 25 additions and 18 deletions

View File

@ -162,7 +162,7 @@ namespace IRaCIS.Core.Application.ViewModel
public class SynchronizeSystemOrganToTrialInDto public class SynchronizeSystemOrganToTrialInDto
{ {
public Guid TrialId { get; set; } public Guid TrialCriterionId { get; set; }

View File

@ -311,7 +311,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public class SynchronizeCriterionInDto public class SynchronizeCriterionInDto
{ {
[NotDefault] [NotDefault]
public Guid TrialId { get; set; } public Guid TrialCriterionId { get; set; }
} }
public class VerifyeCriterionNeedSynchronizeInDto public class VerifyeCriterionNeedSynchronizeInDto

View File

@ -309,7 +309,7 @@ namespace IRaCIS.Core.Application.Service
public async Task<IResponseOutput> SynchronizeSystemOrganToTrial(SynchronizeSystemOrganToTrialInDto inDto) public async Task<IResponseOutput> SynchronizeSystemOrganToTrial(SynchronizeSystemOrganToTrialInDto inDto)
{ {
// 选中的标准进行修改 // 选中的标准进行修改
var readingQuestionCriterionTrial = await _readingQuestionCriterionTrial.Where(x => x.TrialId == inDto.TrialId && x.IsConfirm).FirstOrDefaultAsync(); var readingQuestionCriterionTrial = await _readingQuestionCriterionTrial.Where(x => x.Id==inDto.TrialCriterionId).FirstOrDefaultAsync();
if (readingQuestionCriterionTrial != null) if (readingQuestionCriterionTrial != null)
{ {
@ -334,7 +334,7 @@ namespace IRaCIS.Core.Application.Service
criterionNidusList.ForEach(x => x.Id = NewId.NextGuid()); criterionNidusList.ForEach(x => x.Id = NewId.NextGuid());
await _criterionNidusRepository.AddRangeAsync(criterionNidusList); await _criterionNidusRepository.AddRangeAsync(criterionNidusList);
await _organTrialInfoRepository.BatchDeleteNoTrackingAsync(x => x.TrialId == inDto.TrialId); await _organTrialInfoRepository.BatchDeleteNoTrackingAsync(x => x.TrialId == readingQuestionCriterionTrial.TrialId);
var originalIds = criterionNidusList.Select(x => x.OriginalId).Distinct().ToList(); var originalIds = criterionNidusList.Select(x => x.OriginalId).Distinct().ToList();
List<OrganTrialInfo> organTrialInfoList = await _organInfoRepository.Where(x =>x.SystemCriterionId== inDto.SystemCriterionId).Select(x => new OrganTrialInfo() List<OrganTrialInfo> organTrialInfoList = await _organInfoRepository.Where(x =>x.SystemCriterionId== inDto.SystemCriterionId).Select(x => new OrganTrialInfo()
{ {
@ -343,7 +343,7 @@ namespace IRaCIS.Core.Application.Service
IsEnable = true, IsEnable = true,
TrialCriterionId= readingQuestionCriterionTrial.Id, TrialCriterionId= readingQuestionCriterionTrial.Id,
OrganInfoId = x.Id, OrganInfoId = x.Id,
TrialId = inDto.TrialId, TrialId = readingQuestionCriterionTrial.TrialId,
}).ToListAsync(); }).ToListAsync();
organTrialInfoList.ForEach(x => x.Id = NewId.NextGuid()); organTrialInfoList.ForEach(x => x.Id = NewId.NextGuid());

View File

@ -504,7 +504,7 @@ namespace IRaCIS.Application.Services
/// <returns></returns> /// <returns></returns>
public async Task SynchronizeCriterion(SynchronizeCriterionInDto inDto) public async Task SynchronizeCriterion(SynchronizeCriterionInDto inDto)
{ {
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.TrialId == inDto.TrialId && x.IsConfirm).AsNoTracking().FirstOrDefaultAsync(); var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id==inDto.TrialCriterionId).AsNoTracking().FirstOrDefaultAsync();
if (trialCriterion != null) if (trialCriterion != null)
{ {
@ -590,7 +590,7 @@ namespace IRaCIS.Application.Services
foreach (var x in newTrialTableQuestionList) foreach (var x in newTrialTableQuestionList)
{ {
var tableQuestion = x.Clone(); var tableQuestion = x.Clone();
tableQuestion.TrialId = inDto.TrialId; tableQuestion.TrialId = trialCriterion.TrialId;
tableQuestion.TrialCriterionId = trialCriterion.Id; tableQuestion.TrialCriterionId = trialCriterion.Id;
tableQuestion.ReadingQuestionId = copyNewQuestionList.Where(y => y.ReadingQuestionSystemId == x.ReadingQuestionId).Select(y => y.Id).FirstOrDefault(); tableQuestion.ReadingQuestionId = copyNewQuestionList.Where(y => y.ReadingQuestionSystemId == x.ReadingQuestionId).Select(y => y.Id).FirstOrDefault();

View File

@ -726,14 +726,18 @@ namespace IRaCIS.Core.Application.Contracts
public class GetOncologySetInDto public class GetOncologySetInDto
{ {
public Guid TrialId { get; set; } public Guid TrialCriterionId { get; set; }
} }
public class GetTrialReadingInfoInDto public class GetTrialReadingInfoInDto
{ {
[NotDefault] [NotDefault]
public Guid TrialId { get; set; } public Guid TrialId { get; set; }
[NotDefault]
public Guid TrialCriterionId { get; set; }
} }

View File

@ -115,12 +115,9 @@ namespace IRaCIS.Core.Application
/// <param name="inDto"></param> /// <param name="inDto"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task<GetTrialReadingInfoOutDto> GetTrialReadingInfo(GetTrialReadingInfoInDto inDto) public async Task<GetTrialReadingInfoOutDto> GetCriterionReadingInfo(GetTrialReadingInfoInDto inDto)
{ {
GetTrialReadingInfoOutDto trialInfo= await _trialRepository.Where(x=>x.Id==inDto.TrialId).ProjectTo<GetTrialReadingInfoOutDto>(_mapper.ConfigurationProvider).FirstNotNullAsync(); GetTrialReadingInfoOutDto trialInfo= await _readingQuestionCriterionTrialRepository.Where(x=>x.Id==inDto.TrialCriterionId).ProjectTo<GetTrialReadingInfoOutDto>(_mapper.ConfigurationProvider).FirstNotNullAsync();
return trialInfo; return trialInfo;
} }
@ -133,8 +130,8 @@ namespace IRaCIS.Core.Application
[HttpPost] [HttpPost]
public async Task<GetOncologySetOutDto> GetOncologySet(GetOncologySetInDto inDto) public async Task<GetOncologySetOutDto> GetOncologySet(GetOncologySetInDto inDto)
{ {
var signTime = await _trialRepository.Where(x => x.Id == inDto.TrialId).Select(x => x.ReadingInfoSignTime).FirstOrDefaultAsync();
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.TrialId == inDto.TrialId && x.IsConfirm).FirstOrDefaultAsync(); var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialCriterionId).FirstOrDefaultAsync();
if (trialCriterion == null) if (trialCriterion == null)
{ {
throw new BusinessValidationFailedException("请先确认一个项目标准。"); throw new BusinessValidationFailedException("请先确认一个项目标准。");
@ -145,7 +142,7 @@ namespace IRaCIS.Core.Application
EvaluationReason = trialCriterion.EvaluationReason.IsNullOrEmpty()? ReadingCommon.EvaluationReason : trialCriterion.EvaluationReason, EvaluationReason = trialCriterion.EvaluationReason.IsNullOrEmpty()? ReadingCommon.EvaluationReason : trialCriterion.EvaluationReason,
EvaluationResult= trialCriterion.EvaluationResult, EvaluationResult= trialCriterion.EvaluationResult,
IsShowDetail=trialCriterion.IsShowDetail, IsShowDetail=trialCriterion.IsShowDetail,
IsSign = signTime != null, IsSign = trialCriterion.ReadingInfoSignTime != null,
}; };
} }
@ -247,7 +244,7 @@ namespace IRaCIS.Core.Application
// 同步器官 // 同步器官
await _iOrganInfoService.SynchronizeSystemOrganToTrial(new SynchronizeSystemOrganToTrialInDto() await _iOrganInfoService.SynchronizeSystemOrganToTrial(new SynchronizeSystemOrganToTrialInDto()
{ {
TrialId = inDto.TrialId, TrialCriterionId = inDto.TrialCriterionId,
SystemCriterionId = trialCriterion.ReadingQuestionCriterionSystemId SystemCriterionId = trialCriterion.ReadingQuestionCriterionSystemId
}); });
@ -255,7 +252,7 @@ namespace IRaCIS.Core.Application
await iReadingQuestionService.SynchronizeCriterion(new SynchronizeCriterionInDto() await iReadingQuestionService.SynchronizeCriterion(new SynchronizeCriterionInDto()
{ {
TrialId = inDto.TrialId TrialCriterionId = inDto.TrialCriterionId,
}); });
} }

View File

@ -196,6 +196,12 @@ namespace IRaCIS.Core.Domain.Models
//后续全局自动分配默认状态 //后续全局自动分配默认状态
public TaskAllocateDefaultState FollowGlobalVisitAutoAssignDefaultState { get; set; } = TaskAllocateDefaultState.Allocated; public TaskAllocateDefaultState FollowGlobalVisitAutoAssignDefaultState { get; set; } = TaskAllocateDefaultState.Allocated;
/// <summary>
/// 阅片信息签名时间
/// </summary>
public DateTime? ReadingInfoSignTime { get; set; }
#endregion #endregion
/// <summary> /// <summary>