5.1前bug修复
This commit is contained in:
@@ -268,11 +268,8 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||
|
||||
qaReply.UserTypeEnum = (UserTypeEnum)_userInfo.UserTypeEnumInt;
|
||||
|
||||
var dbQCChallenge = await _repository.FirstOrDefaultAsync<QCChallenge>(t => t.Id == qaDialogCommand.QCChallengeId);
|
||||
|
||||
|
||||
if (dbQCChallenge == null) return Null404NotFound(dbQCChallenge);
|
||||
|
||||
var dbQCChallenge = (await _repository.FirstOrDefaultAsync<QCChallenge>(t => t.Id == qaDialogCommand.QCChallengeId)).IfNullThrowException();
|
||||
|
||||
dbQCChallenge.LatestMsgTime = DateTime.Now;
|
||||
|
||||
|
||||
@@ -1271,22 +1268,22 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||
{
|
||||
var sv = dbSubjectVisitList[0];
|
||||
|
||||
var existObj = await _subjectVisitRepository.FirstOrDefaultAsync(t => t.SubjectId == sv.SubjectId && t.SubmitState != SubmitStateEnum.Submitted && t.VisitNum < sv.VisitNum);
|
||||
var nameList = await _subjectVisitRepository.Where(t => t.SubjectId == sv.SubjectId && t.SubmitState != SubmitStateEnum.Submitted && t.VisitNum < sv.VisitNum).Select(t=>t.VisitName).ToListAsync()??new List<string>();
|
||||
|
||||
if (sv.PDState == PDStateEnum.PDProgress)
|
||||
{
|
||||
|
||||
if (existObj != null)
|
||||
if (nameList.Count()>0)
|
||||
{
|
||||
return ResponseOutput.NotOk($"系统检测发现该受试者当前访视之前的访视:{existObj.VisitName},未提交,疾病进展确认对阅片时限要求很高,请将上述访视提交或标记失访后,再提交当前访视!", 1,ApiResponseCodeEnum.NeedTips);
|
||||
return ResponseOutput.NotOk($"系统检测发现该受试者当前访视之前的访视:{string.Join('、',nameList)},未提交,疾病进展确认对阅片时限要求很高,请将上述访视提交或标记失访后,再提交当前访视!", 1,ApiResponseCodeEnum.NeedTips);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (existObj != null)
|
||||
if (nameList.Count() > 0)
|
||||
{
|
||||
|
||||
return ResponseOutput.NotOk($"系统检测发现该受试者当前访视之前的访视:{existObj.VisitName},未提交。请在该访视提交后,尽快完成上述访视的影像上传和提交。", 0, ApiResponseCodeEnum.NeedTips);
|
||||
return ResponseOutput.NotOk($"系统检测发现该受试者当前访视之前的访视:{string.Join('、', nameList)},未提交。请在该访视提交后,尽快完成上述访视的影像上传和提交。", 0, ApiResponseCodeEnum.NeedTips);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1981,6 +1978,8 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||
[HttpPost("{trialId:guid}")]
|
||||
public async Task<IResponseOutput> ForwardSVDicomImage(Guid[] subjectVisitIdList)
|
||||
{
|
||||
|
||||
bool isSuccess = false;
|
||||
List<DataInspection> datas = new List<DataInspection>();
|
||||
|
||||
foreach (var subjectVisitId in subjectVisitIdList)
|
||||
@@ -2033,9 +2032,11 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||
|
||||
foreach (var studyFolder in studyFolders)
|
||||
{
|
||||
if (!session.FileExists(Path.Combine(targetPath, studyFolder.Name)))
|
||||
var targetFolder = Path.Combine(targetPath, studyFolder.Name);
|
||||
|
||||
if (!session.FileExists(targetFolder))
|
||||
{
|
||||
session.CreateDirectory(targetPath);
|
||||
session.CreateDirectory(targetFolder);
|
||||
}
|
||||
|
||||
foreach (var file in studyFolder.GetFiles())
|
||||
@@ -2043,7 +2044,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||
if (file.Extension.Contains("dcm", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
string remoteFilePath =
|
||||
RemotePath.TranslateLocalPathToRemote(file.FullName, studyFolder.FullName, targetPath);
|
||||
RemotePath.TranslateLocalPathToRemote(file.FullName, studyFolder.FullName, targetFolder);
|
||||
|
||||
var result = session.PutFiles(file.FullName, remoteFilePath, false);
|
||||
|
||||
@@ -2062,6 +2063,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||
await _subjectVisitRepository.BatchUpdateNoTrackingAsync(t => t.Id == subjectVisitId,
|
||||
u => new SubjectVisit() { ForwardState = ForwardStateEnum.Forwarded, ForwardUserId = _userInfo.Id, ForwardTime = DateTime.Now });
|
||||
|
||||
isSuccess = true;
|
||||
keyValuePairs["ForwardState"] = ForwardStateEnum.Forwarded;
|
||||
}
|
||||
catch (Exception e)
|
||||
@@ -2070,6 +2072,8 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||
await _subjectVisitRepository.BatchUpdateNoTrackingAsync(t => t.Id == subjectVisitId,
|
||||
u => new SubjectVisit() { ForwardState = ForwardStateEnum.ForwardFailed });
|
||||
keyValuePairs["ForwardState"] = ForwardStateEnum.ForwardFailed;
|
||||
|
||||
return ResponseOutput.NotOk("转发失败 "+e.Message);
|
||||
}
|
||||
|
||||
|
||||
@@ -2083,7 +2087,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||
|
||||
await _subjectVisitRepository.SaveChangesAsync();
|
||||
|
||||
return ResponseOutput.Ok();
|
||||
return isSuccess?ResponseOutput.Ok():ResponseOutput.NotOk("转发失败");
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -196,7 +196,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
.ForMember(d => d.LatestReplyUserName, u => u.MapFrom(t => t.LatestReplyUser.UserName))
|
||||
.ForMember(d => d.CreateUserName, u => u.MapFrom(t => t.CreateUser.UserName))
|
||||
.ForMember(d => d.CurrentActionUserId, u => u.MapFrom(t => t.SubjectVisit.CurrentActionUserId))
|
||||
.ForMember(d => d.CreateUserName, u => u.MapFrom(t => t.SubjectVisit.CurrentActionUser.UserName))
|
||||
.ForMember(d => d.CurrentActionUserName, u => u.MapFrom(t => t.SubjectVisit.CurrentActionUser.UserName))
|
||||
|
||||
.ForMember(d => d.SubjectId, u => u.MapFrom(t => t.SubjectVisit.SubjectId ))
|
||||
.ForMember(d => d.ChallengeCode, u => u.MapFrom(s => "Q" + s.ChallengeCode.ToString("D5")));
|
||||
|
||||
Reference in New Issue
Block a user