Uat_Study
parent
6192c2e144
commit
a81bb9e3b9
|
@ -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
|
return (result, new
|
||||||
{
|
{
|
||||||
SubjectCode = await _subjectRepository.Where(x => x.Id == inDto.SubjectId).Select(x => x.Code).FirstOrDefaultAsync(),
|
SubjectCode = await _subjectRepository.Where(x => x.Id == inDto.SubjectId).Select(x => x.Code).FirstOrDefaultAsync(),
|
||||||
|
|
|
@ -156,7 +156,14 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
|
|
||||||
public string Answer { get; set; }
|
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 string TaskBlindName { get; set; }
|
||||||
|
|
||||||
public decimal VisitTaskNum { get; set; }
|
public decimal VisitTaskNum { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
public Arm? JudgeResultArm { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class GetJudgeReadingPastResultListInDto
|
public class GetJudgeReadingPastResultListInDto
|
||||||
|
|
|
@ -51,9 +51,12 @@ namespace IRaCIS.Application.Services
|
||||||
foreach (var answer in item.AnswerList)
|
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 _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 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();
|
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 &&
|
var lastGlobalTask = await _visitTaskRepository.Where(x => x.ReadingCategory == ReadingCategory.Global &&
|
||||||
x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId &&
|
x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId &&
|
||||||
|
@ -354,8 +357,6 @@ namespace IRaCIS.Application.Services
|
||||||
if (criterionType == CriterionType.PCWG3)
|
if (criterionType == CriterionType.PCWG3)
|
||||||
{
|
{
|
||||||
|
|
||||||
// PCWG3 访视点肿瘤评估 采用上一次全局阅片的答案 如果没有 就采用访视的答案
|
|
||||||
|
|
||||||
|
|
||||||
// 找到上一个全局阅片
|
// 找到上一个全局阅片
|
||||||
|
|
||||||
|
|
|
@ -425,8 +425,14 @@ namespace IRaCIS.Application.Services
|
||||||
taskQuery = _visitTaskRepository.Where(x => taskInfo.PastResultTaskIdList.Contains(x.Id));
|
taskQuery = _visitTaskRepository.Where(x => taskInfo.PastResultTaskIdList.Contains(x.Id));
|
||||||
}
|
}
|
||||||
|
|
||||||
var readingPastResultList = await taskQuery
|
var readingPastResultList = await taskQuery.Select(x => new GetReadingPastResultListOutDto() {
|
||||||
.ProjectTo<GetReadingPastResultListOutDto>(_mapper.ConfigurationProvider).OrderBy(x => x.VisitTaskNum).ToListAsync();
|
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;
|
return readingPastResultList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -204,8 +204,9 @@ namespace IRaCIS.Core.Application.Service
|
||||||
.ForMember(d => d.QuestionName, u => u.MapFrom(s => isEn_Us ? s.QuestionEnName : s.QuestionName))
|
.ForMember(d => d.QuestionName, u => u.MapFrom(s => isEn_Us ? s.QuestionEnName : s.QuestionName))
|
||||||
.ForMember(x=>x.Id, y=>y.MapFrom(z=>z.Id));
|
.ForMember(x=>x.Id, y=>y.MapFrom(z=>z.Id));
|
||||||
|
|
||||||
CreateMap<VisitTask, GetReadingPastResultListOutDto>()
|
//CreateMap<VisitTask, GetReadingPastResultListOutDto>()
|
||||||
.ForMember(x => x.VisitTaskId, y => y.MapFrom(z => z.Id));
|
// .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
|
#endregion
|
||||||
|
|
||||||
#region 医学审核
|
#region 医学审核
|
||||||
|
|
|
@ -202,11 +202,15 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
foreach (var task in taskInfoList)
|
foreach (var task in taskInfoList)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
var answer = answers.Where(x => x.VisitTaskId == task.VisitTaskId && x.ReadingQuestionTrialId == question.QuestionId).FirstOrDefault();
|
||||||
question.Answer.Add(new TaskQuestionAnswer()
|
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,
|
TaskName = task.TaskName,
|
||||||
VisitTaskId = task.VisitTaskId,
|
VisitTaskId = task.VisitTaskId,
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -180,11 +180,15 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
foreach (var task in taskInfoList)
|
foreach (var task in taskInfoList)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
var answer = answers.Where(x => x.VisitTaskId == task.VisitTaskId && x.ReadingQuestionTrialId == question.QuestionId).FirstOrDefault();
|
||||||
question.Answer.Add(new TaskQuestionAnswer()
|
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,
|
TaskName = task.TaskName,
|
||||||
VisitTaskId = task.VisitTaskId,
|
VisitTaskId = task.VisitTaskId,
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -192,11 +192,15 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
foreach (var task in taskInfoList)
|
foreach (var task in taskInfoList)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
var answer = answers.Where(x => x.VisitTaskId == task.VisitTaskId && x.ReadingQuestionTrialId == question.QuestionId).FirstOrDefault();
|
||||||
question.Answer.Add(new TaskQuestionAnswer()
|
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,
|
TaskName = task.TaskName,
|
||||||
VisitTaskId = task.VisitTaskId,
|
VisitTaskId = task.VisitTaskId,
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -54,6 +54,12 @@ namespace IRaCIS.Core.Domain.Models
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string GlobalChangeAnswer { get; set; }
|
public string GlobalChangeAnswer { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 全局阅片是否修改
|
||||||
|
/// </summary>
|
||||||
|
public bool IsGlobalChange { get; set; } = false;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 创建人
|
/// 创建人
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -302,7 +302,7 @@ namespace IRaCIS.Core.Domain.Models
|
||||||
public DateTime? TrialFinishTime { get; set; }
|
public DateTime? TrialFinishTime { get; set; }
|
||||||
|
|
||||||
|
|
||||||
public int? DigitPlaces { get; set; } = 2;
|
public int? DigitPlaces { get; set; } = 1;
|
||||||
|
|
||||||
|
|
||||||
public bool IsTrialProcessConfirmed { get; set; }
|
public bool IsTrialProcessConfirmed { get; set; }
|
||||||
|
|
Loading…
Reference in New Issue