Compare commits
3 Commits
b8ad8085cd
...
3ade13a922
Author | SHA1 | Date |
---|---|---|
|
3ade13a922 | |
|
a5fed78c19 | |
|
5207fef130 |
|
@ -523,6 +523,22 @@ namespace IRaCIS.Core.Application.Service
|
||||||
var readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadModuleId).FirstNotNullAsync();
|
var readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadModuleId).FirstNotNullAsync();
|
||||||
inDto.TrialReadingCriterionId = readModule.TrialReadingCriterionId;
|
inDto.TrialReadingCriterionId = readModule.TrialReadingCriterionId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 有全局就查全局 有肿瘤学就查肿瘤学
|
||||||
|
|
||||||
|
var clinicalDataLevelList = await _clinicalDataTrialSetRepository.Where(x => x.TrialId == inDto.TrialId && x.IsConfirm && x.UploadRole == UploadRole.CRC && x.ClinicalUploadType == ClinicalUploadType.Structuring).Select(x => x.ClinicalDataLevel).Distinct().ToListAsync();
|
||||||
|
|
||||||
|
ReadingSetType? readingSetType = null;
|
||||||
|
if (clinicalDataLevelList.Contains(ClinicalLevel.ImageRead) && !clinicalDataLevelList.Contains(ClinicalLevel.OncologyRead))
|
||||||
|
{
|
||||||
|
readingSetType = ReadingSetType.ImageReading;
|
||||||
|
}
|
||||||
|
else if (clinicalDataLevelList.Contains(ClinicalLevel.OncologyRead) && !clinicalDataLevelList.Contains(ClinicalLevel.ImageRead))
|
||||||
|
{
|
||||||
|
readingSetType = ReadingSetType.TumorReading;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
var query = _readModuleRepository.Where(x => x.TrialId == inDto.TrialId)
|
var query = _readModuleRepository.Where(x => x.TrialId == inDto.TrialId)
|
||||||
.WhereIf(inDto.ReadModuleId != null, x => x.Id == inDto.ReadModuleId)
|
.WhereIf(inDto.ReadModuleId != null, x => x.Id == inDto.ReadModuleId)
|
||||||
.WhereIf(inDto.IsCRCConfirm != null, x => x.IsCRCConfirm == inDto.IsCRCConfirm)
|
.WhereIf(inDto.IsCRCConfirm != null, x => x.IsCRCConfirm == inDto.IsCRCConfirm)
|
||||||
|
@ -532,6 +548,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
.WhereIf(inDto.SubjectId != null, x => x.SubjectId == inDto.SubjectId)
|
.WhereIf(inDto.SubjectId != null, x => x.SubjectId == inDto.SubjectId)
|
||||||
.WhereIf(inDto.StartTime != null, x => x.SubjectVisit.LatestScanDate >= inDto.StartTime)
|
.WhereIf(inDto.StartTime != null, x => x.SubjectVisit.LatestScanDate >= inDto.StartTime)
|
||||||
.WhereIf(inDto.EndTime != null, x => x.SubjectVisit.LatestScanDate <= inDto.EndTime)
|
.WhereIf(inDto.EndTime != null, x => x.SubjectVisit.LatestScanDate <= inDto.EndTime)
|
||||||
|
.WhereIf(readingSetType != null, x => x.ReadingSetType== readingSetType)
|
||||||
.Select(x => new GetCRCConfirmListOutDto()
|
.Select(x => new GetCRCConfirmListOutDto()
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
|
@ -395,6 +395,9 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
|
|
||||||
public Arm ArmEnum { get; set; }
|
public Arm ArmEnum { get; set; }
|
||||||
|
|
||||||
|
public bool IsExistsClinicalData { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public MedicalReviewAuditState AuditState { get; set; }
|
public MedicalReviewAuditState AuditState { get; set; }
|
||||||
|
|
||||||
|
|
|
@ -33,6 +33,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
private readonly IReadingImageTaskService _iReadingImageTaskService;
|
private readonly IReadingImageTaskService _iReadingImageTaskService;
|
||||||
private readonly IRepository<User> _userTaskRepository;
|
private readonly IRepository<User> _userTaskRepository;
|
||||||
private readonly IVisitTaskService _visitTaskService;
|
private readonly IVisitTaskService _visitTaskService;
|
||||||
|
private readonly IReadingClinicalDataService _readingClinicalDataService;
|
||||||
private readonly IRepository<TaskMedicalReview> _taskMedicalReviewRepository;
|
private readonly IRepository<TaskMedicalReview> _taskMedicalReviewRepository;
|
||||||
private readonly IRepository<ReadingMedicalReviewDialog> _readingMedicalReviewDialogRepository;
|
private readonly IRepository<ReadingMedicalReviewDialog> _readingMedicalReviewDialogRepository;
|
||||||
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrial;
|
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrial;
|
||||||
|
@ -52,6 +53,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
IRepository<ReadingSystemCriterionDictionary> readingCriterionDictionaryRepository,
|
IRepository<ReadingSystemCriterionDictionary> readingCriterionDictionaryRepository,
|
||||||
IRepository<User> userTaskRepository,
|
IRepository<User> userTaskRepository,
|
||||||
IVisitTaskService visitTaskService,
|
IVisitTaskService visitTaskService,
|
||||||
|
IReadingClinicalDataService readingClinicalDataService,
|
||||||
IRepository<TaskMedicalReview> taskMedicalReviewRepository,
|
IRepository<TaskMedicalReview> taskMedicalReviewRepository,
|
||||||
IRepository<ReadingMedicalReviewDialog> readingMedicalReviewDialogRepository,
|
IRepository<ReadingMedicalReviewDialog> readingMedicalReviewDialogRepository,
|
||||||
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrial,
|
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrial,
|
||||||
|
@ -71,6 +73,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
this._readingCriterionDictionaryRepository = readingCriterionDictionaryRepository;
|
this._readingCriterionDictionaryRepository = readingCriterionDictionaryRepository;
|
||||||
this._userTaskRepository = userTaskRepository;
|
this._userTaskRepository = userTaskRepository;
|
||||||
this._visitTaskService = visitTaskService;
|
this._visitTaskService = visitTaskService;
|
||||||
|
this._readingClinicalDataService = readingClinicalDataService;
|
||||||
this._taskMedicalReviewRepository = taskMedicalReviewRepository;
|
this._taskMedicalReviewRepository = taskMedicalReviewRepository;
|
||||||
this._readingMedicalReviewDialogRepository = readingMedicalReviewDialogRepository;
|
this._readingMedicalReviewDialogRepository = readingMedicalReviewDialogRepository;
|
||||||
this._readingQuestionCriterionTrial = readingQuestionCriterionTrial;
|
this._readingQuestionCriterionTrial = readingQuestionCriterionTrial;
|
||||||
|
@ -109,6 +112,17 @@ namespace IRaCIS.Core.Application.Service
|
||||||
|
|
||||||
|
|
||||||
medicalReviewInfo.VisitTaskId = taskInfo.Id;
|
medicalReviewInfo.VisitTaskId = taskInfo.Id;
|
||||||
|
|
||||||
|
var clinicalDataList = await _readingClinicalDataService.GetClinicalDataList(new GetReadingOrTaskClinicalDataListInDto()
|
||||||
|
{
|
||||||
|
|
||||||
|
SubjectId = taskInfo.SubjectId,
|
||||||
|
TrialId = taskInfo.TrialId,
|
||||||
|
VisitTaskId = taskInfo.Id,
|
||||||
|
});
|
||||||
|
|
||||||
|
medicalReviewInfo.IsExistsClinicalData = clinicalDataList.Count > 0;
|
||||||
|
|
||||||
medicalReviewInfo.ArmEnum = taskInfo.ArmEnum;
|
medicalReviewInfo.ArmEnum = taskInfo.ArmEnum;
|
||||||
medicalReviewInfo.SubjectCode = taskInfo.IsAnalysisCreate?taskInfo.BlindSubjectCode: taskInfo.Subject.Code;
|
medicalReviewInfo.SubjectCode = taskInfo.IsAnalysisCreate?taskInfo.BlindSubjectCode: taskInfo.Subject.Code;
|
||||||
medicalReviewInfo.TaskBlindName = taskInfo.TaskBlindName;
|
medicalReviewInfo.TaskBlindName = taskInfo.TaskBlindName;
|
||||||
|
|
|
@ -429,7 +429,7 @@ namespace IRaCIS.Core.Application
|
||||||
ToBeDealedCount = t.ReadingClinicalDataList.Where(x => !x.IsSign && x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC && x.ClinicalDataTrialSet.ClinicalDataLevel != ClinicalLevel.SubjectVisit && x.ClinicalDataTrialSet.ClinicalDataLevel != ClinicalLevel.Subject).Count(),
|
ToBeDealedCount = t.ReadingClinicalDataList.Where(x => !x.IsSign && x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC && x.ClinicalDataTrialSet.ClinicalDataLevel != ClinicalLevel.SubjectVisit && x.ClinicalDataTrialSet.ClinicalDataLevel != ClinicalLevel.Subject).Count(),
|
||||||
ToBeVisitCount = t.ReadingClinicalDataList.Where(x => !x.IsSign && x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC && x.ClinicalDataTrialSet.ClinicalDataLevel == ClinicalLevel.SubjectVisit).Count(),
|
ToBeVisitCount = t.ReadingClinicalDataList.Where(x => !x.IsSign && x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC && x.ClinicalDataTrialSet.ClinicalDataLevel == ClinicalLevel.SubjectVisit).Count(),
|
||||||
ToAllCount = t.ReadingClinicalDataList.Where(x => !x.IsSign && x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC).Count(),
|
ToAllCount = t.ReadingClinicalDataList.Where(x => !x.IsSign && x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC).Count(),
|
||||||
ReadModuleCount = t.ReadModuleList.Where(x => !x.IsPMConfirm).Count(),
|
ReadModuleCount = t.ReadModuleList.Where(x => !x.IsCRCConfirm).Count(),
|
||||||
}).Where(x => x.ReadModuleCount > 0);
|
}).Where(x => x.ReadModuleCount > 0);
|
||||||
|
|
||||||
var defalutSortArray = new string[] { nameof(ImageClinicalDataToBeDoneDto.UrgentCount) + " desc", nameof(ImageClinicalDataToBeDoneDto.ToBeDealedCount) + " desc" };
|
var defalutSortArray = new string[] { nameof(ImageClinicalDataToBeDoneDto.UrgentCount) + " desc", nameof(ImageClinicalDataToBeDoneDto.ToBeDealedCount) + " desc" };
|
||||||
|
|
Loading…
Reference in New Issue