修改添加qc模板

Uat_Study
hang 2022-05-06 14:34:32 +08:00
parent 7103b62786
commit 839646e410
5 changed files with 64 additions and 63 deletions

View File

@ -814,11 +814,6 @@
<param name="noneDicomStudyId"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.NoneDicomStudyService.NewUploadNoneDicomFile(IRaCIS.Core.Application.Contracts.UploadNoneDicomFileDto)">
<summary>
上传非Dicom 文件 支持压缩包
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.NoneDicomStudyService.UploadNoneDicomFile(Microsoft.AspNetCore.Http.IFormCollection,System.Guid,System.Guid)">
<summary>
上传非Dicom 文件 支持压缩包
@ -828,6 +823,11 @@
<param name="noneDicomStudyId"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.NoneDicomStudyService.NewUploadNoneDicomFile(IRaCIS.Core.Application.Contracts.UploadNoneDicomFileDto)">
<summary>
上传非Dicom 文件 支持压缩包
</summary>
</member>
<member name="T:IRaCIS.Core.Application.Contracts.QCQuestionConfigureService">
<summary>
系统QC 问题管理
@ -1320,13 +1320,6 @@
<member name="M:IRaCIS.Core.Application.Services.TrialMaintenanceService.DeleteTrialSite(System.Guid)">
<summary>删除 项目 下某一site </summary>
</member>
<member name="M:IRaCIS.Core.Application.Services.SubjectVisitService.SetSVExecuted(System.Guid)">
<summary>
设置受试者访视已执行 也就是将studyUploaded状态置为true 为了那些没有影像 人工设置准备
</summary>
<param name="subjectVisitId"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Services.SubjectVisitService.GetVisitStudyList(System.Guid,System.Guid,System.Int32)">
<summary>
获取访视下的Dicom 检查信息 分所有的, 阅片的 不阅片 isReading : 0 查询所有 1 查询仅仅阅片的
@ -1336,6 +1329,13 @@
<param name="isReading"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Services.SubjectVisitService.SetSVExecuted(System.Guid)">
<summary>
设置受试者访视已执行 也就是将studyUploaded状态置为true 为了那些没有影像 人工设置准备
</summary>
<param name="subjectVisitId"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Image.QA.QCListService.GetCRCVisitList(IRaCIS.Core.Application.Contracts.CRCVisitSearchDTO)">
<summary>
CRC 访视上传列表

View File

@ -47,7 +47,7 @@ namespace IRaCIS.Core.Application.Contracts
public bool IsEnable { get; set; }
public string Type { get; set; } = String.Empty;
public string ParentTriggerValue { get; set; }
public string ParentTriggerValue { get; set; } = String.Empty;
public Guid? ParentId { get; set; }

View File

@ -51,6 +51,19 @@ namespace IRaCIS.Core.Application.Contracts
}
private void VerifyIsCanQC(SubjectVisit? subjectVisit, Guid? sujectVisitId = null)
{
if (sujectVisitId != null)
{
subjectVisit = _subjectVisitRepository.FirstOrDefaultAsync(t => t.Id == sujectVisitId).Result.IfNullThrowException();
}
if (subjectVisit!.CurrentActionUserId != _userInfo.Id)
{
throw new BusinessValidationFailedException("您不是该质控任务当前领取人,没有操作权限!");
}
}
[HttpGet("{subjectVisitId:guid}")]
public async Task<List<NoneDicomStudyView>> GetNoneDicomStudyList(Guid subjectVisitId)
{
@ -61,18 +74,6 @@ namespace IRaCIS.Core.Application.Contracts
return await noneDicomStudyQueryable.ToListAsync();
}
public void VerifyIsCanQC(SubjectVisit? subjectVisit, Guid? sujectVisitId = null)
{
if (sujectVisitId != null)
{
subjectVisit = _subjectVisitRepository.FirstOrDefaultAsync(t => t.Id == sujectVisitId).Result.IfNullThrowException();
}
if (subjectVisit!.CurrentActionUserId != _userInfo.Id)
{
throw new BusinessValidationFailedException("您不是该质控任务当前领取人,没有操作权限!");
}
}
[UnitOfWork]
[TypeFilter(typeof(TrialResourceFilter))]
@ -165,23 +166,6 @@ namespace IRaCIS.Core.Application.Contracts
return await _repository.Where<NoneDicomStudyFile>(t => t.NoneDicomStudy.SubjectVisitId == subjectVisitId).ProjectTo<NoneDicomStudyFileView>(_mapper.ConfigurationProvider, new { token = _userInfo.UserToken }).ToListAsync();
}
/// <summary>
/// 上传非Dicom 文件 支持压缩包
/// </summary>
[HttpPost]
public async Task<IResponseOutput> NewUploadNoneDicomFile([FromForm] UploadNoneDicomFileDto fileDto)
{
var file = this._httpContext.HttpContext?.Request.Form;
var result = await UploadNoneDicomFile(file, fileDto.subjectVisitId, fileDto.noneDicomStudyId);
if (result.IsSuccess)
{
var data = JsonConvert.DeserializeObject<DataInspectionAddDTO>(fileDto.AuditInfo);
data.GeneralId = fileDto.noneDicomStudyId;
await _inspectionService.AddInspectionRecordAsync(data);
}
return result;
}
/// <summary>
@ -301,5 +285,26 @@ namespace IRaCIS.Core.Application.Contracts
await _noneDicomStudyFileRepository.AddAsync(new NoneDicomStudyFile() { FileName = fileName, Path = relativePath, NoneDicomStudyId = noneDicomStudyId });
}
/// <summary>
/// 上传非Dicom 文件 支持压缩包
/// </summary>
[HttpPost]
[Obsolete]
public async Task<IResponseOutput> NewUploadNoneDicomFile([FromForm] UploadNoneDicomFileDto fileDto)
{
var file = this._httpContext.HttpContext?.Request.Form;
var result = await UploadNoneDicomFile(file, fileDto.subjectVisitId, fileDto.noneDicomStudyId);
if (result.IsSuccess)
{
var data = JsonConvert.DeserializeObject<DataInspectionAddDTO>(fileDto.AuditInfo);
data.GeneralId = fileDto.noneDicomStudyId;
await _inspectionService.AddInspectionRecordAsync(data);
}
return result;
}
}
}

View File

@ -765,10 +765,9 @@ namespace IRaCIS.Core.Application.Image.QA
await VerifyIsCanQCAsync(null, subjectVisitId);
var series = await _repository.Where<DicomSeries>(t => t.Id == seriesId, true).IgnoreQueryFilters().FirstOrDefaultAsync();
if (series == null) return Null404NotFound(series);
var series = (await _repository.Where<DicomSeries>(t => t.Id == seriesId, true).IgnoreQueryFilters().FirstOrDefaultAsync()).IfNullThrowException();
if (state == 1)
{
series.IsReading = false;
@ -781,8 +780,7 @@ namespace IRaCIS.Core.Application.Image.QA
{
series.IsDeleted = true;
var study = await _repository.Where<DicomStudy>(t => t.Id == studyId, true).IgnoreQueryFilters().FirstOrDefaultAsync();
if (study == null) return Null404NotFound(study);
var study = (await _repository.Where<DicomStudy>(t => t.Id == studyId, true).IgnoreQueryFilters().FirstOrDefaultAsync()).IfNullThrowException();
var instanceIdList = await _repository.Where<DicomInstance>(t => t.SeriesId == seriesId).Select(t => t.Id).ToListAsync();
@ -807,9 +805,8 @@ namespace IRaCIS.Core.Application.Image.QA
{
series.IsDeleted = false;
var study = await _repository.Where<DicomStudy>(t => t.Id == studyId, true).IgnoreQueryFilters().FirstOrDefaultAsync();
var study = (await _repository.Where<DicomStudy>(t => t.Id == studyId, true).IgnoreQueryFilters().FirstOrDefaultAsync()).IfNullThrowException();
if (study == null) return Null404NotFound(study);
var instanceIdList = await _repository.Where<DicomInstance>(t => t.SeriesId == seriesId).Select(t => t.Id).ToListAsync();
@ -985,7 +982,6 @@ namespace IRaCIS.Core.Application.Image.QA
subjectVisit = (await _subjectVisitRepository.FirstOrDefaultAsync(t => t.Id == sujectVisitId)).IfNullThrowException();
}
if (subjectVisit!.CurrentActionUserId != _userInfo.Id)
{
throw new BusinessValidationFailedException("您不是该质控任务当前领取人,没有操作权限!");

View File

@ -141,18 +141,6 @@ namespace IRaCIS.Core.Application.Services
return ResponseOutput.Ok();
}
/// <summary>
/// 设置受试者访视已执行 也就是将studyUploaded状态置为true 为了那些没有影像 人工设置准备
/// </summary>
/// <param name="subjectVisitId"></param>
/// <returns></returns>
[HttpPut("{trialId:guid}/{subjectVisitId:guid}")]
[TypeFilter(typeof(TrialResourceFilter))]
public async Task<IResponseOutput> SetSVExecuted(Guid subjectVisitId)
{
await _subjectVisitRepository.UpdatePartialFromQueryAsync(subjectVisitId, u => new SubjectVisit() { VisitExecuted = VisitExecutedEnum.Executed }, true);
return ResponseOutput.Ok();
}
/// <summary>
@ -205,6 +193,18 @@ namespace IRaCIS.Core.Application.Services
/// <summary>
/// 设置受试者访视已执行 也就是将studyUploaded状态置为true 为了那些没有影像 人工设置准备
/// </summary>
/// <param name="subjectVisitId"></param>
/// <returns></returns>
[HttpPut("{trialId:guid}/{subjectVisitId:guid}")]
[TypeFilter(typeof(TrialResourceFilter))]
[Obsolete]
public async Task<IResponseOutput> SetSVExecuted(Guid subjectVisitId)
{
await _subjectVisitRepository.UpdatePartialFromQueryAsync(subjectVisitId, u => new SubjectVisit() { VisitExecuted = VisitExecutedEnum.Executed }, true);
return ResponseOutput.Ok();
}
}
}