diff --git a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs
index 9cb07801..56c3c4ed 100644
--- a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs
+++ b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs
@@ -460,7 +460,39 @@ namespace IRaCIS.Core.API.Controllers
}
-
+ ///
+ /// 上传医学审核图片
+ ///
+ ///
+ ///
+ ///
+ [HttpPost("TaskMedicalReview/UploadMedicalReviewImage/{trialId:guid}/{taskMedicalReviewId:guid}")]
+ [TypeFilter(typeof(TrialResourceFilter))]
+ public async Task UploadMedicalReviewImage(Guid trialId, Guid taskMedicalReviewId)
+ {
+ string path = string.Empty;
+
+ await FileUploadAsync(async (fileName) =>
+ {
+
+ var (serverFilePath, relativePath, fileRealName) = FileStoreHelper.GetMedicalReviewImage(_hostEnvironment, fileName, trialId, taskMedicalReviewId);
+
+
+ await _repository.UpdatePartialFromQueryAsync(x => x.Id == taskMedicalReviewId, x => new TaskMedicalReview()
+ {
+ ImagePath = relativePath
+ });
+
+ path = relativePath;
+
+ return serverFilePath;
+ });
+
+ await _repository.SaveChangesAsync();
+ return ResponseOutput.Ok(path);
+ }
+
+
///
/// 上传非Dicom 文件 支持压缩包 多文件上传
diff --git a/IRaCIS.Core.API/IRaCIS.Core.API.xml b/IRaCIS.Core.API/IRaCIS.Core.API.xml
index cae7df97..4542724c 100644
--- a/IRaCIS.Core.API/IRaCIS.Core.API.xml
+++ b/IRaCIS.Core.API/IRaCIS.Core.API.xml
@@ -215,6 +215,14 @@
+
+
+ 上传医学审核图片
+
+
+
+
+
上传非Dicom 文件 支持压缩包 多文件上传
diff --git a/IRaCIS.Core.Application/Helper/FileStoreHelper.cs b/IRaCIS.Core.Application/Helper/FileStoreHelper.cs
index 22ca09d1..8e4bcd7b 100644
--- a/IRaCIS.Core.Application/Helper/FileStoreHelper.cs
+++ b/IRaCIS.Core.Application/Helper/FileStoreHelper.cs
@@ -345,6 +345,23 @@ public static class FileStoreHelper
}
+ public static (string PhysicalPath, string RelativePath, string FileRealName) GetMedicalReviewImage(IWebHostEnvironment _hostEnvironment, string fileName, Guid trialId, Guid taskMedicalReviewId)
+ {
+ var rootPath = FileStoreHelper.GetIRaCISRootDataFolder(_hostEnvironment);
+
+ string uploadFolderPath = Path.Combine(rootPath, StaticData.Folder.TrialDataFolder, trialId.ToString(), taskMedicalReviewId.ToString(), StaticData.Folder.NoneDicomFolder);
+
+ if (!Directory.Exists(uploadFolderPath)) Directory.CreateDirectory(uploadFolderPath);
+
+ var (trustedFileNameForFileStorage, fileRealName) = FileStoreHelper.GetStoreFileName(fileName);
+
+
+ var relativePath = $"/{StaticData.Folder.IRaCISDataFolder}/{StaticData.Folder.TrialDataFolder}/{trialId}/{taskMedicalReviewId}/{StaticData.Folder.NoneDicomFolder}/{trustedFileNameForFileStorage}";
+
+ var serverFilePath = Path.Combine(uploadFolderPath, trustedFileNameForFileStorage);
+
+ return (serverFilePath, relativePath, fileRealName);
+ }
//获取非dicom文件存放路径
public static (string PhysicalPath, string RelativePath, string FileRealName) GetNoneDicomFilePath(IWebHostEnvironment _hostEnvironment, string fileName, Guid trialId, Guid siteId, Guid subjectId, Guid subjectVisitId)
diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index d2c1cb31..02cf5067 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -1472,6 +1472,16 @@
答案
+
+
+ 是否完成
+
+
+
+
+ 是否关闭
+
+
是否有问题
@@ -1492,12 +1502,7 @@
审核建议
-
-
- 是否完成
-
-
-
+
是否关闭
@@ -1522,12 +1527,12 @@
审核建议
-
+
是否完成
-
+
是否关闭
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs
index 5d7d1e50..c37d9070 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicalReviewDto.cs
@@ -12,9 +12,6 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public class SendMedicalReviewDialogInDto
{
public Guid TaskMedicalReviewId { get; set; }
-
- public Guid VisitTaskId { get; set; }
-
public string Content { get; set; }
}
@@ -65,7 +62,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
/// 是否关闭
///
- public bool IsClosedDialo { get; set; }
+ public bool IsClosedDialog { get; set; }
public List TaskList { get; set; } = new List();
@@ -103,15 +100,10 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
public AuditAdvice AuditAdviceEnum { get; set; }
- ///
- /// 是否完成
- ///
- public bool IsReviewFinish { get; set; }
-
///
/// 是否关闭
///
- public bool IsClosedDialo { get; set; }
+ public bool IsClosedDialog { get; set; }
}
public class MedicalReviewInfo
@@ -148,7 +140,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
///
/// 是否关闭
///
- public bool IsClosedDialo { get; set; }
+ public bool IsClosedDialog { get; set; }
}
public class ReadingMedicineQuestion
@@ -224,6 +216,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public string TaskName { get; set; }
+ ///
+ /// 是否有全局更新
+ ///
+ public bool IsGlobalChange { get; set; }
+
///
/// 盲态名称
///
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs
index 6e8476d5..4dd48822 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingMedicalReviewService.cs
@@ -66,7 +66,7 @@ namespace IRaCIS.Core.Application.Service
medicalReviewInfo.VisitTaskId = taskInfo.Id;
medicalReviewInfo.ArmEnum = taskInfo.ArmEnum;
- medicalReviewInfo.IsClosedDialo = medicalReviewInfo.MedicalReviewInfo.IsClosedDialo;
+ medicalReviewInfo.IsClosedDialog = medicalReviewInfo.MedicalReviewInfo.IsClosedDialog;
medicalReviewInfo.IsReviewFinish = medicalReviewInfo.MedicalReviewInfo.IsReviewFinish;
@@ -250,8 +250,7 @@ namespace IRaCIS.Core.Application.Service
Questioning = inDto.Questioning,
ImagePath = inDto.ImagePath,
AuditAdviceEnum = inDto.AuditAdviceEnum,
- IsReviewFinish = inDto.IsReviewFinish,
- IsClosedDialo = inDto.IsClosedDialo
+ IsClosedDialog = inDto.IsClosedDialog
});
var result = await _taskMedicalReviewRepository.SaveChangesAsync();
@@ -265,13 +264,14 @@ namespace IRaCIS.Core.Application.Service
///
public async Task SendMedicalReviewDialog(SendMedicalReviewDialogInDto inDto)
{
+ var visitTaskId = await _taskMedicalReviewRepository.Where(x => x.Id == inDto.TaskMedicalReviewId).Select(x => x.VisitTaskId).FirstOrDefaultAsync();
ReadingMedicalReviewDialog dialog = new ReadingMedicalReviewDialog()
{
TaskMedicalReviewId = inDto.TaskMedicalReviewId,
UserTypeShortName = _userInfo.UserTypeShortName,
Content = inDto.Content,
UserTypeEnumInt = _userInfo.UserTypeEnumInt,
- VisitTaskId = inDto.VisitTaskId,
+ VisitTaskId = visitTaskId,
};
await _readingMedicalReviewDialogRepository.AddAsync(dialog);
@@ -281,6 +281,9 @@ namespace IRaCIS.Core.Application.Service
}
+ //public async Task
+
+
}
}
diff --git a/IRaCIS.Core.Domain/Allocation/TaskMedicalReview.cs b/IRaCIS.Core.Domain/Allocation/TaskMedicalReview.cs
index 6abc319a..45fe7361 100644
--- a/IRaCIS.Core.Domain/Allocation/TaskMedicalReview.cs
+++ b/IRaCIS.Core.Domain/Allocation/TaskMedicalReview.cs
@@ -117,7 +117,7 @@ namespace IRaCIS.Core.Domain.Models
///
/// 是否关闭对话
///
- public bool IsClosedDialo { get; set; }
+ public bool IsClosedDialog { get; set; }
///
/// 保存问题的时间