数据库异常处理
parent
a20ed9c876
commit
2ea2c037e8
|
@ -477,7 +477,6 @@ namespace IRaCIS.Application.Services
|
||||||
|
|
||||||
return await userQueryable.ToPagedListAsync(param.PageIndex, param.PageSize, param.SortField == string.Empty ? "UserName" : param.SortField, param.Asc);
|
return await userQueryable.ToPagedListAsync(param.PageIndex, param.PageSize, param.SortField == string.Empty ? "UserName" : param.SortField, param.Asc);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -192,8 +192,8 @@ namespace IRaCIS.Core.Application
|
||||||
|
|
||||||
ToBeCheckedCount = t.SubjectVisitList.Where(u => u.CheckState == CheckStateEnum.ToCheck).Count(),
|
ToBeCheckedCount = t.SubjectVisitList.Where(u => u.CheckState == CheckStateEnum.ToCheck).Count(),
|
||||||
|
|
||||||
ToBeRepliedCount = t.SubjectVisitList.Where(u => u.CheckState == CheckStateEnum.ToCheck &&
|
ToBeRepliedCount = t.SubjectVisitList.Where(u => u.CheckState == CheckStateEnum.CVIng &&
|
||||||
u.CheckChallengeDialogList.Any(t => t.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator)).Count(),
|
u.CheckChallengeDialogList.OrderByDescending(t=>t.CreateTime).First().UserTypeEnum== UserTypeEnum.ClinicalResearchCoordinator).Count(),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
@ -204,8 +204,8 @@ namespace IRaCIS.Core.Application
|
||||||
.Where(u => u.CheckState == CheckStateEnum.ToCheck).CountAsync();
|
.Where(u => u.CheckState == CheckStateEnum.ToCheck).CountAsync();
|
||||||
|
|
||||||
var totalToBeRepliedCount = await _subjectVisitRepository.Where(t => t.Trial.TrialUserList.Any(t => t.UserId == _userInfo.Id))
|
var totalToBeRepliedCount = await _subjectVisitRepository.Where(t => t.Trial.TrialUserList.Any(t => t.UserId == _userInfo.Id))
|
||||||
.Where(u => u.CheckState == CheckStateEnum.ToCheck &&
|
.Where(u => u.CheckState == CheckStateEnum.CVIng &&
|
||||||
u.CheckChallengeDialogList.Any(t => t.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator)).CountAsync();
|
u.CheckChallengeDialogList.OrderByDescending(t => t.CreateTime).First().UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator).CountAsync();
|
||||||
|
|
||||||
return ResponseOutput.Ok(result, new { TotalToBeCheckedCount = totalToBeCheckedCount, TotalToBeRepliedCount = totalToBeRepliedCount });
|
return ResponseOutput.Ok(result, new { TotalToBeCheckedCount = totalToBeCheckedCount, TotalToBeRepliedCount = totalToBeRepliedCount });
|
||||||
|
|
||||||
|
@ -892,7 +892,7 @@ namespace IRaCIS.Core.Application
|
||||||
[FromServices] IRepository<TaskMedicalReview> _taskMedicalReviewRepository)
|
[FromServices] IRepository<TaskMedicalReview> _taskMedicalReviewRepository)
|
||||||
{
|
{
|
||||||
|
|
||||||
var isPM = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager;
|
var isPM = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager|| _userInfo.UserTypeEnumInt == (int)UserTypeEnum.APM;
|
||||||
var isCRC = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.ClinicalResearchCoordinator;
|
var isCRC = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.ClinicalResearchCoordinator;
|
||||||
var isIQC = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.IQC;
|
var isIQC = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.IQC;
|
||||||
var isMIM = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.MIM;
|
var isMIM = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.MIM;
|
||||||
|
@ -917,9 +917,13 @@ namespace IRaCIS.Core.Application
|
||||||
TrialStatusStr=t.TrialStatusStr,
|
TrialStatusStr=t.TrialStatusStr,
|
||||||
|
|
||||||
ExpetiedTaskCount= isPM ? t.VisitTaskList.Where(t=>t.IsUrgent).Count():0,
|
ExpetiedTaskCount= isPM ? t.VisitTaskList.Where(t=>t.IsUrgent).Count():0,
|
||||||
|
|
||||||
ReReadingApprovalCount= isPM? t.VisitTaskReReadingList.Where(t=>t.OriginalReReadingTask.ReReadingApplyState==ReReadingApplyState.DocotorHaveApplyed).Count():0,
|
ReReadingApprovalCount= isPM? t.VisitTaskReReadingList.Where(t=>t.OriginalReReadingTask.ReReadingApplyState==ReReadingApplyState.DocotorHaveApplyed).Count():0,
|
||||||
|
|
||||||
PendingReconciliationCount=isPM? t.SubjectVisitList.Where(t=>t.CheckState==CheckStateEnum.ToCheck).Count():0,
|
PendingReconciliationCount=isPM? t.SubjectVisitList.Where(t=>t.CheckState==CheckStateEnum.ToCheck).Count():0,
|
||||||
|
|
||||||
|
PendingResponseCount=isPM? t.SubjectVisitList.Where(u => u.CheckState == CheckStateEnum.CVIng &&
|
||||||
|
u.CheckChallengeDialogList.OrderByDescending(t => t.CreateTime).First().UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator).Count() : 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -934,6 +938,9 @@ namespace IRaCIS.Core.Application
|
||||||
return ResponseOutput.Ok(result, new { TotalToBeReUploadCount = 0 });
|
return ResponseOutput.Ok(result, new { TotalToBeReUploadCount = 0 });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -552,6 +552,11 @@ namespace IRaCIS.Core.Infra.EFCore
|
||||||
|
|
||||||
throw new DBSaveFailedException("SQL 查询中存在语法错误。");
|
throw new DBSaveFailedException("SQL 查询中存在语法错误。");
|
||||||
}
|
}
|
||||||
|
catch (ReferenceConstraintException ex)
|
||||||
|
{
|
||||||
|
_logger.LogError(ex.Message);
|
||||||
|
throw new DBSaveFailedException("无法进行当前操作,当前数据不符合外键约束。");
|
||||||
|
}
|
||||||
catch (DbUpdateConcurrencyException ex)
|
catch (DbUpdateConcurrencyException ex)
|
||||||
{
|
{
|
||||||
_logger.LogError(ex.Message);
|
_logger.LogError(ex.Message);
|
||||||
|
|
Loading…
Reference in New Issue