修改仓储
continuous-integration/drone/push Build is passing

This commit is contained in:
2024-08-23 11:19:24 +08:00
parent 45b14abe63
commit e81e270d69
51 changed files with 349 additions and 470 deletions
@@ -37,6 +37,8 @@ namespace IRaCIS.Core.Application.Service
IRepository<ReadingQuestionTrial> _trialReadingQuestionRepository,
IRepository<VisitTask> _visitTaskRepository,
IVisitTaskHelpeService _IVisitTaskHelpeService,
IRepository<DicomStudy> _dicomStudyRepository,
IRepository<DicomSeries> _dicomSeriesRepository,
IRepository<TaskMedicalReview> _taskMedicalReviewRepository,
IRepository<VisitTaskReReading> _visitTaskReReadingRepository) : BaseService, ISubjectCriteriaEvaluationService
{
@@ -311,7 +313,7 @@ namespace IRaCIS.Core.Application.Service
//找到该方式的所有序列
var list = await _repository.Where<DicomSeries>(t => t.SubjectVisitId == subjectVisitId && t.SubjectId == subjectId).Select(t => new { SeriesId = t.Id, t.StudyId, t.BodyPartForEdit }).ToListAsync();
var list = await _dicomSeriesRepository.Where(t => t.SubjectVisitId == subjectVisitId && t.SubjectId == subjectId).Select(t => new { SeriesId = t.Id, t.StudyId, t.BodyPartForEdit }).ToListAsync();
////已经自动筛选过
@@ -462,7 +464,7 @@ namespace IRaCIS.Core.Application.Service
[HttpPost]
public async Task<List<HaveGeneratedTaskDto>> GetHaveGeneratedTaskList(HaveGeneratedTaskQuery inQuery)
{
var list = await _repository.Where<VisitTask>(t => t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId && t.SubjectId == inQuery.SubjectId && t.TaskState == TaskState.Effect).OrderBy(t => t.VisitTaskNum)
var list = await _visitTaskRepository.Where(t => t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId && t.SubjectId == inQuery.SubjectId && t.TaskState == TaskState.Effect).OrderBy(t => t.VisitTaskNum)
.ProjectTo<HaveGeneratedTaskDto>(_mapper.ConfigurationProvider).ToListAsync();
return list;
@@ -494,7 +496,7 @@ namespace IRaCIS.Core.Application.Service
var idList = batchGenerateTaskCommand.SubjectVisitIdList.Select(t => (Guid?)t).ToList();
//存在任务的访视
var haveGenerateVisitIdList = await _repository.Where<VisitTask>(t => idList.Contains(t.SourceSubjectVisitId) && t.TrialReadingCriterionId == batchGenerateTaskCommand.TrialReadingCriterionId && t.TaskState == TaskState.Effect)
var haveGenerateVisitIdList = await _visitTaskRepository.Where(t => idList.Contains(t.SourceSubjectVisitId) && t.TrialReadingCriterionId == batchGenerateTaskCommand.TrialReadingCriterionId && t.TaskState == TaskState.Effect)
.Select(t => t.SourceSubjectVisitId).ToListAsync();
var generateVisitIdList = idList.Except(haveGenerateVisitIdList);
@@ -514,12 +516,12 @@ namespace IRaCIS.Core.Application.Service
[HttpPost]
public async Task<SelctStudySeriesView> GetVisitStudyAndSeriesList(VisitStudyAndSeriesQuery inQuery)
{
var studyList = await _repository.Where<DicomStudy>(s => s.SubjectVisitId == inQuery.SubjectVisitId).ProjectTo<SelectStudyView>(_mapper.ConfigurationProvider).ToListAsync();
var studyList = await _dicomStudyRepository.Where(s => s.SubjectVisitId == inQuery.SubjectVisitId).ProjectTo<SelectStudyView>(_mapper.ConfigurationProvider).ToListAsync();
var studyIds = studyList.Select(t => t.StudyId).ToList();
var query = from series in _repository.Where<DicomSeries>(t => studyIds.Contains(t.StudyId))
var query = from series in _dicomSeriesRepository.Where(t => studyIds.Contains(t.StudyId))
join visitStudyFilter in _subjectCriteriaEvaluationVisitStudyFilterRepository.Where(t => t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId && t.SubjectVisitId == inQuery.SubjectVisitId) on series.Id equals visitStudyFilter.SeriesId into d
from visitStudyFilter in d.DefaultIfEmpty()
@@ -26,6 +26,7 @@ namespace IRaCIS.Application.Services
IRepository<PreviousPDF> _previousPDFRepository,
IRepository<Dictionary> _dictionaryRepository,
IRepository<Trial> _trialRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<TrialClinicalQuestion> _trialClinicalQuestionRepository,
IRepository<SystemClinicalQuestion> _systemClinicalQuestionRepository) : BaseService
{
@@ -320,7 +321,7 @@ namespace IRaCIS.Application.Services
//[HttpPost]
//public async Task<List<TrialCriterionSelectDto>> GetTrialCriterionSelectList(TrialCriterionSelectQuery inQuery)
//{
// return await _repository.Where<ReadingQuestionCriterionTrial>(t => t.TrialId == inQuery.TrialId)
// return await _readingQuestionCriterionTrialRepository.Where(t => t.TrialId == inQuery.TrialId)
// .WhereIf(!string.IsNullOrEmpty(inQuery.CriterionName), t => t.CriterionName.Contains(inQuery.CriterionName))
// .WhereIf(inQuery.IsEnable != null, t => t.IsEnable == inQuery.IsEnable)
// .WhereIf(inQuery.IsCompleteConfig != null, t => t.IsCompleteConfig == inQuery.IsCompleteConfig)
@@ -363,7 +364,7 @@ namespace IRaCIS.Application.Services
var systemDataList = systemClinicalDataList.Where(x => needAddids.Contains(x.Id)).ToList();
var readingCriterionList = _repository.Where<ReadingQuestionCriterionTrial>(t => t.TrialId == trialId).Where(t => t.ReadingQuestionCriterionSystemId != null)
var readingCriterionList = _readingQuestionCriterionTrialRepository.Where(t => t.TrialId == trialId).Where(t => t.ReadingQuestionCriterionSystemId != null)
.Select(t => new { t.ReadingQuestionCriterionSystemId, TrialReadingCriterionId = t.Id ,t.CriterionType}).ToList();
@@ -419,7 +420,7 @@ namespace IRaCIS.Application.Services
// var systemDataList = systemClinicalDataList.Where(x => needAddids.Contains(x.Id)).ToList();
// var readingCriterionList = _repository.Where<ReadingQuestionCriterionTrial>(t => t.TrialId == trialId).Where(t => t.ReadingQuestionCriterionSystemId != null)
// var readingCriterionList = _readingQuestionCriterionTrialRepository.Where(t => t.TrialId == trialId).Where(t => t.ReadingQuestionCriterionSystemId != null)
// .Select(t => new { t.ReadingQuestionCriterionSystemId, TrialReadingCriterionId = t.Id }).ToList();
@@ -431,7 +431,7 @@ namespace IRaCIS.Application.Services
//var criterionType = await _readingQuestionCriterionTrialRepository.Where(t => t.Id == trialReadingCritrialId).Select(t => t.CriterionType).FirstOrDefaultAsync();
// 获取确认的项目标准 废弃 签名的时候 传递标准Id
//var confirmedCtritrialList = _repository.Where<ReadingQuestionCriterionTrial>(t => t.TrialId == trialId && t.ReadingInfoSignTime != null).Select(t => new { t.Id, t.CriterionType }).ToList();
//var confirmedCtritrialList = _readingQuestionCriterionTrialRepository.Where(t => t.TrialId == trialId && t.ReadingInfoSignTime != null).Select(t => new { t.Id, t.CriterionType }).ToList();
var needSignCount = 0;
var haveSignedCount = _readingClinicalDataRepository.Where(t => t.TrialId == trialId && t.IsSign && t.ReadingClinicalDataState == ReadingClinicalDataStatus.HaveSigned && t.ReadingId == readingId && t.ClinicalDataTrialSet.UploadRole == UploadRole.PM).Count();