肿瘤学修改
							parent
							
								
									36d2203e4c
								
							
						
					
					
						commit
						03f514d5fe
					
				| 
						 | 
					@ -376,41 +376,75 @@ namespace IRaCIS.Application.Services
 | 
				
			||||||
            if (readModuleInfo != null)
 | 
					            if (readModuleInfo != null)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                // 先找到对应的全局阅片模块Id
 | 
					                // 先找到对应的全局阅片模块Id
 | 
				
			||||||
                var globalreadModuleId = await _readModuleRepository.Where(x => x.SubjectVisitId == readModuleInfo.SubjectVisitId &&
 | 
					                var globalreadModule = await _readModuleRepository.Where(x => x.SubjectVisitId == readModuleInfo.SubjectVisitId &&
 | 
				
			||||||
                x.TrialReadingCriterionId== readModuleInfo.TrialReadingCriterionId&&
 | 
					                x.TrialReadingCriterionId== readModuleInfo.TrialReadingCriterionId&&
 | 
				
			||||||
                x.ModuleType == ModuleTypeEnum.Global).Include(x=>x.SubjectVisit).Select(x => x.Id).FirstOrDefaultAsync();
 | 
					                x.ModuleType == ModuleTypeEnum.Global).Include(x=>x.SubjectVisit).FirstOrDefaultAsync();
 | 
				
			||||||
 | 
									// 获取系统配置
 | 
				
			||||||
                // 找到一个全局阅片任务是否有裁判任务
 | 
									var readingType = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == readModuleInfo.TrialReadingCriterionId).Select(x => x.ReadingType).FirstOrDefaultAsync();
 | 
				
			||||||
 | 
									if (globalreadModule != null)
 | 
				
			||||||
                var judgeVisitTaskId = await _visitTaskRepository.Where(x => x.SouceReadModuleId == globalreadModuleId && x.TaskState == TaskState.Effect
 | 
					 | 
				
			||||||
                && x.ReadingCategory == ReadingCategory.Global
 | 
					 | 
				
			||||||
                         && x.ReadingTaskState == ReadingTaskState.HaveSigned).Select(x => x.JudgeVisitTaskId).FirstOrDefaultAsync();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                // 要判断是否为老裁判任务的Id
 | 
					 | 
				
			||||||
                if (judgeVisitTaskId != null)
 | 
					 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
                    // 如果不存在有效的裁判
 | 
					                    // 找到一个全局阅片任务是否有裁判任务
 | 
				
			||||||
                    if (!(await _visitTaskRepository.AnyAsync(x => x.Id == judgeVisitTaskId && x.TaskState == TaskState.Effect)))
 | 
					
 | 
				
			||||||
 | 
					                    var judgeVisitTaskId = await _visitTaskRepository.Where(x => x.SouceReadModuleId == globalreadModule.Id && x.TaskState == TaskState.Effect
 | 
				
			||||||
 | 
					                    && x.ReadingCategory == ReadingCategory.Global
 | 
				
			||||||
 | 
					                             && x.ReadingTaskState == ReadingTaskState.HaveSigned).Select(x => x.JudgeVisitTaskId).FirstOrDefaultAsync();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    // 要判断是否为老裁判任务的Id
 | 
				
			||||||
 | 
					                    if (judgeVisitTaskId != null)
 | 
				
			||||||
                    {
 | 
					                    {
 | 
				
			||||||
                        judgeVisitTaskId = null;
 | 
					                        // 如果不存在有效的裁判
 | 
				
			||||||
 | 
					                        if (!(await _visitTaskRepository.AnyAsync(x => x.Id == judgeVisitTaskId && x.TaskState == TaskState.Effect)))
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            judgeVisitTaskId = null;
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					               
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    // 判断阅片是否完成
 | 
				
			||||||
 | 
					                    if (judgeVisitTaskId == null && (await _visitTaskRepository.Where(x => x.SouceReadModuleId == globalreadModule.Id && x.TaskState == TaskState.Effect && x.ReadingCategory == ReadingCategory.Global
 | 
				
			||||||
 | 
					                             && x.ReadingTaskState == ReadingTaskState.HaveSigned && !x.IsAnalysisCreate && x.TrialReadingCriterionId == readModuleInfo.TrialReadingCriterionId
 | 
				
			||||||
 | 
					                           ).CountAsync() == (int)readingType))
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        finishReading = true;
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                    else if (judgeVisitTaskId != null && (await _visitTaskRepository.AnyAsync(x => x.Id == judgeVisitTaskId.Value && x.JudgeResultTaskId != null && x.ReadingTaskState == ReadingTaskState.HaveSigned)))
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        finishReading = true;
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                // 获取系统配置
 | 
					                else {
 | 
				
			||||||
                var readingType = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == readModuleInfo.TrialReadingCriterionId).Select(x => x.ReadingType).FirstOrDefaultAsync();
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                // 判断阅片是否完成
 | 
										var judgeVisitTaskId = await _visitTaskRepository.Where(x => x.SourceSubjectVisitId == readModuleInfo.SubjectVisitId && x.TaskState == TaskState.Effect
 | 
				
			||||||
                if (judgeVisitTaskId == null && (await _visitTaskRepository.Where(x => x.SouceReadModuleId == globalreadModuleId && x.TaskState == TaskState.Effect && x.ReadingCategory == ReadingCategory.Global
 | 
					                            &&x.TrialReadingCriterionId== readModuleInfo.TrialReadingCriterionId
 | 
				
			||||||
                         && x.ReadingTaskState == ReadingTaskState.HaveSigned && !x.IsAnalysisCreate && x.TrialReadingCriterionId == readModuleInfo.TrialReadingCriterionId
 | 
												&& x.ReadingTaskState == ReadingTaskState.HaveSigned).Select(x => x.JudgeVisitTaskId).FirstOrDefaultAsync();
 | 
				
			||||||
                       ).CountAsync() == (int)readingType))
 | 
										// 要判断是否为老裁判任务的Id
 | 
				
			||||||
                {
 | 
										if (judgeVisitTaskId != null)
 | 
				
			||||||
 | 
										{
 | 
				
			||||||
 | 
											// 如果不存在有效的裁判
 | 
				
			||||||
 | 
											if (!(await _visitTaskRepository.AnyAsync(x => x.Id == judgeVisitTaskId && x.TaskState == TaskState.Effect)))
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												judgeVisitTaskId = null;
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										// 判断阅片是否完成
 | 
				
			||||||
 | 
										if (judgeVisitTaskId == null && (await _visitTaskRepository.Where(x => x.SourceSubjectVisitId == readModuleInfo.SubjectVisitId && x.TaskState == TaskState.Effect 
 | 
				
			||||||
 | 
												 && x.ReadingTaskState == ReadingTaskState.HaveSigned && !x.IsAnalysisCreate && x.TrialReadingCriterionId == readModuleInfo.TrialReadingCriterionId
 | 
				
			||||||
 | 
											   ).CountAsync() == (int)readingType))
 | 
				
			||||||
 | 
										{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
											finishReading = true;
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
										else if (judgeVisitTaskId != null && (await _visitTaskRepository.AnyAsync(x => x.Id == judgeVisitTaskId.Value && x.JudgeResultTaskId != null && x.ReadingTaskState == ReadingTaskState.HaveSigned)))
 | 
				
			||||||
 | 
										{
 | 
				
			||||||
 | 
											finishReading = true;
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
               
 | 
					               
 | 
				
			||||||
                    finishReading = true;
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
                else if (judgeVisitTaskId != null && (await _visitTaskRepository.AnyAsync(x => x.Id == judgeVisitTaskId.Value&&x.JudgeResultTaskId!=null && x.ReadingTaskState == ReadingTaskState.HaveSigned)))
 | 
					 | 
				
			||||||
                {
 | 
					 | 
				
			||||||
                    finishReading = true;
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                if (finishReading)
 | 
					                if (finishReading)
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue