增加 替换领取人 和释放领取人,修改提交访视紧急状态修改
parent
4f69b6067a
commit
d096461fda
|
@ -375,7 +375,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||||
return ResponseOutput.NotOk("核查通过的数据不允许申请回退");
|
return ResponseOutput.NotOk("核查通过的数据不允许申请回退");
|
||||||
}
|
}
|
||||||
|
|
||||||
await _subjectVisitRepository.UpdatePartialFromQueryAsync( subjectVisitId, u => new SubjectVisit() { RequestBackState = RequestBackStateEnum.CRC_RequestBack },true);
|
await _subjectVisitRepository.UpdatePartialFromQueryAsync(subjectVisitId, u => new SubjectVisit() { RequestBackState = RequestBackStateEnum.CRC_RequestBack }, true);
|
||||||
|
|
||||||
return ResponseOutput.Ok();
|
return ResponseOutput.Ok();
|
||||||
|
|
||||||
|
@ -861,7 +861,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||||
|
|
||||||
//提交了 但是IQC同意的时候 是可以删除的 | 普通提交后也不能删除
|
//提交了 但是IQC同意的时候 是可以删除的 | 普通提交后也不能删除
|
||||||
if (await _subjectVisitRepository.AnyAsync(t => t.Id == subjectVisitId && t.SubmitState == SubmitStateEnum.Submitted &&
|
if (await _subjectVisitRepository.AnyAsync(t => t.Id == subjectVisitId && t.SubmitState == SubmitStateEnum.Submitted &&
|
||||||
(!t.QCChallengeList.Any(u => u.ReuploadEnum == QCChanllengeReuploadEnum.QCAgreeUpload))) )
|
(!t.QCChallengeList.Any(u => u.ReuploadEnum == QCChanllengeReuploadEnum.QCAgreeUpload))))
|
||||||
{
|
{
|
||||||
return ResponseOutput.NotOk("CRC Has Submited Image,can not delete");
|
return ResponseOutput.NotOk("CRC Has Submited Image,can not delete");
|
||||||
}
|
}
|
||||||
|
@ -894,7 +894,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var success3 = await _dicomSeriesrepository.DeleteFromQueryAsync(t => t.StudyId == id,true);
|
var success3 = await _dicomSeriesrepository.DeleteFromQueryAsync(t => t.StudyId == id, true);
|
||||||
var success4 = await _repository.BatchDeleteAsync<StudyMonitor>(t => t.StudyId == id);
|
var success4 = await _repository.BatchDeleteAsync<StudyMonitor>(t => t.StudyId == id);
|
||||||
|
|
||||||
//删除 物理文件
|
//删除 物理文件
|
||||||
|
@ -946,6 +946,9 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||||
{
|
{
|
||||||
var dbSubjectVisit = (await _subjectVisitRepository.FirstOrDefaultAsync(t => t.Id == subjectVisitId)).IfNullThrowException();
|
var dbSubjectVisit = (await _subjectVisitRepository.FirstOrDefaultAsync(t => t.Id == subjectVisitId)).IfNullThrowException();
|
||||||
|
|
||||||
|
await VerifyIsCanQCAsync(dbSubjectVisit);
|
||||||
|
|
||||||
|
|
||||||
dbSubjectVisit.IsTake = true;
|
dbSubjectVisit.IsTake = true;
|
||||||
|
|
||||||
dbSubjectVisit.CurrentActionUserId = _userInfo.Id;
|
dbSubjectVisit.CurrentActionUserId = _userInfo.Id;
|
||||||
|
@ -982,11 +985,11 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||||
|
|
||||||
if (obtaionOrCancel)
|
if (obtaionOrCancel)
|
||||||
{
|
{
|
||||||
if (await _subjectVisitRepository.AnyAsync(t => t.CurrentActionUserId != null && t.IsTake && t.Id == subjectVisitId))
|
if (dbSubjectVisit.CurrentActionUserId != null && dbSubjectVisit.IsTake )
|
||||||
{
|
{
|
||||||
//throw new BusinessValidationFailedException("当前访视已被领取,不允许领取");
|
//throw new BusinessValidationFailedException("当前访视已被领取,不允许领取");
|
||||||
|
|
||||||
return ResponseOutput.NotOk("当前访视已被领取,不允许领取",ApiResponseCodeEnum.NeedTips);
|
return ResponseOutput.NotOk("当前访视已被领取,不允许领取", ApiResponseCodeEnum.NeedTips);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1003,7 +1006,6 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||||
// ))
|
// ))
|
||||||
//{
|
//{
|
||||||
|
|
||||||
|
|
||||||
// return ResponseOutput.NotOk("您已经领取了其他受试者,完成后才允许领取新的受试者");
|
// return ResponseOutput.NotOk("您已经领取了其他受试者,完成后才允许领取新的受试者");
|
||||||
//}
|
//}
|
||||||
|
|
||||||
|
@ -1074,6 +1076,11 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
if (dbSubjectVisit!.CurrentActionUserId != _userInfo.Id)
|
||||||
|
{
|
||||||
|
ResponseOutput.NotOk("您不是该质控任务当前领取人,没有操作权限!", ApiResponseCodeEnum.NeedTips);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (trialConfig.QCProcessEnum == TrialQCProcess.NotAudit)
|
if (trialConfig.QCProcessEnum == TrialQCProcess.NotAudit)
|
||||||
{
|
{
|
||||||
|
@ -1108,7 +1115,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||||
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return ResponseOutput.NotOk("项目配置为复审,不满足提交状态:已提交 或者 审核状态:InPrimaryQC/InSecondaryQC, 不允许释放");
|
return ResponseOutput.NotOk("项目配置为双审,不满足提交状态:已提交 或者 审核状态:InPrimaryQC|InSecondaryQC, 不允许释放");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1135,7 +1142,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||||
{
|
{
|
||||||
var sv = dbSubjectVisitList[0];
|
var sv = dbSubjectVisitList[0];
|
||||||
|
|
||||||
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>();
|
var nameList = await _subjectVisitRepository.Where(t => t.SubjectId == sv.SubjectId && t.SubmitState != SubmitStateEnum.Submitted && t.VisitNum < sv.VisitNum && t.IsLostVisit ==false).Select(t => t.VisitName).ToListAsync() ?? new List<string>();
|
||||||
|
|
||||||
if (sv.PDState == PDStateEnum.PDProgress)
|
if (sv.PDState == PDStateEnum.PDProgress)
|
||||||
{
|
{
|
||||||
|
@ -1228,6 +1235,17 @@ namespace IRaCIS.Core.Application.Image.QA
|
||||||
if (trialConfig.IsUrgent || dbSubjectVisit.Subject.IsUrgent || (dbSubjectVisit.PDState == PDStateEnum.PDProgress && !dbSubjectVisit.IsBaseLine) || (dbSubjectVisit.IsEnrollmentConfirm && dbSubjectVisit.IsBaseLine))
|
if (trialConfig.IsUrgent || dbSubjectVisit.Subject.IsUrgent || (dbSubjectVisit.PDState == PDStateEnum.PDProgress && !dbSubjectVisit.IsBaseLine) || (dbSubjectVisit.IsEnrollmentConfirm && dbSubjectVisit.IsBaseLine))
|
||||||
{
|
{
|
||||||
dbSubjectVisit.IsUrgent = true;
|
dbSubjectVisit.IsUrgent = true;
|
||||||
|
|
||||||
|
|
||||||
|
//PD确认的紧急会把前面所有未QC完成的访视均标记为紧急
|
||||||
|
|
||||||
|
var previosSVlist = await _subjectVisitRepository.Where(t => t.SubjectId == dbSubjectVisit.SubjectId && t.VisitNum < dbSubjectVisit.VisitNum && t.IsUrgent == false && t.SubmitState == SubmitStateEnum.Submitted, true).ToListAsync();
|
||||||
|
|
||||||
|
previosSVlist.ForEach(t =>
|
||||||
|
{
|
||||||
|
t.IsUrgent = true;
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue