修改一版

This commit is contained in:
he
2022-07-05 13:11:30 +08:00
parent 5fbaef17ee
commit 396c8ca2df
4 changed files with 17 additions and 64 deletions
@@ -27,6 +27,7 @@ namespace IRaCIS.Application.Services
private readonly IRepository<VisitStage> _visitstageRepository;
private readonly IRepository<User> _userRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<ReadModuleView> _readModuleViewRepository;
private readonly IRepository<DicomInstance> _dicomInstanceRepository;
@@ -40,6 +41,7 @@ namespace IRaCIS.Application.Services
IRepository<VisitStage> visitstageRepository,
IRepository<User> UserRepository,
IRepository<Trial> trialRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ClinicalDataTrialSet> clinicalDataTrialSetRepository,
IRepository<ReadModuleView> readModuleViewRepository,
IRepository<DicomInstance> dicomInstanceRepository,
@@ -53,6 +55,7 @@ namespace IRaCIS.Application.Services
this._visitstageRepository = visitstageRepository;
this._userRepository = UserRepository;
this._trialRepository = trialRepository;
this._visitTaskRepository = visitTaskRepository;
this._clinicalDataTrialSetRepository = clinicalDataTrialSetRepository;
this._readModuleViewRepository = readModuleViewRepository;
this._dicomInstanceRepository = dicomInstanceRepository;
@@ -187,10 +190,12 @@ namespace IRaCIS.Application.Services
{
maxcount = maxcount < x.Data.Count ? x.Data.Count : maxcount;
});
var trialinfo = await _trialRepository.Where(x => x.Id == dto.TrialId).FirstNotNullAsync();
return (pageOutput, new
{
MaxLength = maxcount,
IsClinicalReading = await _trialRepository.Where(x => x.Id == dto.TrialId).Select(x => x.IsClinicalReading).FirstOrDefaultAsync(),
IsReadingTaskViewInOrder=trialinfo.IsReadingTaskViewInOrder,
IsClinicalReading = trialinfo.IsClinicalReading,
OnlyExistsMedicalHistory = !(await _clinicalDataTrialSetRepository.AnyAsync(x => x.TrialId == dto.TrialId && x.ClinicalDataSetName != "既往局部治疗史" && x.IsConfirm)),
IsExistsSubjectClinicalData= await _clinicalDataTrialSetRepository.AnyAsync(x => x.TrialId == dto.TrialId&&x.ClinicalDataLevel== ClinicalLevel.Subject && x.IsConfirm),
IsExistsVisitClinicalData = await _clinicalDataTrialSetRepository.AnyAsync(x => x.TrialId == dto.TrialId && x.ClinicalDataLevel == ClinicalLevel.SubjectVisit && x.IsConfirm),
@@ -261,6 +266,14 @@ namespace IRaCIS.Application.Services
{
stakeholderIds.Add(subjectVisit.CheckUserId.Value);
}
break;
case ReadingStatusEnum.ImageReading:
var doctorUserId = await _visitTaskRepository.Where(x => x.SouceReadModuleId == dto.Id || x.SourceSubjectVisitId == dto.Id)
.Where(x => x.DoctorUserId != null).Select(x => x.DoctorUserId.Value).ToListAsync();
stakeholderIds.AddRange(doctorUserId);
break;
};