Uat_Study
he 2022-04-20 20:52:03 +08:00
parent 04ba060c84
commit ca94b33d7c
6 changed files with 40 additions and 4 deletions

View File

@ -20,6 +20,7 @@ using IRaCIS.Core.Infrastructure.Extention;
using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json;
namespace IRaCIS.Core.API.Controllers namespace IRaCIS.Core.API.Controllers
{ {
@ -33,6 +34,7 @@ namespace IRaCIS.Core.API.Controllers
private readonly IUserInfo _userInfo; private readonly IUserInfo _userInfo;
private readonly ITrialDocumentService _trialDocumentService; private readonly ITrialDocumentService _trialDocumentService;
private readonly IQCListService _qCListService; private readonly IQCListService _qCListService;
private readonly IHttpContextAccessor _httpContext;
private readonly ITrialConfigService _trialConfigService; private readonly ITrialConfigService _trialConfigService;
private readonly INoneDicomStudyService _noneDicomStudyService; private readonly INoneDicomStudyService _noneDicomStudyService;
private readonly ISubjectService _subjectService; private readonly ISubjectService _subjectService;
@ -51,6 +53,7 @@ namespace IRaCIS.Core.API.Controllers
ITrialDocumentService trialDocumentService, ITrialDocumentService trialDocumentService,
IRepository<DataInspection> dataInspectionRepository, IRepository<DataInspection> dataInspectionRepository,
IQCListService _qCListService, IQCListService _qCListService,
IHttpContextAccessor httpContext,
IInspectionService sinspectionService, IInspectionService sinspectionService,
ITrialConfigService _trialConfigService, ITrialConfigService _trialConfigService,
INoneDicomStudyService noneDicomStudyService, INoneDicomStudyService noneDicomStudyService,
@ -68,6 +71,7 @@ namespace IRaCIS.Core.API.Controllers
this._inspectionService = sinspectionService; this._inspectionService = sinspectionService;
this._trialDocumentService = trialDocumentService; this._trialDocumentService = trialDocumentService;
this._qCListService = _qCListService; this._qCListService = _qCListService;
this._httpContext = httpContext;
this._trialConfigService = _trialConfigService; this._trialConfigService = _trialConfigService;
this._noneDicomStudyService = noneDicomStudyService; this._noneDicomStudyService = noneDicomStudyService;
this._subjectService = _subjectService; this._subjectService = _subjectService;
@ -353,7 +357,23 @@ namespace IRaCIS.Core.API.Controllers
return await _inspectionService.Enforcement(opt.OptCommand, opt.AuditInfo, opt.SignInfo, fun); return await _inspectionService.Enforcement(opt.OptCommand, opt.AuditInfo, opt.SignInfo, fun);
} }
/// <summary>
/// 一致性核查 excel上传 支持三种格式
/// </summary>
/// <param name="opt"></param>
/// <returns></returns>
[HttpPost, Route("Inspection/QCOperation/UploadVisitCheckExcel")]
[UnitOfWork]
public async Task<IResponseOutput> UploadVisitCheckExcel(IFormFile file, [FromForm]UploadVisitCheckExcelDto opt)
{
var fun = await _qCOperationService.UploadVisitCheckExcel(file, opt.trialId);
var data = JsonConvert.DeserializeObject<DataInspectionAddDTO>(opt.AuditInfo);
return await _inspectionService.Enforcement(opt.trialId, data, null, null, fun);
}
#endregion #endregion
#region 影像上传 #region 影像上传

View File

@ -165,6 +165,13 @@
<param name="opt"></param> <param name="opt"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:IRaCIS.Core.API.Controllers.InspectionController.UploadVisitCheckExcel(Microsoft.AspNetCore.Http.IFormFile,IRaCIS.Core.Application.Contracts.UploadVisitCheckExcelDto)">
<summary>
一致性核查 excel上传 支持三种格式
</summary>
<param name="opt"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.API.Controllers.InspectionController.UpdateSubjectAndSVInfo(IRaCIS.Core.Application.Service.Inspection.DTO.DataInspectionDto{IRaCIS.Core.Application.Contracts.UploadSubjectAndVisitCommand})"> <member name="M:IRaCIS.Core.API.Controllers.InspectionController.UpdateSubjectAndSVInfo(IRaCIS.Core.Application.Service.Inspection.DTO.DataInspectionDto{IRaCIS.Core.Application.Contracts.UploadSubjectAndVisitCommand})">
<summary> <summary>
疾病进展确认评估 疾病进展确认评估

View File

@ -1447,7 +1447,7 @@
</summary> </summary>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:IRaCIS.Core.Application.Image.QA.QCOperationService.UploadVisitCheckExcel(Microsoft.AspNetCore.Http.IFormFile,MediatR.IMediator,System.Guid,Microsoft.AspNetCore.Hosting.IWebHostEnvironment)"> <member name="M:IRaCIS.Core.Application.Image.QA.QCOperationService.UploadVisitCheckExcel(Microsoft.AspNetCore.Http.IFormFile,System.Guid)">
<summary> <summary>
一致性核查 excel上传 支持三种格式 一致性核查 excel上传 支持三种格式
</summary> </summary>

View File

@ -35,7 +35,7 @@ namespace IRaCIS.Core.Application.Image.QA
Task<IResponseOutput> SetVisitUrgent(Guid trialId, Guid subjectVisitId, bool setOrCancel); Task<IResponseOutput> SetVisitUrgent(Guid trialId, Guid subjectVisitId, bool setOrCancel);
Task<IResponseOutput> UpdateModality(Guid id, int type, [FromQuery] string modality, [FromQuery] string bodyPart); Task<IResponseOutput> UpdateModality(Guid id, int type, [FromQuery] string modality, [FromQuery] string bodyPart);
Task<IResponseOutput> UpdateSubjectAndSVInfo(UploadSubjectAndVisitCommand command); Task<IResponseOutput> UpdateSubjectAndSVInfo(UploadSubjectAndVisitCommand command);
Task<IResponseOutput> UploadVisitCheckExcel(IFormFile file, [FromServices] IMediator _mediator, Guid trialId, [FromServices] IWebHostEnvironment _hostEnvironment); Task<IResponseOutput> UploadVisitCheckExcel(IFormFile file, Guid trialId);
Task<IResponseOutput> VerifyCanQCPassedOrFailed(Guid subjectVisitId); Task<IResponseOutput> VerifyCanQCPassedOrFailed(Guid subjectVisitId);
Task<IResponseOutput> ForwardSVDicomImage(Guid[] subjectVisitIdList); Task<IResponseOutput> ForwardSVDicomImage(Guid[] subjectVisitIdList);

View File

@ -33,12 +33,14 @@ namespace IRaCIS.Core.Application.Image.QA
private readonly IRepository<SubjectVisit> _subjectVisitRepository; private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<Trial> _trialRepository; private readonly IRepository<Trial> _trialRepository;
private readonly IServiceProvider serviceProvider; private readonly IServiceProvider serviceProvider;
private readonly IMediator _mediator;
private readonly IInspectionService _inspectionService; private readonly IInspectionService _inspectionService;
private object _locker = new object(); private object _locker = new object();
public QCOperationService(DicomFileStoreHelper dicomFileStoreHelper, IRepository<SubjectVisit> subjectVisitRepository, public QCOperationService(DicomFileStoreHelper dicomFileStoreHelper, IRepository<SubjectVisit> subjectVisitRepository,
IRepository<Trial> trialRepository, IRepository<Trial> trialRepository,
IServiceProvider serviceProvider, IServiceProvider serviceProvider,
IMediator mediator,
IInspectionService sinspectionService, IInspectionService sinspectionService,
IRepository<DicomStudy> _trialRepository IRepository<DicomStudy> _trialRepository
) )
@ -47,6 +49,7 @@ namespace IRaCIS.Core.Application.Image.QA
_subjectVisitRepository = subjectVisitRepository; _subjectVisitRepository = subjectVisitRepository;
this._trialRepository = trialRepository; this._trialRepository = trialRepository;
this.serviceProvider = serviceProvider; this.serviceProvider = serviceProvider;
_mediator = mediator;
this._inspectionService = sinspectionService; this._inspectionService = sinspectionService;
} }
@ -549,7 +552,7 @@ namespace IRaCIS.Core.Application.Image.QA
/// <returns></returns> /// <returns></returns>
[HttpPost("{trialId:guid}")] [HttpPost("{trialId:guid}")]
[TypeFilter(typeof(TrialResourceFilter))] [TypeFilter(typeof(TrialResourceFilter))]
public async Task<IResponseOutput> UploadVisitCheckExcel(IFormFile file, [FromServices] IMediator _mediator, Guid trialId, [FromServices] IWebHostEnvironment _hostEnvironment) public async Task<IResponseOutput> UploadVisitCheckExcel(IFormFile file, Guid trialId)
{ {
if (_userInfo.UserTypeEnumInt != (int)UserTypeEnum.ProjectManager) if (_userInfo.UserTypeEnumInt != (int)UserTypeEnum.ProjectManager)
{ {

View File

@ -111,7 +111,13 @@ namespace IRaCIS.Core.Application.Contracts
} }
public class UploadVisitCheckExcelDto
{
public Guid trialId { get; set; }
public string AuditInfo { get; set; }
}
public class ForwardSVDicomImageDto public class ForwardSVDicomImageDto
{ {
public Guid[] subjectVisitIdList { get; set; } public Guid[] subjectVisitIdList { get; set; }