修改提交接口
parent
2842791af4
commit
afe5f1e58f
|
@ -9259,7 +9259,7 @@
|
|||
</member>
|
||||
<member name="T:IRaCIS.Core.Application.Triggers.VisitTaskIsFrontTaskNeedSignButNotSignTrigger">
|
||||
<summary>
|
||||
因为可能先一致性核查通过,生成其他标准的任务了,新签名的标准也需要产生任务
|
||||
维护 IsFrontTaskNeedSignButNotSign 字段 另外附加评估结果
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.MediatR.Handlers.AnonymizeCacheHandler.#ctor(IRaCIS.Core.Infra.EFCore.IRepository,EasyCaching.Core.IEasyCachingProvider)">
|
||||
|
|
|
@ -412,6 +412,8 @@ namespace IRaCIS.Core.Application.Service.Common
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 阅片期信息表
|
||||
/// </summary>
|
||||
|
|
|
@ -32,7 +32,10 @@ namespace IRaCIS.Core.Application.ViewModel
|
|||
public string TrialSiteCode { get; set; }
|
||||
public SubjectStatus SubjectStatus { get; set; }
|
||||
|
||||
public List<EvaluationInfo> EvaluationList { get; set; }
|
||||
public List<EvaluationInfo> FinalEvaluationList { get; set; }
|
||||
|
||||
|
||||
public List<EvaluationInfo> ReadingEvaluationList { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -65,11 +65,15 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
var resultTrialReadingCriterionId = Guid.Empty;
|
||||
|
||||
var curentCriterionType = CriterionType.NoCriterion;
|
||||
|
||||
//BM 需要找基线 两个人做的结果
|
||||
if (trialReadingCritionList.First(t => t.Id == inQuery.TrialReadingCriterionId).CriterionType == CriterionType.RECIST1Pointt1_MB)
|
||||
{
|
||||
|
||||
resultTrialReadingCriterionId = trialReadingCritionList.First(t => t.CriterionType == CriterionType.RECIST1Point1).Id;
|
||||
|
||||
curentCriterionType = CriterionType.RECIST1Pointt1_MB;
|
||||
}
|
||||
|
||||
|
||||
|
@ -96,16 +100,43 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
IsJoinEvaluation = subjectCriteriaEvaluation.IsJoinEvaluation,
|
||||
|
||||
EvaluationList=subject.SubjectAdditionalEvaluationResult.Where(t=>t.IsFinalResult && t.TrialReadingCriterionId==resultTrialReadingCriterionId).Select(u=>new EvaluationInfo()
|
||||
{ Answer=u.Answer,FinalTranslateDictionaryCode=u.FinalTranslateDictionaryCode,QuestioName=u.TrialReadingQuestion .QuestionName,QuestioNameEn=u.TrialReadingQuestion.QuestionEnName}).ToList()
|
||||
|
||||
ReadingEvaluationList= subject.ReadingTaskQuestionAnswerList
|
||||
.Where(t=>t.ReadingQuestionCriterionTrialId == resultTrialReadingCriterionId && t.ReadingQuestionTrial.IsAdditional==true && t.ReadingQuestionTrial.Type!="group" && t.VisitTask.SourceSubjectVisit.IsBaseLine)
|
||||
.Select(u=>new EvaluationInfo()
|
||||
{
|
||||
Answer=u.Answer,
|
||||
QuestioName=u.ReadingQuestionTrial.QuestionName,
|
||||
QuestioNameEn=u.ReadingQuestionTrial.QuestionEnName,
|
||||
FinalTranslateDictionaryCode=u.ReadingQuestionTrial.DictionaryCode
|
||||
}).ToList()
|
||||
|
||||
//EvaluationList=subject
|
||||
//.SubjectAdditionalEvaluationResult
|
||||
//.Where(t=>t.IsFinalResult && t.TrialReadingCriterionId==resultTrialReadingCriterionId)
|
||||
//.Select(u=>new EvaluationInfo()
|
||||
//{ Answer=u.Answer,FinalTranslateDictionaryCode=u.FinalTranslateDictionaryCode,QuestioName=u.TrialReadingQuestion .QuestionName,QuestioNameEn=u.TrialReadingQuestion.QuestionEnName}).ToList()
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
var pageList = await subjectCriteriaEvaluationQueryable.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, inQuery.SortField == string.Empty ? nameof(SubjectCriteriaEvaluationView.SubjectCode) : inQuery.SortField, inQuery.Asc);
|
||||
|
||||
switch (curentCriterionType)
|
||||
{
|
||||
|
||||
case CriterionType.RECIST1Pointt1_MB:
|
||||
|
||||
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
return pageList;
|
||||
}
|
||||
|
||||
|
|
|
@ -254,6 +254,8 @@ namespace IRaCIS.Core.Application.Service
|
|||
// .ForMember(d => d.SubjectCode, u => u.MapFrom(s => s.subject.Code))
|
||||
// .ForMember(d => d.SubjectStatus, u => u.MapFrom(s => s.subject.Status));
|
||||
|
||||
|
||||
CreateMap<SubjectCriteriaEvaluationAddOrEdit, SubjectCriteriaEvaluation>().ReverseMap();
|
||||
CreateMap<SubjectCriteriaEvaluation, SubjectCriteriaEvaluationView>().ReverseMap();
|
||||
CreateMap<SubjectCriteriaEvaluationVisitFilter, SubjectCriteriaEvaluationVisitFilterAddOrEdit>().ReverseMap();
|
||||
|
||||
|
|
|
@ -10,21 +10,34 @@ using System.Linq.Expressions;
|
|||
namespace IRaCIS.Core.Application.Triggers
|
||||
{
|
||||
/// <summary>
|
||||
/// 因为可能先一致性核查通过,生成其他标准的任务了,新签名的标准也需要产生任务
|
||||
/// 维护 IsFrontTaskNeedSignButNotSign 字段 另外附加评估结果
|
||||
/// </summary>
|
||||
public class VisitTaskIsFrontTaskNeedSignButNotSignTrigger : IAfterSaveTrigger<VisitTask>
|
||||
{
|
||||
|
||||
private readonly IRepository<VisitTask> _visitTaskRepository;
|
||||
private readonly IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository;
|
||||
|
||||
private readonly IRepository<ReadingQuestionTrial> _trialReadingQuestionRepository;
|
||||
|
||||
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
|
||||
|
||||
private readonly IRepository<SubjectAdditionalEvaluationResult> _subjectAdditionalEvaluationResultRepository;
|
||||
|
||||
|
||||
|
||||
public VisitTaskIsFrontTaskNeedSignButNotSignTrigger(
|
||||
|
||||
IRepository<VisitTask> visitTaskRepository)
|
||||
IRepository<VisitTask> visitTaskRepository, IRepository<ReadingQuestionCriterionTrial> trialReadingCriterionRepository, IRepository<ReadingQuestionTrial> trialReadingQuestionRepository
|
||||
, IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository, IRepository<SubjectAdditionalEvaluationResult> subjectAdditionalEvaluationResultRepository)
|
||||
{
|
||||
|
||||
_trialReadingCriterionRepository = trialReadingCriterionRepository;
|
||||
|
||||
_visitTaskRepository = visitTaskRepository;
|
||||
_trialReadingQuestionRepository = trialReadingQuestionRepository;
|
||||
|
||||
_readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
|
||||
_subjectAdditionalEvaluationResultRepository = subjectAdditionalEvaluationResultRepository;
|
||||
}
|
||||
|
||||
|
||||
|
@ -67,6 +80,110 @@ namespace IRaCIS.Core.Application.Triggers
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
#region 附加评估 暂时废弃
|
||||
// //从未签名状态 改为签名状态时 判断是否进行了附加评估,将附加评估的结果冗余
|
||||
// if (context.ChangeType == ChangeType.Modified && visitTask.ReadingTaskState == ReadingTaskState.HaveSigned && context.UnmodifiedEntity.ReadingTaskState != ReadingTaskState.HaveSigned)
|
||||
// {
|
||||
|
||||
// var criterion = _trialReadingCriterionRepository.Where(t => t.Id == visitTask.TrialReadingCriterionId).FirstOrDefault();
|
||||
|
||||
// //如果是附加评估
|
||||
// if (criterion.IsAdditionalAssessment)
|
||||
// {
|
||||
|
||||
|
||||
// if (visitTask.ReadingCategory == ReadingCategory.Visit)
|
||||
// {
|
||||
|
||||
|
||||
// switch (criterion.CriterionType)
|
||||
// {
|
||||
// case CriterionType.RECIST1Point1:
|
||||
// var isbaseLine = _visitTaskRepository.Where(t => t.Id == visitTask.Id).Select(t => t.SourceSubjectVisit.IsBaseLine).FirstOrDefault();
|
||||
|
||||
|
||||
|
||||
// if (isbaseLine)
|
||||
// {
|
||||
// var currentTaskAdditionarlAnswer = await _readingTaskQuestionAnswerRepository.Where(t => t.VisitTaskId == visitTask.Id &&
|
||||
// t.ReadingQuestionTrial.IsAdditional == true && t.ReadingQuestionTrial.Type != "group"
|
||||
// ).Include(t => t.ReadingQuestionTrial).FirstOrDefaultAsync();
|
||||
|
||||
|
||||
// //双重阅片完成了
|
||||
// if (criterion.ReadingType == ReadingMethod.Double &&
|
||||
//(_visitTaskRepository.Where(t => t.SubjectId == visitTask.SubjectId && t.TaskName == visitTask.TaskName && t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned).Count() == 2)
|
||||
// )
|
||||
// {
|
||||
|
||||
// var otherTaskId = await _visitTaskRepository.Where(t => t.SubjectId == visitTask.SubjectId && t.TaskName == visitTask.TaskName && t.TaskState == TaskState.Effect && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.Id != visitTask.Id)
|
||||
// .Select(t => t.Id).FirstOrDefaultAsync();
|
||||
|
||||
|
||||
// var otherTaskAdditionarlAnswer = await _readingTaskQuestionAnswerRepository.Where(t => t.VisitTaskId == otherTaskId &&
|
||||
// t.ReadingQuestionTrial.IsAdditional == true && t.ReadingQuestionTrial.Type != "group"
|
||||
// ).Include(t => t.ReadingQuestionTrial).FirstOrDefaultAsync();
|
||||
|
||||
|
||||
|
||||
// await _subjectAdditionalEvaluationResultRepository.AddAsync(new SubjectAdditionalEvaluationResult()
|
||||
// {
|
||||
// TrialReadingCriterionId = visitTask.TrialReadingCriterionId,
|
||||
// IsFinalResult = true,
|
||||
// SubjectId = visitTask.SubjectId,
|
||||
// TrialReadingQuestionId = currentTaskAdditionarlAnswer.ReadingQuestionTrialId,
|
||||
// FinalAnswer = currentTaskAdditionarlAnswer.Answer,
|
||||
// FinalTranslateDictionaryCode = currentTaskAdditionarlAnswer.ReadingQuestionTrial.DictionaryCode,
|
||||
|
||||
// });
|
||||
|
||||
// }
|
||||
// if (criterion.ReadingType == ReadingMethod.Single)
|
||||
// {
|
||||
|
||||
// await _subjectAdditionalEvaluationResultRepository.AddAsync(new SubjectAdditionalEvaluationResult()
|
||||
// {
|
||||
// TrialReadingCriterionId = visitTask.TrialReadingCriterionId,
|
||||
// IsFinalResult = true,
|
||||
// SubjectId = visitTask.SubjectId,
|
||||
// TrialReadingQuestionId = currentTaskAdditionarlAnswer.ReadingQuestionTrialId,
|
||||
// FinalAnswer = currentTaskAdditionarlAnswer.Answer,
|
||||
// FinalTranslateDictionaryCode = currentTaskAdditionarlAnswer.ReadingQuestionTrial.DictionaryCode,
|
||||
|
||||
// });
|
||||
|
||||
// }
|
||||
|
||||
|
||||
|
||||
// }
|
||||
|
||||
// break;
|
||||
// default:
|
||||
// break;
|
||||
// }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -63,9 +63,13 @@ namespace IRaCIS.Core.Domain.Models
|
|||
public DateTime UpdateTime { get; set; }
|
||||
|
||||
|
||||
|
||||
[JsonIgnore]
|
||||
public List<SubjectCriteriaEvaluationVisitFilter> SubjectCriteriaEvaluationVisitFilterList { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
///// <summary>
|
||||
// /// 是否影像筛选
|
||||
// /// </summary>
|
||||
|
|
|
@ -58,22 +58,28 @@ namespace IRaCIS.Core.Domain.Models
|
|||
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 影像确认结果
|
||||
/// </summary>
|
||||
public enum ImageDeterminationResultState
|
||||
{
|
||||
//待定
|
||||
None = 0,
|
||||
|
||||
|
||||
//通过
|
||||
Passed = 1,
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 影像筛选状态
|
||||
/// </summary>
|
||||
public enum ImageFilterState
|
||||
{
|
||||
//默认值 待筛选
|
||||
None = 0,
|
||||
|
||||
//已完成
|
||||
//筛选已完成
|
||||
Finished = 1
|
||||
}
|
||||
|
||||
|
|
|
@ -18,49 +18,25 @@ namespace IRaCIS.Core.Domain.Models
|
|||
public class TrialCriterionAdditionalAssessmentType : Entity, IAuditUpdate, IAuditAdd
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// TrialReadingCriterionId
|
||||
/// </summary>
|
||||
[Required]
|
||||
public Guid TrialReadingCriterionId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// CriterionType
|
||||
/// </summary>
|
||||
|
||||
public CriterionType CriterionType { get; set; }
|
||||
|
||||
|
||||
public AdditionalAssessmentType AdditionalAssessmentType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// IsSelected
|
||||
/// </summary>
|
||||
public bool? IsSelected { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// CreateTime
|
||||
/// </summary>
|
||||
[Required]
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// CreateUserId
|
||||
/// </summary>
|
||||
[Required]
|
||||
|
||||
public Guid CreateUserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// UpdateTime
|
||||
/// </summary>
|
||||
[Required]
|
||||
|
||||
public DateTime UpdateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// UpdateUserId
|
||||
/// </summary>
|
||||
[Required]
|
||||
|
||||
public Guid UpdateUserId { get; set; }
|
||||
|
||||
|
||||
|
|
|
@ -74,6 +74,8 @@ namespace IRaCIS.Core.Domain.Models
|
|||
public ReadingQuestionTrial ReadingQuestionTrial { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -33,6 +33,10 @@ namespace IRaCIS.Core.Domain.Models
|
|||
|
||||
public List<SubjectAdditionalEvaluationResult> SubjectAdditionalEvaluationResult { get; set; }
|
||||
|
||||
|
||||
[JsonIgnore]
|
||||
public List<ReadingTaskQuestionAnswer> ReadingTaskQuestionAnswerList { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
[ForeignKey("FinalSubjectVisitId")]
|
||||
public SubjectVisit FinalSubjectVisit { get; set; }
|
||||
|
|
Loading…
Reference in New Issue