修改上传
parent
076d99c6ba
commit
56a15f3b61
|
|
@ -45,7 +45,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
IRepository<NoneDicomStudyFile> _noneDicomStudyFileReposiotry,
|
||||
IDistributedLockProvider _distributedLockProvider,
|
||||
IRepository<TrialImageDownload> _trialImageDownloadRepository,
|
||||
IRepository<Subject> _subjectRepository,
|
||||
IRepository<Subject> _subjectRepository,
|
||||
IMapper _mapper, IUserInfo _userInfo, IStringLocalizer _localizer, IFusionCache _fusionCache) : BaseService, IDownloadAndUploadService
|
||||
{
|
||||
|
||||
|
|
@ -258,7 +258,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
}
|
||||
|
||||
|
||||
[TrialGlobalLimit( "AfterStopCannNotOpt" )]
|
||||
[TrialGlobalLimit("AfterStopCannNotOpt")]
|
||||
|
||||
public async Task<IResponseOutput> PreArchiveDicomStudy(PriArchiveTaskStudyCommand preArchiveStudyCommand)
|
||||
{
|
||||
|
|
@ -357,7 +357,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
}
|
||||
|
||||
|
||||
[TrialGlobalLimit( "AfterStopCannNotOpt" )]
|
||||
[TrialGlobalLimit("AfterStopCannNotOpt")]
|
||||
public async Task<IResponseOutput> AddOrUpdateArchiveTaskStudy(TaskArchiveStudyCommand incommand)
|
||||
{
|
||||
#region 获取该subject 已生成任务的访视的检查
|
||||
|
|
@ -557,29 +557,42 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
//新的序列 那么 检查的序列数量+1
|
||||
findStudy.SeriesCount += 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
//该序列掉了instance
|
||||
dicomSeries.InstanceCount += seriesItem.InstanceList.Count;
|
||||
}
|
||||
//else
|
||||
//{
|
||||
// //该序列掉了instance
|
||||
// dicomSeries.InstanceCount += seriesItem.InstanceList.Count;
|
||||
//}
|
||||
|
||||
//找到该序列已经存在的instanceId
|
||||
var existInstanceIdList = _taskInstanceRepository.Where(t => t.SeriesId == dicomSeries.Id).Select(t => t.Id).ToList();
|
||||
|
||||
foreach (var instanceItem in seriesItem.InstanceList)
|
||||
{
|
||||
var insntance = _mapper.Map<TaskInstance>(instanceItem);
|
||||
insntance.Id = IdentifierHelper.CreateGuid(insntance.StudyInstanceUid, insntance.SeriesInstanceUid, insntance.SopInstanceUid, trialId.ToString(), visiTaskId.ToString());
|
||||
insntance.StudyId = findStudy.Id;
|
||||
insntance.SeriesId = dicomSeries.Id;
|
||||
|
||||
insntance.TrialId = incommand.TrialId;
|
||||
insntance.SubjectId = incommand.SubjectId;
|
||||
insntance.VisitTaskId = visiTaskId;
|
||||
var instanceId = IdentifierHelper.CreateGuid(insntance.StudyInstanceUid, insntance.SeriesInstanceUid, insntance.SopInstanceUid, trialId.ToString(), visiTaskId.ToString());
|
||||
|
||||
|
||||
if (!existInstanceIdList.Any(t => t == instanceId))
|
||||
{
|
||||
insntance.Id = instanceId;
|
||||
insntance.StudyId = findStudy.Id;
|
||||
insntance.SeriesId = dicomSeries.Id;
|
||||
|
||||
insntance.TrialId = incommand.TrialId;
|
||||
insntance.SubjectId = incommand.SubjectId;
|
||||
insntance.VisitTaskId = visiTaskId;
|
||||
|
||||
await _taskInstanceRepository.AddAsync(insntance);
|
||||
|
||||
dicomSeries.InstanceCount++;
|
||||
findStudy.InstanceCount++;
|
||||
}
|
||||
|
||||
await _taskInstanceRepository.AddAsync(insntance);
|
||||
}
|
||||
|
||||
|
||||
// 不管是新的序列 还是 该序列 掉了Instance 重传的时候 检查的instance 数量都会增加
|
||||
findStudy.InstanceCount += seriesItem.InstanceList.Count;
|
||||
//// 不管是新的序列 还是 该序列 掉了Instance 重传的时候 检查的instance 数量都会增加
|
||||
//findStudy.InstanceCount += seriesItem.InstanceList.Count;
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -690,7 +703,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
SubjectCode = u.IsSelfAnalysis == true ? u.BlindSubjectCode : u.Subject.Code,
|
||||
TaskBlindName = u.TaskBlindName,
|
||||
TaskName = u.TaskName,
|
||||
ReadingTaskState=u.ReadingTaskState,
|
||||
ReadingTaskState = u.ReadingTaskState,
|
||||
SourceSubjectVisitId = u.SourceSubjectVisitId,
|
||||
VisitTaskId = u.Id,
|
||||
|
||||
|
|
@ -762,9 +775,9 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
select new
|
||||
{
|
||||
TrialId = sv.TrialId,
|
||||
SubjectId=sv.SubjectId,
|
||||
SubjectId = sv.SubjectId,
|
||||
SubjectCode = sv.Subject.Code,
|
||||
TrialSiteCode=sv.TrialSite.TrialSiteCode,
|
||||
TrialSiteCode = sv.TrialSite.TrialSiteCode,
|
||||
VisitName = sv.VisitName,
|
||||
|
||||
StudyList = sv.StudyList.Where(t => isQueryDicom ? inQuery.DicomStudyIdList.Contains(t.Id) : false)
|
||||
|
|
@ -972,7 +985,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
|
||||
var subjectVisitIdList = inQuery.SubjectVisitTaskList.Select(t => t.SubjectVisitId).ToList();
|
||||
|
||||
var trialSiteCode = _visitTaskRepository.Where(t => t.Id == taskIdList.FirstOrDefault()).Select(t => t.IsAnalysisCreate ? t.BlindTrialSiteCode : t.Subject.TrialSite.TrialSiteCode).FirstOrDefault()??string.Empty;
|
||||
var trialSiteCode = _visitTaskRepository.Where(t => t.Id == taskIdList.FirstOrDefault()).Select(t => t.IsAnalysisCreate ? t.BlindTrialSiteCode : t.Subject.TrialSite.TrialSiteCode).FirstOrDefault() ?? string.Empty;
|
||||
|
||||
var query = from sv in _subjectRepository.Where(t => t.Id == inQuery.SubjectId).SelectMany(t => t.SubjectVisitList.Where(t => subjectVisitIdList.Contains(t.Id)))
|
||||
//一致性分析,导致查询出来两条数据
|
||||
|
|
@ -1033,9 +1046,9 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
{
|
||||
Id = NewId.NextSequentialGuid(),
|
||||
TrialId = info.TrialId,
|
||||
SubjectId=inQuery.SubjectId,
|
||||
SubjectId = inQuery.SubjectId,
|
||||
SubjectCode = inQuery.SubjectCode,
|
||||
TrialSiteCode= trialSiteCode,
|
||||
TrialSiteCode = trialSiteCode,
|
||||
IP = _userInfo.IP,
|
||||
DownloadStartTime = DateTime.Now,
|
||||
IsSuccess = false,
|
||||
|
|
@ -1155,7 +1168,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
return ResponseOutput.Ok();
|
||||
}
|
||||
|
||||
#region 影像汇总页面
|
||||
#region 影像汇总页面
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<TrialVisitImageStatView>>> GetTrialVisitImageStatList(TrialVisitImageQuery inQuery)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue