修改一版
This commit is contained in:
@@ -7,6 +7,8 @@ using IRaCIS.Core.Domain.Share;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using System.Text;
|
||||
using IRaCIS.Core.Application.Contracts;
|
||||
using Newtonsoft.Json;
|
||||
using MassTransit;
|
||||
|
||||
namespace IRaCIS.Core.Application.Services
|
||||
{
|
||||
@@ -15,7 +17,7 @@ namespace IRaCIS.Core.Application.Services
|
||||
private readonly IRepository<DicomStudy> _studyRepository;
|
||||
private readonly IRepository<DicomSeries> _seriesRepository;
|
||||
private readonly IRepository<DicomInstance> _instanceRepository;
|
||||
|
||||
private readonly IRepository<DataInspection> _inspectionService;
|
||||
private readonly IEasyCachingProvider _provider;
|
||||
private readonly DicomFileStoreHelper _dicomFileStoreHelper;
|
||||
|
||||
@@ -26,6 +28,7 @@ namespace IRaCIS.Core.Application.Services
|
||||
IRepository<DicomSeries> seriesRepository,
|
||||
IRepository<DicomInstance> instanceRepository,
|
||||
IHostEnvironment hostEnvironment,
|
||||
IRepository<DataInspection> inspectionService,
|
||||
DicomFileStoreHelper dicomFileStoreHelper,
|
||||
IEasyCachingProvider provider)
|
||||
{
|
||||
@@ -36,7 +39,7 @@ namespace IRaCIS.Core.Application.Services
|
||||
_seriesRepository = seriesRepository;
|
||||
|
||||
_instanceRepository = instanceRepository;
|
||||
|
||||
this._inspectionService = inspectionService;
|
||||
_provider = provider;
|
||||
|
||||
}
|
||||
@@ -165,9 +168,91 @@ namespace IRaCIS.Core.Application.Services
|
||||
DicomSeries dicomSeries = CreateDicomSeries(dataset, dicomStudy, out bool isSeriesNeedAdd);
|
||||
DicomInstance dicomInstance = CreateDicomInstance(dataset, dicomStudy, dicomSeries);
|
||||
|
||||
if (isStudyNeedAdd) await _studyRepository.AddAsync(dicomStudy);
|
||||
if (isSeriesNeedAdd) await _seriesRepository.AddAsync(dicomSeries);
|
||||
await _instanceRepository.AddAsync(dicomInstance);
|
||||
|
||||
List<DataInspection> datas = new List<DataInspection>();
|
||||
|
||||
|
||||
var createtime=DateTime.Now;
|
||||
|
||||
if (isStudyNeedAdd)
|
||||
{
|
||||
//dicomStudy.Id = NewId.NextGuid();
|
||||
|
||||
//datas.Add(new DataInspection()
|
||||
//{
|
||||
|
||||
// SiteId = dicomStudy.SiteId,
|
||||
// SubjectId = dicomStudy.SubjectId,
|
||||
// TrialId = dicomStudy.TrialId,
|
||||
// SubjectVisitId = dicomStudy.SubjectVisitId,
|
||||
// CreateTime = createtime,
|
||||
// GeneralId= dicomStudy.Id,
|
||||
// Identification = "Edit|Visit|Status|Visit-Image Upload|Add Image",
|
||||
// JsonDetail = JsonConvert.SerializeObject(new
|
||||
// {
|
||||
// SubmitState = "待提交",
|
||||
// })
|
||||
//});
|
||||
|
||||
// 添加检查
|
||||
await _studyRepository.AddAsync(dicomStudy);
|
||||
}
|
||||
|
||||
if (isSeriesNeedAdd) {
|
||||
// 添加序列
|
||||
|
||||
dicomSeries.Id = NewId.NextGuid();
|
||||
datas.Add(new DataInspection()
|
||||
{
|
||||
|
||||
SiteId = dicomStudy.SiteId,
|
||||
SubjectId = dicomStudy.SubjectId,
|
||||
TrialId = dicomStudy.TrialId,
|
||||
GeneralId= dicomSeries.Id,
|
||||
SubjectVisitId = dicomStudy.SubjectVisitId,
|
||||
CreateTime = createtime.AddMilliseconds(10),
|
||||
Identification = "Add|DICOM Series|Info|Visit-Image Upload",
|
||||
JsonDetail = JsonConvert.SerializeObject(new
|
||||
{
|
||||
StudyCode=dicomStudy.StudyCode,
|
||||
Modalities = dicomStudy.Modalities,
|
||||
SeriesNumber= dicomSeries.SeriesNumber,
|
||||
InstanceCount=dicomSeries.InstanceCount,
|
||||
SeriesTime= dicomSeries.SeriesTime,
|
||||
|
||||
})
|
||||
});
|
||||
|
||||
|
||||
datas.Add(new DataInspection()
|
||||
{
|
||||
|
||||
SiteId = dicomStudy.SiteId,
|
||||
SubjectId = dicomStudy.SubjectId,
|
||||
TrialId = dicomStudy.TrialId,
|
||||
GeneralId = dicomSeries.Id,
|
||||
SubjectVisitId = dicomStudy.SubjectVisitId,
|
||||
CreateTime = createtime.AddMilliseconds(510),
|
||||
Identification = "Init|DICOM Series|Status|Visit-Image Upload",
|
||||
JsonDetail = JsonConvert.SerializeObject(new
|
||||
{
|
||||
StudyCode = dicomStudy.StudyCode,
|
||||
Modalities = dicomStudy.Modalities,
|
||||
SeriesNumber = dicomSeries.SeriesNumber,
|
||||
InstanceCount = dicomSeries.InstanceCount,
|
||||
SeriesTime = dicomSeries.SeriesTime,
|
||||
IsReading= dicomSeries.IsReading,
|
||||
|
||||
})
|
||||
});
|
||||
|
||||
await _seriesRepository.AddAsync(dicomSeries);
|
||||
|
||||
}
|
||||
|
||||
|
||||
await _inspectionService.AddListInspectionRecordAsync(datas);
|
||||
await _instanceRepository.AddAsync(dicomInstance);
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user