diff --git a/IRaCIS.Core.Application/Service/Common/ExcelExportHelper.cs b/IRaCIS.Core.Application/Service/Common/ExcelExportHelper.cs index 3ee7c62e6..bcca83dbb 100644 --- a/IRaCIS.Core.Application/Service/Common/ExcelExportHelper.cs +++ b/IRaCIS.Core.Application/Service/Common/ExcelExportHelper.cs @@ -38,7 +38,7 @@ public static class ExcelExportHelper return new FileStreamResult(memoryStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") { - FileDownloadName = $"{exportFileNamePrefix}_{doc.Name}_{DateTime.Now.ToString("yyyy-MM-dd:hh:mm:ss")}.xlsx" + FileDownloadName = $"{exportFileNamePrefix}_{doc.Name.Substring(0,doc.Name.LastIndexOf('.'))}{DateTime.Now.ToString("yyyy-MM-dd:hh:mm:ss")}.xlsx" }; #endregion diff --git a/IRaCIS.Core.Application/Service/QC/NoneDicomStudyService.cs b/IRaCIS.Core.Application/Service/QC/NoneDicomStudyService.cs index 76c0dbf7a..985ac4231 100644 --- a/IRaCIS.Core.Application/Service/QC/NoneDicomStudyService.cs +++ b/IRaCIS.Core.Application/Service/QC/NoneDicomStudyService.cs @@ -83,6 +83,12 @@ namespace IRaCIS.Core.Application.Contracts [HttpDelete("{noneDicomStudyId:guid}/{trialId:guid}")] public async Task DeleteNoneDicomStudy(Guid noneDicomStudyId) { + if (_noneDicomStudyRepository.Where(t => t.Id == noneDicomStudyId) + .Any(t => t.NoneDicomFileList.Count() > 0)) + { + return ResponseOutput.NotOk("先移除文件,才允许删除非Dicom"); + } + var noneDicomStudy = await _noneDicomStudyRepository.FirstOrDefaultAsync(t => t.Id == noneDicomStudyId); if (noneDicomStudy == null) return Null404NotFound(noneDicomStudy); @@ -107,6 +113,12 @@ namespace IRaCIS.Core.Application.Contracts LatestScanDate = maxArray.Max() }); + + //如果既没有 dicom数据 也没有非dicom 文件 那么提交状态变更回去 + if (await _repository.CountAsync(t => t.SubjectVisitId == noneDicomStudy.SubjectVisitId) == 0 && await _repository.CountAsync(t => t.NoneDicomStudy.SubjectVisitId == noneDicomStudy.SubjectVisitId) == 0) + { + await _repository.UpdateFromQueryAsync(t => t.Id == noneDicomStudy.SubjectVisitId && t.SubmitState == SubmitStateEnum.ToSubmit, u => new SubjectVisit() { VisitExecuted = 0, SubmitState = SubmitStateEnum.None }); + } return ResponseOutput.Ok(); }