删除废弃的dicom 路径帮助类

Uat_Study
hang 2022-06-01 17:18:40 +08:00
parent 9dc4d13d6e
commit e63c235f8a
10 changed files with 5 additions and 1152 deletions

View File

@ -58,7 +58,6 @@ namespace IRaCIS.Core.API
//containerBuilder.RegisterType<Dictionary>().InstancePerLifetimeScope();
containerBuilder.RegisterType<DicomFileStoreHelper>().SingleInstance();
//Autofac 注册拦截器 需要注意的是生成api上服务上的动态代理AOP失效 间接掉用不影响
containerBuilder.RegisterType<TrialStatusAutofacAOP>();

View File

@ -4,7 +4,6 @@
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------
using IRaCIS.Core.Domain.Models;
using Microsoft.AspNetCore.Mvc;
using IRaCIS.Core.Application.Interfaces;
using IRaCIS.Core.Application.ViewModel;

View File

@ -18,7 +18,6 @@ namespace IRaCIS.Core.Application.Services
private readonly IRepository<DicomInstance> _instanceRepository;
private readonly IRepository<DataInspection> _inspectionService;
private readonly IEasyCachingProvider _provider;
private readonly DicomFileStoreHelper _dicomFileStoreHelper;
private readonly IWebHostEnvironment _hostEnvironment;
@ -29,10 +28,8 @@ namespace IRaCIS.Core.Application.Services
IRepository<DicomInstance> instanceRepository,
IWebHostEnvironment hostEnvironment,
IRepository<DataInspection> inspectionService,
DicomFileStoreHelper dicomFileStoreHelper,
IEasyCachingProvider provider)
{
_dicomFileStoreHelper = dicomFileStoreHelper;
_hostEnvironment = hostEnvironment;
_studyRepository = studyRepository;

View File

@ -1,82 +0,0 @@
using Microsoft.Extensions.Hosting;
using System;
using System.IO;
using IRaCIS.Core.Domain.Models;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Logging;
using IRaCIS.Core.Domain.Share;
using IRaCIS.Core.Infrastructure.Extention;
using IRaCIS.Core.Application.Helper;
namespace IRaCIS.Core.Application
{
public class DicomFileStoreHelper
{
private readonly IWebHostEnvironment _hostEnvironment;
private static string _fileStorePath = string.Empty;
private readonly ILogger<DicomFileStoreHelper> _logger;
public DicomFileStoreHelper(IWebHostEnvironment hostEnvironment, ILogger<DicomFileStoreHelper> logger)
{
_logger = logger;
_hostEnvironment = hostEnvironment;
var rootPath = FileStoreHelper.GetIRaCISRootDataFolder(_hostEnvironment);
//上传根路径
_fileStorePath = Path.Combine(rootPath, StaticData.Folder.TrialDataFolder);
}
public string GetInstanceFilePath(DicomStudy dicomStudy, Guid seriesId, string instanceId)
{
return Path.Combine(_fileStorePath, dicomStudy.TrialId.ToString(),
dicomStudy.SiteId.ToString(), dicomStudy.SubjectId.ToString(), dicomStudy.SubjectVisitId.ToString(), StaticData.Folder.DicomFolder, dicomStudy.Id.ToString(), instanceId.ToString() + ".dcm");
}
public string CreateInstanceFilePath(DicomStudy dicomStudy, Guid seriesId, Guid instanceId)
{
//加入访视层级 和Data
var path = Path.Combine(_fileStorePath, dicomStudy.TrialId.ToString(),
dicomStudy.SiteId.ToString(), dicomStudy.SubjectId.ToString(), dicomStudy.SubjectVisitId.ToString(), StaticData.Folder.DicomFolder, dicomStudy.Id.ToString());
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
return Path.Combine(path, instanceId.ToString() + ".dcm");
}
public string GetSubjectVisitPath(Guid trialId,Guid siteId,Guid subjectId, Guid subjectVisitId)
{
return Path.Combine(_fileStorePath, trialId.ToString(),
siteId.ToString(), subjectId.ToString(), subjectVisitId.ToString(), StaticData.Folder.DicomFolder);
}
//public static string CreateInstanceFilePath(DicomStudy dicomStudy, Guid seriesId, Guid instanceId)
//{
// string path = Path.Combine(_fileStorePath, "Dicom", dicomStudy.CreateTime.Year.ToString(), dicomStudy.TrialId.ToString(),
// dicomStudy.SiteId.ToString(), dicomStudy.SubjectId.ToString(), dicomStudy.Id.ToString());
// if (!Directory.Exists(path)) Directory.CreateDirectory(path);
// return Path.Combine(path, instanceId.ToString() + ".dcm");
//}
//public static string GetInstanceFilePath(DicomStudy dicomStudy, Guid seriesId, Guid instanceId)
//{
// return Path.Combine(_fileStorePath, "Dicom", dicomStudy.CreateTime.Year.ToString(), dicomStudy.TrialId.ToString(),
// dicomStudy.SiteId.ToString(), dicomStudy.SubjectId.ToString(), dicomStudy.Id.ToString(), instanceId.ToString() + ".dcm");
//}
//public static void RemoveStudyDirectory(DicomStudy dicomStudy)
//{
// string path = Path.Combine(_fileStorePath, "Dicom", dicomStudy.CreateTime.Year.ToString(), dicomStudy.TrialId.ToString(),
// dicomStudy.SiteId.ToString(), dicomStudy.SubjectId.ToString(), dicomStudy.Id.ToString());
// if (Directory.Exists(path)) Directory.Delete(path, true);
//}
}
}

View File

@ -12,11 +12,9 @@ namespace IRaCIS.Core.Application.Services
private readonly IRepository<DicomInstance> _instanceRepository;
private readonly IRepository<DicomStudy> _studyRepository;
private readonly IRepository<KeyInstance> _keyInstanceRepository;
private readonly DicomFileStoreHelper _dicomFileStoreHelper;
public InstanceService(IRepository<DicomInstance> instanceRepository, IRepository<DicomStudy> studyRepository,
IRepository<KeyInstance> keyInstanceRepository, DicomFileStoreHelper dicomFileStoreHelper)
IRepository<KeyInstance> keyInstanceRepository )
{
_dicomFileStoreHelper = dicomFileStoreHelper;
_instanceRepository = instanceRepository;
_studyRepository = studyRepository;
_keyInstanceRepository = keyInstanceRepository;

View File

@ -15,12 +15,10 @@ namespace IRaCIS.Core.Application.Services
private readonly IRepository<DicomInstance> _instanceRepository;
private readonly IRepository<DicomStudy> _studyRepository;
private readonly IRepository<KeyInstance> _keyInstanceRepository;
private readonly DicomFileStoreHelper _dicomFileStoreHelper;
public SeriesService(IRepository<DicomInstance> instanceRepository, IRepository<DicomStudy> studyRepository,
IRepository<KeyInstance> keyInstanceRepository, DicomFileStoreHelper dicomFileStoreHelper, IRepository<DicomSeries> seriesRepository, IRepository<ImageLabel> imageLabelRepository)
IRepository<KeyInstance> keyInstanceRepository, IRepository<DicomSeries> seriesRepository, IRepository<ImageLabel> imageLabelRepository)
{
_seriesRepository = seriesRepository;
_dicomFileStoreHelper = dicomFileStoreHelper;
_instanceRepository = instanceRepository;
_studyRepository = studyRepository;
_keyInstanceRepository = keyInstanceRepository;

View File

@ -13,7 +13,6 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
public class StudyService : BaseService, IStudyService
{
private readonly DicomFileStoreHelper _dicomFileStoreHelper;
private readonly IEasyCachingProvider _provider;
@ -21,12 +20,11 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
private readonly IRepository<DicomInstance> _dicomInstanceRepository;
private readonly IRepository<DicomSeries> _dicomSeriesRepository;
public StudyService(DicomFileStoreHelper dicomFileStoreHelper, IEasyCachingProvider provider
public StudyService( IEasyCachingProvider provider
, IRepository<SubjectVisit> subjectVisitRepository,
IRepository<DicomInstance> dicomInstanceRepository,
IRepository<DicomSeries> dicomSeriesRepository)
{
_dicomFileStoreHelper = dicomFileStoreHelper;
_provider = provider;
_subjectVisitRepository = subjectVisitRepository;
_dicomInstanceRepository = dicomInstanceRepository;

File diff suppressed because it is too large Load Diff

View File

@ -21,7 +21,6 @@ namespace IRaCIS.Core.Application.Image.QA
public class QCOperationService : BaseService, IQCOperationService
{
private readonly DicomFileStoreHelper _dicomFileStoreHelper;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<QCChallenge> _qcChallengeRepository;
private readonly IRepository<DicomStudy> _dicomStudyRepository;
@ -33,7 +32,7 @@ namespace IRaCIS.Core.Application.Image.QA
private readonly AsyncLock _mutex = new AsyncLock();
public QCOperationService(DicomFileStoreHelper dicomFileStoreHelper, IRepository<SubjectVisit> subjectVisitRepository,
public QCOperationService( IRepository<SubjectVisit> subjectVisitRepository,
IRepository<QCChallenge> qcChallengeRepository,
IRepository<Trial> trialRepository,
IRepository<DicomStudy> dicomStudyRepository,
@ -43,7 +42,6 @@ namespace IRaCIS.Core.Application.Image.QA
IRepository<CheckChallengeDialog> checkChallengeDialogrepository
)
{
_dicomFileStoreHelper = dicomFileStoreHelper;
_subjectVisitRepository = subjectVisitRepository;
_qcChallengeRepository = qcChallengeRepository;
_dicomStudyRepository = dicomStudyRepository;
@ -1685,7 +1683,7 @@ namespace IRaCIS.Core.Application.Image.QA
{
var info = await _subjectVisitRepository.Where(t => t.Id == subjectVisitId).ProjectTo<DicomTrialSiteSubjectInfo>(_mapper.ConfigurationProvider).FirstOrDefaultAsync();
var info = (await _subjectVisitRepository.Where(t => t.Id == subjectVisitId).ProjectTo<DicomTrialSiteSubjectInfo>(_mapper.ConfigurationProvider).FirstOrDefaultAsync()).IfNullThrowException();
var targetPath = "/IMPORT-IMAGES/" + info.TrialCode + "_" + info.SubjectCode + "_" + info.VisitName;

View File

@ -57,7 +57,6 @@ namespace IRaCIS.Core.Application.Contracts
[AllowAnonymous]
public async Task<IResponseOutput> SendVerifyCode(SiteSurveySendVerifyCode userInfo)
{
var verificationType = VerifyType.Email;
//检查手机或者邮箱是否有效
if (!Regex.IsMatch(userInfo.Email, @"^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$"))
{