Uat_Study
he 2023-02-20 13:53:17 +08:00
parent 6192c2e144
commit a81bb9e3b9
10 changed files with 59 additions and 14 deletions

View File

@ -538,6 +538,15 @@ namespace IRaCIS.Application.Services
}
Dictionary<ClinicalLevel, int> keys = new Dictionary<ClinicalLevel, int>() {
{ClinicalLevel.Subject,0 },
{ClinicalLevel.ImageRead,1 },
{ClinicalLevel.OncologyRead,2 },
{ClinicalLevel.SubjectVisit,3 },
};
result.OrderBy(x => keys[x.ClinicalDataLevel]).ToList();
return (result, new
{
SubjectCode = await _subjectRepository.Where(x => x.Id == inDto.SubjectId).Select(x => x.Code).FirstOrDefaultAsync(),

View File

@ -156,7 +156,14 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public string Answer { get; set; }
public bool IsGlobalChange { get; set; } = false;
/// <summary>
/// 全局阅片修改的答案
/// </summary>
public string GlobalChangeAnswer { get; set; } = string.Empty;
}
@ -1408,6 +1415,9 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public string TaskBlindName { get; set; }
public decimal VisitTaskNum { get; set; }
public Arm? JudgeResultArm { get; set; }
}
public class GetJudgeReadingPastResultListInDto

View File

@ -51,9 +51,12 @@ namespace IRaCIS.Application.Services
foreach (var answer in item.AnswerList)
{
await _readingGlobalTaskInfoRepository.BatchDeleteNoTrackingAsync(x => x.GlobalTaskId == inDto.GlobalTaskId && x.TaskId == item.VisitTaskId && x.GlobalAnswerType == answer.GlobalAnswerType && x.QuestionId == answer.QuestionId);
await _readingTaskQuestionAnswerRepository.BatchUpdateNoTrackingAsync(x => x.VisitTaskId == item.VisitTaskId && x.ReadingQuestionTrialId == answer.QuestionId, x => new ReadingTaskQuestionAnswer()
await _readingTaskQuestionAnswerRepository.BatchUpdateNoTrackingAsync(x => x.VisitTaskId == item.VisitTaskId && x.ReadingQuestionTrialId == answer.QuestionId
&& x.Answer != answer.Answer && x.Answer != string.Empty
, x => new ReadingTaskQuestionAnswer()
{
GlobalChangeAnswer = answer.Answer
GlobalChangeAnswer = answer.Answer,
IsGlobalChange=true,
});
}
}
@ -233,7 +236,7 @@ namespace IRaCIS.Application.Services
var globalReadingQuestion = await _readingGlobalTaskInfoRepository.Where(x => x.GlobalTaskId == inDto.VisitTaskId).ToListAsync();
var criterionType = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == taskInfo.TrialReadingCriterionId).Select(x => x.CriterionType).FirstOrDefaultAsync();
// 如果不是PCWG3 Before的Answer取自于 上一次全局阅片的结果, 如果没有上一次全局阅片的结果 取访视的答案
// Before的Answer取自于 上一次全局阅片的结果, 如果没有上一次全局阅片的结果 取访视的答案
var lastGlobalTask = await _visitTaskRepository.Where(x => x.ReadingCategory == ReadingCategory.Global &&
x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId &&
@ -354,8 +357,6 @@ namespace IRaCIS.Application.Services
if (criterionType == CriterionType.PCWG3)
{
// PCWG3 访视点肿瘤评估 采用上一次全局阅片的答案 如果没有 就采用访视的答案
// 找到上一个全局阅片

View File

@ -425,8 +425,14 @@ namespace IRaCIS.Application.Services
taskQuery = _visitTaskRepository.Where(x => taskInfo.PastResultTaskIdList.Contains(x.Id));
}
var readingPastResultList = await taskQuery
.ProjectTo<GetReadingPastResultListOutDto>(_mapper.ConfigurationProvider).OrderBy(x => x.VisitTaskNum).ToListAsync();
var readingPastResultList = await taskQuery.Select(x => new GetReadingPastResultListOutDto() {
VisitTaskId = x.Id,
TaskBlindName = x.TaskBlindName,
TaskName = x.TaskName,
VisitTaskNum = x.VisitTaskNum,
JudgeResultArm = x.JudgeResultTask == null?null:x.JudgeResultTask.ArmEnum,
}).OrderBy(x => x.VisitTaskNum).ToListAsync();
return readingPastResultList;
}

View File

@ -204,8 +204,9 @@ namespace IRaCIS.Core.Application.Service
.ForMember(d => d.QuestionName, u => u.MapFrom(s => isEn_Us ? s.QuestionEnName : s.QuestionName))
.ForMember(x=>x.Id, y=>y.MapFrom(z=>z.Id));
CreateMap<VisitTask, GetReadingPastResultListOutDto>()
.ForMember(x => x.VisitTaskId, y => y.MapFrom(z => z.Id));
//CreateMap<VisitTask, GetReadingPastResultListOutDto>()
// .ForMember(x => x.VisitTaskId, y => y.MapFrom(z => z.Id))
// .ForMember(x => x.JudgeResultArm, y => y.MapFrom(z => (z.JudgeResultTask==null?null:z.JudgeResultTask.ArmEnum)));
#endregion
#region 医学审核

View File

@ -202,11 +202,15 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
foreach (var task in taskInfoList)
{
var answer = answers.Where(x => x.VisitTaskId == task.VisitTaskId && x.ReadingQuestionTrialId == question.QuestionId).FirstOrDefault();
question.Answer.Add(new TaskQuestionAnswer()
{
Answer = answers.Where(x => x.VisitTaskId == task.VisitTaskId && x.ReadingQuestionTrialId == question.QuestionId).Select(x => x.Answer).FirstIsNullReturnEmpty(),
Answer = answer == null ? string.Empty : answer.Answer,
IsGlobalChange = answer == null ? false : answer.IsGlobalChange,
GlobalChangeAnswer = answer == null ? string.Empty : answer.GlobalChangeAnswer,
TaskName = task.TaskName,
VisitTaskId = task.VisitTaskId,
});
}

View File

@ -180,11 +180,15 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
foreach (var task in taskInfoList)
{
var answer = answers.Where(x => x.VisitTaskId == task.VisitTaskId && x.ReadingQuestionTrialId == question.QuestionId).FirstOrDefault();
question.Answer.Add(new TaskQuestionAnswer()
{
Answer = answers.Where(x => x.VisitTaskId == task.VisitTaskId && x.ReadingQuestionTrialId == question.QuestionId).Select(x => x.Answer).FirstIsNullReturnEmpty(),
Answer = answer==null?string.Empty:answer.Answer,
IsGlobalChange = answer == null ? false : answer.IsGlobalChange,
GlobalChangeAnswer = answer == null ? string.Empty : answer.GlobalChangeAnswer,
TaskName = task.TaskName,
VisitTaskId = task.VisitTaskId,
});
}

View File

@ -192,11 +192,15 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
foreach (var task in taskInfoList)
{
var answer = answers.Where(x => x.VisitTaskId == task.VisitTaskId && x.ReadingQuestionTrialId == question.QuestionId).FirstOrDefault();
question.Answer.Add(new TaskQuestionAnswer()
{
Answer = answers.Where(x => x.VisitTaskId == task.VisitTaskId && x.ReadingQuestionTrialId == question.QuestionId).Select(x => x.Answer).FirstIsNullReturnEmpty(),
Answer = answer == null ? string.Empty : answer.Answer,
IsGlobalChange = answer == null ? false : answer.IsGlobalChange,
GlobalChangeAnswer = answer == null ? string.Empty : answer.GlobalChangeAnswer,
TaskName = task.TaskName,
VisitTaskId = task.VisitTaskId,
});
}

View File

@ -54,6 +54,12 @@ namespace IRaCIS.Core.Domain.Models
/// </summary>
public string GlobalChangeAnswer { get; set; }
/// <summary>
/// 全局阅片是否修改
/// </summary>
public bool IsGlobalChange { get; set; } = false;
/// <summary>
/// 创建人
/// </summary>

View File

@ -302,7 +302,7 @@ namespace IRaCIS.Core.Domain.Models
public DateTime? TrialFinishTime { get; set; }
public int? DigitPlaces { get; set; } = 2;
public int? DigitPlaces { get; set; } = 1;
public bool IsTrialProcessConfirmed { get; set; }