HIR 申请重阅,如果后续任务已经拷贝了表单,申请当前任务后,后续拷贝的表单删除
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
5783f5836a
commit
282c0b40c2
|
@ -1051,9 +1051,9 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
|
|||
.WhereIf(!string.IsNullOrEmpty(inQuery.TaskName), t => t.OriginalReReadingTask.TaskName.Contains(inQuery.TaskName) || t.NewReReadingTask.TaskBlindName.Contains(inQuery.TaskName))
|
||||
.WhereIf(!string.IsNullOrEmpty(inQuery.SubjectCode), t => (t.OriginalReReadingTask.Subject.Code.Contains(inQuery.SubjectCode) && t.OriginalReReadingTask.IsAnalysisCreate == false) || (t.OriginalReReadingTask.BlindSubjectCode.Contains(inQuery.SubjectCode) && t.OriginalReReadingTask.IsAnalysisCreate))
|
||||
|
||||
.WhereIf(!string.IsNullOrEmpty(inQuery.SubjectName), t => t.OriginalReReadingTask.Subject.ShortName.Contains(inQuery.SubjectName ))
|
||||
.WhereIf(!string.IsNullOrEmpty(inQuery.SubjectName), t => t.OriginalReReadingTask.Subject.ShortName.Contains(inQuery.SubjectName))
|
||||
|
||||
|
||||
|
||||
.WhereIf(inQuery.BeginAllocateDate != null, t => t.OriginalReReadingTask.AllocateTime > inQuery.BeginAllocateDate)
|
||||
.WhereIf(inQuery.EndAllocateDate != null, t => t.OriginalReReadingTask.AllocateTime < inQuery.EndAllocateDate!.Value.AddDays(1))
|
||||
|
||||
|
@ -1146,9 +1146,9 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
|
|||
TrialReadingCriterionId = trialReadingCriterionId,
|
||||
SubjectCode = inQuery.SubjectCode,
|
||||
|
||||
SubjectName=inQuery.SubjectName,
|
||||
PatientIdStr=inQuery.PatientIdStr,
|
||||
PatientName=inQuery.PatientName,
|
||||
SubjectName = inQuery.SubjectName,
|
||||
PatientIdStr = inQuery.PatientIdStr,
|
||||
PatientName = inQuery.PatientName,
|
||||
|
||||
PageIndex = inQuery.PageIndex,
|
||||
PageSize = inQuery.PageSize,
|
||||
|
@ -1522,7 +1522,9 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
|
|||
|
||||
[HttpPost]
|
||||
[UnitOfWork]
|
||||
public async Task<IResponseOutput> AIRReReading(AIRReReadingCommand command, [FromServices] IVisitTaskHelpeService _visitTaskCommonService)
|
||||
public async Task<IResponseOutput> AIRReReading(AIRReReadingCommand command,
|
||||
[FromServices] IVisitTaskHelpeService _visitTaskCommonService,
|
||||
[FromServices] IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository)
|
||||
{
|
||||
if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.AIR)
|
||||
{
|
||||
|
@ -1592,6 +1594,28 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
|
|||
RequestReReadingResultEnum = RequestReReadingResult.Agree,
|
||||
ConfirmReReadingList = new List<ConfirmReReadingDTO>() { new ConfirmReReadingDTO() { Id = requestRecord.Id, OriginalReReadingTaskId = visitTaskId } }
|
||||
}, _visitTaskCommonService);
|
||||
|
||||
//有序SR 申请重阅的时候,把后续任务的拷贝表单要清理掉
|
||||
|
||||
var taskInfo = _visitTaskRepository.Where(t => t.Id == visitTaskId).Select(t => new { t.TrialReadingCriterion.IsReadingTaskViewInOrder, t.TrialReadingCriterionId, t.SubjectId, t.VisitTaskNum }).FirstOrDefault();
|
||||
|
||||
if (taskInfo.IsReadingTaskViewInOrder == ReadingOrder.InOrder)
|
||||
{
|
||||
|
||||
var afterTaskIdList = _visitTaskRepository.Where(t => t.SubjectId == taskInfo.SubjectId && t.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId
|
||||
&& t.ReadingCategory == ReadingCategory.Visit && t.VisitTaskNum > taskInfo.VisitTaskNum).Select(t => t.Id).ToList();
|
||||
|
||||
await _readingCustomTagRepository.BatchDeleteNoTrackingAsync(t => afterTaskIdList.Contains(t.VisitTaskId));
|
||||
|
||||
await _readingTaskQuestionMarkRepository.BatchDeleteNoTrackingAsync(t => afterTaskIdList.Contains(t.VisitTaskId));
|
||||
|
||||
await _readingTaskQuestionAnswerRepository.BatchDeleteNoTrackingAsync(t => afterTaskIdList.Contains(t.VisitTaskId));
|
||||
|
||||
await _readingTableAnswerRowInfoRepository.BatchDeleteNoTrackingAsync(t => afterTaskIdList.Contains(t.VisitTaskId));
|
||||
|
||||
await _readingTableQuestionAnswerRepository.BatchDeleteNoTrackingAsync(t => afterTaskIdList.Contains(t.VisitTaskId));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2876,7 +2900,7 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
|
|||
|
||||
var criterionConfig = (await _trialReadingCriterionRepository.Where(x => x.Id == filterObj.TrialReadingCriterionId).Select(x => new { x.ReadingTool, x.CriterionType, x.IsAdditionalAssessment, x.IsReadingTaskViewInOrder }).FirstOrDefaultAsync()).IfNullThrowException();
|
||||
|
||||
Expression<Func<VisitTask, bool>> filterExpression = t => t.TrialId == trialId && t.SubjectId == filterObj.SubjectId && (t.TaskState == TaskState.Effect || t.TaskState == TaskState.Freeze) && t.TaskAllocationState == TaskAllocationState.Allocated;
|
||||
Expression<Func<VisitTask, bool>> filterExpression = t => t.TrialId == trialId && t.SubjectId == filterObj.SubjectId && (t.TaskState == TaskState.Effect || t.TaskState == TaskState.Freeze);
|
||||
|
||||
//是否是一致性分析任务 (一致性分析的任务 不会产生裁判 肿瘤学 仅仅有生成的访视和全局)
|
||||
|
||||
|
|
Loading…
Reference in New Issue