Merge branch 'Test.IRC' of http://192.168.3.68:2000/XCKJ/irc-netcore-api into Test.IRC
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
commit
7137064ead
|
@ -51,7 +51,8 @@ public static class ExcelExportHelper
|
|||
var translateDataList = await _dictionaryService.GetBasicDataSelect(needTranslatePropertyList.Select(t => t.DicParentCode).Distinct().ToArray());
|
||||
|
||||
|
||||
var dic = JsonConvert.DeserializeObject<IDictionary<string, object>>(data.ToJsonNotIgnoreNull());
|
||||
var dic = (JsonConvert.DeserializeObject<IDictionary<string, object>>(data.ToJsonNotIgnoreNull())).IfNullThrowException();
|
||||
|
||||
|
||||
foreach (var key in dic.Keys)
|
||||
{
|
||||
|
@ -227,7 +228,7 @@ public static class ExcelExportHelper
|
|||
var translateDataList = await _dictionaryService.GetBasicDataSelect(needTranslatePropertyList.Select(t => t.DicParentCode).Distinct().ToArray());
|
||||
|
||||
|
||||
var dic = JsonConvert.DeserializeObject<IDictionary<string, object>>(data.ToJsonNotIgnoreNull());
|
||||
var dic = (JsonConvert.DeserializeObject<IDictionary<string, object>>(data.ToJsonNotIgnoreNull())).IfNullThrowException();
|
||||
|
||||
foreach (var key in dic.Keys)
|
||||
{
|
||||
|
|
|
@ -608,7 +608,7 @@ public static class FileStoreHelper
|
|||
|
||||
var json = File.ReadAllText( Path.Combine(_hostEnvironment.ContentRootPath, "appsettings.json"));
|
||||
|
||||
JObject jsonObject = JObject.Parse(json, new JsonLoadSettings() { CommentHandling = CommentHandling.Load });
|
||||
JObject jsonObject = (JObject.Parse(json, new JsonLoadSettings() { CommentHandling = CommentHandling.Load })).IfNullThrowException();
|
||||
|
||||
int switchingRatio = 80;
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ public static class SendEmailHelper
|
|||
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
catch (Exception )
|
||||
{
|
||||
|
||||
//---邮件发送失败,您进行的操作未能成功,请检查邮箱或联系维护人员
|
||||
|
|
|
@ -417,7 +417,14 @@
|
|||
<param name="applyReReadingCommand"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<!-- Badly formed XML comment ignored for member "M:IRaCIS.Core.Application.Service.Allocation.VisitTaskService.ReReadingTaskTrackingDeal(IRaCIS.Core.Domain.Models.VisitTask,IRaCIS.Core.Application.ViewModel.ConfirmReReadingCommand)" -->
|
||||
<member name="M:IRaCIS.Core.Application.Service.Allocation.VisitTaskService.ReReadingTaskTrackingDeal(IRaCIS.Core.Domain.Models.VisitTask,IRaCIS.Core.Application.ViewModel.ConfirmReReadingCommand)">
|
||||
<summary>
|
||||
重阅原任务跟踪处理
|
||||
</summary>
|
||||
<param name="origenalTask"></param>
|
||||
<param name="agreeReReadingCommand"></param>
|
||||
<exception cref="T:IRaCIS.Core.Infrastructure.BusinessValidationFailedException"></exception>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.Service.Allocation.VisitTaskService.PMReReadingConfirmOrBackInfluenceAnalysisAsync(System.Guid)">
|
||||
<summary>
|
||||
PM 申请重阅 被同意 或者 PM 直接退回的时候影响
|
||||
|
@ -11649,6 +11656,7 @@
|
|||
</summary>
|
||||
<param name="inQuery"></param>
|
||||
<param name="_subjectVisitRepository"></param>
|
||||
<param name="_trialRepository"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.PersonalWorkstation.GetImageClinicalDataToBeConfirmList(IRaCIS.Core.Application.Contracts.ImageClinicalDataToBeDoneQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial})">
|
||||
|
@ -11657,6 +11665,7 @@
|
|||
</summary>
|
||||
<param name="inQuery"></param>
|
||||
<param name="_subjectVisitRepository"></param>
|
||||
<param name="_trialRepository"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.PersonalWorkstation.GetCRCImageQuestionToBeDoneList(IRaCIS.Core.Application.Contracts.ImageQuestionToBeDoneQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial})">
|
||||
|
@ -11674,6 +11683,7 @@
|
|||
</summary>
|
||||
<param name="inQuery"></param>
|
||||
<param name="_subjectVisitRepository"></param>
|
||||
<param name="_trialRepository"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.PersonalWorkstation.GetImageReUploadToBeDoneList(IRaCIS.Core.Application.Contracts.ImageReUploadToBeDoneQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial})">
|
||||
|
@ -11682,14 +11692,16 @@
|
|||
</summary>
|
||||
<param name="inQuery"></param>
|
||||
<param name="_subjectVisitRepository"></param>
|
||||
<param name="_trialRepository"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.PersonalWorkstation.GetImageSubmittedToBeDoneList(IRaCIS.Core.Application.Contracts.ImageSubmittedToBeDoneQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial})">
|
||||
<summary>
|
||||
加急影像提交 --CRC 待办
|
||||
加急影像提交 --CRC 待办
|
||||
</summary>
|
||||
<param name="inQuery"></param>
|
||||
<param name="_subjectVisitRepository"></param>
|
||||
<param name="_trialRepository"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.PersonalWorkstation.GetImageQualityToBeDoneList(IRaCIS.Core.Application.Contracts.ImageQualityToBeDoneQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial})">
|
||||
|
@ -11698,14 +11710,16 @@
|
|||
</summary>
|
||||
<param name="inQuery"></param>
|
||||
<param name="_subjectVisitRepository"></param>
|
||||
<param name="_trialRepository"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.PersonalWorkstation.GetQCImageQuestionToBeDoneList(IRaCIS.Core.Application.Contracts.ImageQuestionToBeDoneQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial})">
|
||||
<summary>
|
||||
QC 质疑
|
||||
QC 质疑
|
||||
</summary>
|
||||
<param name="inQuery"></param>
|
||||
<param name="_subjectVisitRepository"></param>
|
||||
<param name="_trialRepository"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.PersonalWorkstation.GetIRImageReadingToBeDoneList(IRaCIS.Core.Application.Contracts.IRImageReadingToBeDoneQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial})">
|
||||
|
@ -11723,6 +11737,7 @@
|
|||
IR医学反馈
|
||||
</summary>
|
||||
<param name="inQuery"></param>
|
||||
<param name="_taskMedicalReviewRepository"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.PersonalWorkstation.GetMIMMedicalCommentsToBeDoneList(IRaCIS.Core.Application.Contracts.MedicalCommentsToBeDoneQuery,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskMedicalReview},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial})">
|
||||
|
@ -11731,6 +11746,7 @@
|
|||
</summary>
|
||||
<param name="inQuery"></param>
|
||||
<param name="_taskMedicalReviewRepository"></param>
|
||||
<param name="_trialReadingCriterionRepository"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:IRaCIS.Core.Application.PersonalWorkstation.GetMedicalCommentsFirstToBeDone(IRaCIS.Core.Application.Contracts.MedicalCommentsFirstToBeDoneQuery,IRaCIS.Core.Application.Interfaces.ITaskMedicalReviewService)">
|
||||
|
|
|
@ -52,7 +52,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
var list = await _taskAllocationRuleRepository.Where(t => t.TrialId == trialId).ProjectTo<TaskAllocationRuleDTO>(_mapper.ConfigurationProvider).ToListAsync();
|
||||
|
||||
//所有标准都是一样 后台只返回任意一个标准的就好了
|
||||
var trialTaskConfig = _repository.Where<ReadingQuestionCriterionTrial>(t => t.TrialId == trialId && t.IsConfirm).ProjectTo<TrialTaskConfigView>(_mapper.ConfigurationProvider).FirstOrDefault();
|
||||
var trialTaskConfig = await _repository.Where<ReadingQuestionCriterionTrial>(t => t.TrialId == trialId && t.IsConfirm).ProjectTo<TrialTaskConfigView>(_mapper.ConfigurationProvider).FirstNotNullAsync();
|
||||
|
||||
return (list, trialTaskConfig);
|
||||
}
|
||||
|
|
|
@ -338,7 +338,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
//需要处理的医生
|
||||
|
||||
var needAddDoctorUserIdList = configDoctorUserIdList.Except(subject.VisitTaskList.Select(t => (Guid)t.DoctorUserId)).ToList();
|
||||
var needAddDoctorUserIdList = configDoctorUserIdList.Except(subject.VisitTaskList.Select(t => t.DoctorUserId!.Value)).ToList();
|
||||
|
||||
if (needAddDoctorUserIdList.Count == 0)
|
||||
{
|
||||
|
|
|
@ -1069,7 +1069,6 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
|||
/// 获取有序阅片IQuery对象
|
||||
/// </summary>
|
||||
/// <param name="inDto"></param>
|
||||
|
||||
/// <returns></returns>
|
||||
public async Task<(int, List<IRUnReadSubjectView>)> GetOrderReadingIQueryable(GetOrderReadingIQueryableInDto inDto)
|
||||
{
|
||||
|
@ -1094,7 +1093,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
|||
//满足前序访视不存在 需要签署但是未签署 sql 相当复杂 同时想查询所有未读的统计数字 就无法统计 byzhouhang
|
||||
//但是加字段 IsFrontTaskNeedSignButNotSign 那么签名临床数据的时候,要对该subject 该标准的有效的任务 这个字段需要在签名的时候维护 采取这种方式 统计数字灵活
|
||||
//.Where(t => t.Subject.SubjectVisitTaskList.AsQueryable().Where(visitTaskLambda).Any(c => c.IsNeedClinicalDataSign == true && c.IsClinicalDataSign == false && c.VisitTaskNum < t.VisitTaskNum))
|
||||
.WhereIf(!string.IsNullOrEmpty(inDto.SubjectCode), t => (t.Subject.Code.Contains(inDto.SubjectCode) && t.IsAnalysisCreate == false) || (t.BlindSubjectCode.Contains(inDto.SubjectCode) && t.IsAnalysisCreate));
|
||||
.WhereIf(!string.IsNullOrEmpty(inDto.SubjectCode), t => (t.Subject.Code.Contains(inDto.SubjectCode!) && t.IsAnalysisCreate == false) || (t.BlindSubjectCode.Contains(inDto.SubjectCode!) && t.IsAnalysisCreate));
|
||||
|
||||
|
||||
var visitGroupQuery = visitQuery.GroupBy(x => new { x.SubjectId, x.Subject.Code, x.BlindSubjectCode });
|
||||
|
@ -1438,9 +1437,11 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
|||
|
||||
|
||||
/// <summary>
|
||||
/// 重阅原任务跟踪处理
|
||||
/// 重阅原任务跟踪处理
|
||||
/// </summary>
|
||||
/// <param name="origenalTask"></param>
|
||||
/// <param name="agreeReReadingCommand"></param>
|
||||
/// <exception cref="BusinessValidationFailedException"></exception>
|
||||
private void ReReadingTaskTrackingDeal(VisitTask origenalTask, ConfirmReReadingCommand agreeReReadingCommand)
|
||||
{
|
||||
if (origenalTask.ReReadingApplyState == ReReadingApplyState.DocotorHaveApplyed || origenalTask.ReReadingApplyState == ReReadingApplyState.TrialGroupHaveApplyed)
|
||||
|
@ -1623,7 +1624,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
|||
{
|
||||
ReReadingTaskTrackingDeal(influenceTask, agreeReReadingCommand);
|
||||
|
||||
await InfluenceAddtioncalEvaluationCritrionAsync(origenalTask, influenceTaskList.Where(t => t.Id != origenalTask.Id).Where(t => t.SourceSubjectVisitId != null).Select(t => (Guid)t.SourceSubjectVisitId).Distinct().ToList());
|
||||
await InfluenceAddtioncalEvaluationCritrionAsync(origenalTask, influenceTaskList.Where(t => t.Id != origenalTask.Id).Where(t => t.SourceSubjectVisitId != null).Select(t => t.SourceSubjectVisitId!.Value).Distinct().ToList());
|
||||
|
||||
await PMReReadingConfirmOrBackInfluenceAnalysisAsync(origenalTask.SubjectId);
|
||||
|
||||
|
@ -1827,7 +1828,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
|||
|
||||
await SetMedicalReviewInvalidAsync(influenceTaskList, false);
|
||||
|
||||
await InfluenceAddtioncalEvaluationCritrionAsync(origenalTask, influenceTaskList.Where(t => t.Id != origenalTask.Id).Where(t => t.SourceSubjectVisitId != null).Select(t => (Guid)t.SourceSubjectVisitId).Distinct().ToList(), false);
|
||||
await InfluenceAddtioncalEvaluationCritrionAsync(origenalTask, influenceTaskList.Where(t => t.Id != origenalTask.Id).Where(t => t.SourceSubjectVisitId != null).Select(t => t.SourceSubjectVisitId!.Value).Distinct().ToList(), false);
|
||||
|
||||
}
|
||||
|
||||
|
@ -2261,7 +2262,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
|||
if (influenceTask.Id == task.Id)
|
||||
{
|
||||
|
||||
await InfluenceAddtioncalEvaluationCritrionAsync(task, influenceTaskList.Where(t => t.Id != task.Id).Where(t => t.SourceSubjectVisitId != null).Select(t => (Guid)t.SourceSubjectVisitId).Distinct().ToList());
|
||||
await InfluenceAddtioncalEvaluationCritrionAsync(task, influenceTaskList.Where(t => t.Id != task.Id).Where(t => t.SourceSubjectVisitId != null).Select(t => t.SourceSubjectVisitId!.Value).Distinct().ToList());
|
||||
|
||||
await PMReReadingConfirmOrBackInfluenceAnalysisAsync(influenceTask.SubjectId);
|
||||
|
||||
|
|
|
@ -43,12 +43,10 @@ namespace IRaCIS.Application.Services
|
|||
|
||||
private readonly IRepository<SystemBasicData> _systemBasicDatarepository;
|
||||
|
||||
private readonly IWebHostEnvironment _hostEnvironment;
|
||||
private readonly IRepository<User> _userRepository;
|
||||
|
||||
private readonly ITokenService _tokenService;
|
||||
|
||||
private readonly IMapper _mapper;
|
||||
|
||||
private readonly IRepository<Trial> _trialRepository;
|
||||
private readonly IRepository<UserType> _userTypeRepository;
|
||||
|
@ -62,21 +60,18 @@ namespace IRaCIS.Application.Services
|
|||
|
||||
public MailVerificationService(IRepository<VerificationCode> verificationCodeRepository,
|
||||
IRepository<SystemBasicData> systemBasicDatarepository,
|
||||
IWebHostEnvironment hostEnvironment,
|
||||
IRepository<User> userRepository,
|
||||
ITokenService tokenService,
|
||||
IRepository<Trial> trialRepository,
|
||||
IRepository<UserType> userTypeRepository,
|
||||
IRepository<Doctor> doctorTypeRepository,
|
||||
IMapper mapper, IOptionsMonitor<SystemEmailSendConfig> systemEmailConfig, IDistributedLockProvider distributedLockProvider)
|
||||
IOptionsMonitor<SystemEmailSendConfig> systemEmailConfig, IDistributedLockProvider distributedLockProvider)
|
||||
{
|
||||
_systemEmailConfig = systemEmailConfig.CurrentValue;
|
||||
_verificationCodeRepository = verificationCodeRepository;
|
||||
_systemBasicDatarepository = systemBasicDatarepository;
|
||||
|
||||
_hostEnvironment = hostEnvironment;
|
||||
|
||||
_mapper = mapper;
|
||||
|
||||
_tokenService = tokenService;
|
||||
_userRepository = userRepository;
|
||||
|
|
|
@ -23,7 +23,7 @@ namespace IRaCIS.Application.Services
|
|||
public async Task<ResearchPublicationDTO> GetResearchPublication(Guid doctorId)
|
||||
{
|
||||
var doctorScientificResearchInfo = await researchPublicationRepository.Where(o => o.DoctorId == doctorId)
|
||||
.ProjectTo<ResearchPublicationDTO>(_mapper.ConfigurationProvider).FirstOrDefaultAsync();
|
||||
.ProjectTo<ResearchPublicationDTO>(_mapper.ConfigurationProvider).FirstNotNullAsync();
|
||||
|
||||
return doctorScientificResearchInfo;
|
||||
}
|
||||
|
|
|
@ -367,7 +367,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
sendEmailConfig.HtmlBodyStr = htmlBodyStr.Replace(EmailNamePlaceholder, string.Join(isEn_us ? ", " : "、", toUserList.Select(t => t.FullName).ToList()));
|
||||
}
|
||||
|
||||
if (toUserList.Count() == 0)
|
||||
if (toUserList.Count == 0)
|
||||
{
|
||||
//---没有收件人,无法发送邮件
|
||||
throw new BusinessValidationFailedException(_localizer["TrialEmailN_NoRecipient"]);
|
||||
|
|
|
@ -322,7 +322,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
|
||||
//自动发送
|
||||
if (sendEmailConfig != null)
|
||||
if (sendEmailConfig != null && trialEmailConfig !=null)
|
||||
{
|
||||
#region 不同标准 不同项目配置 发送邮件的时机 处理具体逻辑
|
||||
|
||||
|
@ -412,7 +412,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
//双人 产生裁判,并且裁判完成 发
|
||||
else if (taskList.Count == 3 && taskList.Count(t => t.ReadingTaskState == ReadingTaskState.HaveSigned) == 3 && taskList.Where(t => t.ReadingCategory == ReadingCategory.Judge).Count() == 1)
|
||||
{
|
||||
var judgeResultId = taskList.Where(t => t.ReadingCategory == ReadingCategory.Judge).First().JudgeResultTaskId.Value;
|
||||
var judgeResultId = taskList.Where(t => t.ReadingCategory == ReadingCategory.Judge).First()!.JudgeResultTaskId!.Value;
|
||||
answer = await TranslatePdStateAsync(judgeResultId, ReadingCategory.Visit, taskInfo.CriterionType);
|
||||
|
||||
isNeedSend = await DealMedicalReviewTasKGenerateAndIsSendAsync(taskInfo.TrialId, isHandSend, answer, taskList.Where(t => t.ReadingCategory == ReadingCategory.Judge).Select(t => t.Id).ToList(), minUserIdList);
|
||||
|
@ -458,7 +458,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
else if (taskList.Count == 3 && taskList.Count(t => t.ReadingTaskState == ReadingTaskState.HaveSigned) == 3 && taskList.Where(t => t.ReadingCategory == ReadingCategory.Judge).Count() == 1 && taskList.Where(t => t.ReadingCategory == ReadingCategory.Global).Count() == 2)
|
||||
{
|
||||
|
||||
var judgeResultId = taskList.Where(t => t.ReadingCategory == ReadingCategory.Judge).First().JudgeResultTaskId.Value;
|
||||
var judgeResultId = taskList.Where(t => t.ReadingCategory == ReadingCategory.Judge).First().JudgeResultTaskId!.Value;
|
||||
answer = await TranslatePdStateAsync(judgeResultId, ReadingCategory.Global, taskInfo.CriterionType);
|
||||
|
||||
isNeedSend = await DealMedicalReviewTasKGenerateAndIsSendAsync(taskInfo.TrialId, isHandSend, answer, taskList.Where(t => t.ReadingCategory == ReadingCategory.Judge).Select(t => t.Id).ToList(), minUserIdList);
|
||||
|
@ -906,7 +906,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
var task = taskList.FirstOrDefault(t => t.ReadingCategory == ReadingCategory.Visit);
|
||||
|
||||
var filePath = await BaseBusinessScenarioSendEmailAsync(task.Id, true, EmailStoreSendMode.OnlyStoreLocalNotSentEmail, string.Empty);
|
||||
var filePath = await BaseBusinessScenarioSendEmailAsync(task!.Id, true, EmailStoreSendMode.OnlyStoreLocalNotSentEmail, string.Empty);
|
||||
|
||||
return ResponseOutput.Ok(new { RelativePath = filePath, TaskName = task.TaskName, VisitTaskId = task.Id });
|
||||
}
|
||||
|
@ -915,7 +915,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
var task = taskList.FirstOrDefault(t => t.ReadingCategory == ReadingCategory.Judge);
|
||||
|
||||
var filePath = await BaseBusinessScenarioSendEmailAsync(task.Id, true, EmailStoreSendMode.OnlyStoreLocalNotSentEmail, string.Empty);
|
||||
var filePath = await BaseBusinessScenarioSendEmailAsync(task!.Id, true, EmailStoreSendMode.OnlyStoreLocalNotSentEmail, string.Empty);
|
||||
|
||||
return ResponseOutput.Ok(new { RelativePath = filePath, TaskName = task.TaskName, VisitTaskId = task.Id });
|
||||
}
|
||||
|
@ -952,7 +952,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
var task = taskList.FirstOrDefault(t => t.ReadingCategory == ReadingCategory.Global);
|
||||
|
||||
var filePath = await BaseBusinessScenarioSendEmailAsync(task.Id, true, EmailStoreSendMode.OnlyStoreLocalNotSentEmail, string.Empty);
|
||||
var filePath = await BaseBusinessScenarioSendEmailAsync(task!.Id, true, EmailStoreSendMode.OnlyStoreLocalNotSentEmail, string.Empty);
|
||||
|
||||
return ResponseOutput.Ok(new { RelativePath = filePath, TaskName = task.TaskName, VisitTaskId = task.Id });
|
||||
}
|
||||
|
@ -961,7 +961,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
var task = taskList.FirstOrDefault(t => t.ReadingCategory == ReadingCategory.Judge);
|
||||
|
||||
var filePath = await BaseBusinessScenarioSendEmailAsync(task.Id, true, EmailStoreSendMode.OnlyStoreLocalNotSentEmail, string.Empty);
|
||||
var filePath = await BaseBusinessScenarioSendEmailAsync(task!.Id, true, EmailStoreSendMode.OnlyStoreLocalNotSentEmail, string.Empty);
|
||||
|
||||
return ResponseOutput.Ok(new { RelativePath = filePath, TaskName = task.TaskName, VisitTaskId = task.Id });
|
||||
}
|
||||
|
|
|
@ -723,7 +723,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
{
|
||||
|
||||
// $"当前访视检查时间{waitUploadItem.StudyDate?.ToString("yyyy-MM-dd")}不能早于前序访视检查时间{before?.ToString("yyyy-MM-dd")},请核对检查数据是否有误",
|
||||
result.Add(new VerifyStudyUploadResult() { ErrorMesseage = _localizer["Study_VisitBeforePrevError", waitUploadItem.StudyDate?.ToString("yyyy-MM-dd"), before?.ToString("yyyy-MM-dd")], StudyInstanceUid = waitUploadItem.StudyInstanceUid });
|
||||
result.Add(new VerifyStudyUploadResult() { ErrorMesseage = _localizer["Study_VisitBeforePrevError", waitUploadItem.StudyDate?.ToString("yyyy-MM-dd")!, before?.ToString("yyyy-MM-dd")!], StudyInstanceUid = waitUploadItem.StudyInstanceUid });
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -733,7 +733,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
|||
if (after != null && waitUploadItem.StudyDate != null && after < waitUploadItem.StudyDate)
|
||||
{
|
||||
// $"当前访视检查时间{waitUploadItem.StudyDate?.ToString("yyyy-MM-dd")}不能晚于该访视之后的检查时间{after?.ToString("yyyy-MM-dd")},请核对检查数据是否有误"
|
||||
result.Add(new VerifyStudyUploadResult() { ErrorMesseage = _localizer["Study_VisitAfterSubseqError", waitUploadItem.StudyDate?.ToString("yyyy-MM-dd"), after?.ToString("yyyy-MM-dd")], StudyInstanceUid = waitUploadItem.StudyInstanceUid });
|
||||
result.Add(new VerifyStudyUploadResult() { ErrorMesseage = _localizer["Study_VisitAfterSubseqError", waitUploadItem.StudyDate?.ToString("yyyy-MM-dd")!, after?.ToString("yyyy-MM-dd")!], StudyInstanceUid = waitUploadItem.StudyInstanceUid });
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -197,7 +197,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
//找到上一条Id
|
||||
|
||||
|
||||
var currentInspection = await _dataInspectionRepository.Where(t => t.Id == id).Select(t => new { t.GeneralId, t.ObjectRelationParentId, t.CreateTime }).FirstOrDefaultAsync();
|
||||
var currentInspection = await _dataInspectionRepository.Where(t => t.Id == id).Select(t => new { t.GeneralId, t.ObjectRelationParentId, t.CreateTime }).FirstNotNullAsync();
|
||||
|
||||
var beforeId = await _dataInspectionRepository.Where(x => x.GeneralId == currentInspection.GeneralId && x.CreateTime <= currentInspection.CreateTime && x.Id != id).OrderByDescending(x => x.CreateTime).Select(t => t.Id)
|
||||
.FirstOrDefaultAsync();
|
||||
|
@ -241,7 +241,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
var listIdentification = auditDatas.Select(x => x.Identification).Distinct().ToList();
|
||||
foreach (var item in auditDatas)
|
||||
{
|
||||
Dictionary<string, object> jsonDict = JsonConvert.DeserializeObject<Dictionary<string, object>>(item.JsonStr);
|
||||
Dictionary<string, object> jsonDict = (JsonConvert.DeserializeObject<Dictionary<string, object>>(item.JsonStr)).IfNullThrowException();
|
||||
|
||||
if (!jsonDict.ContainsKey(nameof(InspectionJsonDetail.CommonData)))
|
||||
{
|
||||
|
@ -386,7 +386,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
if (relationParentInspection != null)
|
||||
{
|
||||
|
||||
Dictionary<string, object> jsonDic = JsonConvert.DeserializeObject<Dictionary<string, object>>(relationParentInspection.JsonDetail);
|
||||
Dictionary<string, object> jsonDic = (JsonConvert.DeserializeObject<Dictionary<string, object>>(relationParentInspection.JsonDetail)).IfNullThrowConvertException();
|
||||
|
||||
|
||||
//避免对象信息记录 把 Data里面的信息也取过去 但是加上稽查对象的前缀
|
||||
|
@ -539,7 +539,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
|
||||
}).ToList();
|
||||
|
||||
var jsonDataValueDic = JsonConvert.DeserializeObject<IDictionary<string, object>>(jsonStr);
|
||||
var jsonDataValueDic = (JsonConvert.DeserializeObject<IDictionary<string, object>>(jsonStr)).IfNullThrowConvertException();
|
||||
foreach (var item in list)
|
||||
{
|
||||
if (!jsonDataValueDic.ContainsKey(item.Key))
|
||||
|
@ -883,7 +883,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
DateType = child.DateType,
|
||||
}).ToListAsync();
|
||||
|
||||
var JsonData = JsonConvert.DeserializeObject<IDictionary<string, object>>(Data.JsonDetail);
|
||||
var JsonData = (JsonConvert.DeserializeObject<IDictionary<string, object>>(Data.JsonDetail)).IfNullThrowException();
|
||||
|
||||
foreach (var item in JsonData.Keys)
|
||||
{
|
||||
|
@ -894,12 +894,12 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
if (datefirst.DateType == FrontAuditDateType.Date.GetDescription())
|
||||
{
|
||||
JsonData[item] = DateTime.Parse(JsonData[item].ToString()).ToString("yyyy-MM-dd");
|
||||
JsonData[item] = DateTime.Parse(JsonData[item].ToString()!).ToString("yyyy-MM-dd");
|
||||
}
|
||||
|
||||
if (datefirst.DateType == FrontAuditDateType.DateTime.GetDescription())
|
||||
{
|
||||
JsonData[item] = DateTime.Parse(JsonData[item].ToString()).ToString("yyyy-MM-dd HH:mm:ss");
|
||||
JsonData[item] = DateTime.Parse(JsonData[item].ToString()!).ToString("yyyy-MM-dd HH:mm:ss");
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
|
|
|
@ -84,9 +84,9 @@ namespace IRaCIS.Core.Application.Service.Inspection
|
|||
data.Identification.ToLower()
|
||||
equals
|
||||
leftfrontAuditConfig.Identification.ToLower()
|
||||
join moduleTypec in _repository.GetQueryable<Dictionary>() on new { ModuleType = leftfrontAuditConfig.ModuleTypeId.Value } equals new { ModuleType = moduleTypec.Id } into moduleTypectemp
|
||||
join moduleTypec in _repository.GetQueryable<Dictionary>() on new { ModuleType = leftfrontAuditConfig.ModuleTypeId!.Value } equals new { ModuleType = moduleTypec.Id } into moduleTypectemp
|
||||
from leftmoduleTypec in moduleTypectemp.DefaultIfEmpty()
|
||||
join OptTypec in _repository.GetQueryable<Dictionary>() on new { ModuleType = leftfrontAuditConfig.OptTypeId.Value } equals new { ModuleType = OptTypec.Id } into optTypetemp
|
||||
join OptTypec in _repository.GetQueryable<Dictionary>() on new { ModuleType = leftfrontAuditConfig.OptTypeId!.Value } equals new { ModuleType = OptTypec.Id } into optTypetemp
|
||||
from leftOptType in optTypetemp.DefaultIfEmpty()
|
||||
|
||||
select new GetDataInspectionOutDto()
|
||||
|
|
|
@ -701,8 +701,8 @@ namespace IRaCIS.Application.Services
|
|||
.WhereIf(inQuery.OptType != null, t => t.OptType == inQuery.OptType)
|
||||
.WhereIf(inQuery.BeginDate != null, t => t.CreateTime >= inQuery.BeginDate)
|
||||
.WhereIf(inQuery.EndDate != null, t => t.CreateTime <= inQuery.EndDate)
|
||||
.WhereIf(!string.IsNullOrEmpty(inQuery.LoginFaildName), t => t.LoginFaildName.Contains(inQuery.LoginFaildName))
|
||||
.WhereIf(!string.IsNullOrEmpty(inQuery.IP), t => t.IP.Contains(inQuery.IP))
|
||||
.WhereIf(!string.IsNullOrEmpty(inQuery.LoginFaildName), t => t.LoginFaildName.Contains(inQuery.LoginFaildName!))
|
||||
.WhereIf(!string.IsNullOrEmpty(inQuery.IP), t => t.IP.Contains(inQuery.IP!))
|
||||
.ProjectTo<UserLogView>(_mapper.ConfigurationProvider);
|
||||
|
||||
var pageList = await userLogQueryable.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, string.IsNullOrWhiteSpace(inQuery.SortField) ? "Id" : inQuery.SortField, inQuery.Asc);
|
||||
|
|
|
@ -111,7 +111,7 @@ namespace IRaCIS.Application.Services
|
|||
entity.ReadingClinicalDataState = ReadingClinicalDataStatus.HaveUploaded;
|
||||
entity.IsBlind = null;
|
||||
entity.IsComplete = null;
|
||||
entity.FileCount = entity.ReadingClinicalDataPDFList.Count();
|
||||
entity.FileCount = entity.ReadingClinicalDataPDFList.Count;
|
||||
await _readingClinicalDataRepository.AddAsync(entity, true);
|
||||
var success = await _readingClinicalDataRepository.SaveChangesAsync();
|
||||
return ResponseOutput.Ok(entity.Id);
|
||||
|
@ -509,7 +509,7 @@ namespace IRaCIS.Application.Services
|
|||
inDto.UploadRole = UploadRole.PM;
|
||||
}
|
||||
|
||||
ReadModule readModule = null;
|
||||
ReadModule? readModule = null;
|
||||
if (inDto.IsVisit == false)
|
||||
{
|
||||
readModule = await _readModuleRepository.Where(x => x.Id == inDto.ReadingId).FirstOrDefaultAsync();
|
||||
|
@ -534,7 +534,7 @@ namespace IRaCIS.Application.Services
|
|||
.WhereIf(inDto.IsVisit && inDto.IsBaseLine, x => x.ClinicalDataLevel == ClinicalLevel.Subject || x.ClinicalDataLevel == ClinicalLevel.SubjectVisit)
|
||||
.WhereIf(inDto.IsVisit && !inDto.IsBaseLine, x => x.ClinicalDataLevel == ClinicalLevel.SubjectVisit)
|
||||
.WhereIf(!inDto.IsVisit, x => x.ClinicalDataLevel == ClinicalLevel.ImageRead || x.ClinicalDataLevel == ClinicalLevel.OncologyRead)
|
||||
.WhereIf(readModule != null, x => x.ClinicalDataLevel == keyValuePairs[readModule.ModuleType])
|
||||
.WhereIf(readModule != null, x => x.ClinicalDataLevel == keyValuePairs[readModule!.ModuleType])
|
||||
.WhereIf(inDto.TrialReadingCriterionId!=null,x=>x.TrialClinicalDataSetCriteriaList.Any(y=>y.TrialReadingCriterionId== inDto.TrialReadingCriterionId))
|
||||
//.WhereIf(criterion!=null,x=>x.CriterionEnumListStr.Contains($"|{(int)criterion.CriterionType}|"))
|
||||
.Select(x => new GetTrialClinicalDataSelectOutDto()
|
||||
|
@ -656,7 +656,7 @@ namespace IRaCIS.Application.Services
|
|||
|
||||
return (result, new
|
||||
{
|
||||
IsCanAddClinicalData = clinicalDataList.Count() > 0,
|
||||
IsCanAddClinicalData = clinicalDataList.Count > 0,
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -715,7 +715,7 @@ namespace IRaCIS.Application.Services
|
|||
CheckDate = y.CheckDate,
|
||||
ClinicalFormId = y.Id
|
||||
}).ToList();
|
||||
x.FileCount = x.ClinicalFromList.Count();
|
||||
x.FileCount = x.ClinicalFromList.Count;
|
||||
});
|
||||
|
||||
|
||||
|
@ -889,7 +889,7 @@ namespace IRaCIS.Application.Services
|
|||
CheckDate = y.CheckDate,
|
||||
ClinicalFormId = y.Id
|
||||
}).ToList();
|
||||
x.FileCount = x.ClinicalFromList.Count();
|
||||
x.FileCount = x.ClinicalFromList.Count;
|
||||
});
|
||||
|
||||
// 这里处理CRC上传 阅片期的临床数据
|
||||
|
|
|
@ -59,7 +59,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
.WhereIf(inDto.CriterionTypeEnum != null, x => x.CriterionTypeEnum==inDto.CriterionTypeEnum)
|
||||
.WhereIf(inDto.TrialReadingCriterionId != null, x => x.CriterionTypeEnum== criterionEnum || x.IsGeneral==true)
|
||||
.WhereIf(inDto.IsGeneral != null, x => x.IsGeneral == inDto.IsGeneral)
|
||||
.WhereIf(inDto.LanguageType != null, x => x.LanguageType == inDto.LanguageType.Value)
|
||||
.WhereIf(inDto.LanguageType != null, x => x.LanguageType == inDto.LanguageType!.Value)
|
||||
.ProjectTo<ReadingMedicineSystemQuestionView>(_mapper.ConfigurationProvider).OrderBy(x => x.ShowOrder);
|
||||
|
||||
return await query.ToPagedListAsync(inDto.PageIndex, inDto.PageSize, new string[2] { "LanguageType desc", "ShowOrder asc" });
|
||||
|
|
|
@ -883,7 +883,7 @@ namespace IRaCIS.Application.Services
|
|||
{
|
||||
var question = x.Clone();
|
||||
question.ReadingQuestionCriterionSystemId = inDto.ToSystemCriterionId;
|
||||
question.Id = questionRelation[question.Id.Value];
|
||||
question.Id = questionRelation[question.Id!.Value];
|
||||
if (question.ParentId != null)
|
||||
{
|
||||
question.ParentId = questionRelation[question.ParentId ?? default(Guid)];
|
||||
|
|
|
@ -1148,7 +1148,7 @@ namespace IRaCIS.Application.Services
|
|||
var firstData = newPageQusetionList.FirstOrDefault();
|
||||
var page = new TrialReadQuestionData()
|
||||
{
|
||||
PageName = firstData.PageName,
|
||||
PageName = firstData!.PageName,
|
||||
IsPage = true,
|
||||
IsPublicPage = firstData.IsPublicPage,
|
||||
};
|
||||
|
@ -1163,8 +1163,8 @@ namespace IRaCIS.Application.Services
|
|||
groupList.Add(page);
|
||||
}
|
||||
|
||||
result.PublicPage = groupList.Where(x => x.IsPublicPage.Value).ToList();
|
||||
result.MultiPage = groupList.Where(x => !x.IsPublicPage.Value).ToList();
|
||||
result.PublicPage = groupList.Where(x => x.IsPublicPage!.Value).ToList();
|
||||
result.MultiPage = groupList.Where(x => !x.IsPublicPage!.Value).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1991,7 +1991,7 @@ namespace IRaCIS.Application.Services
|
|||
{
|
||||
Dictionary<CriterionType, string> errorMsgDic = new Dictionary<CriterionType, string>()
|
||||
{
|
||||
{CriterionType.RECIST1Point1, _localizer["ReadingImage_Maxlesion", item.MaxRowCount.Value]},
|
||||
{CriterionType.RECIST1Point1, _localizer["ReadingImage_Maxlesion", item.MaxRowCount!.Value]},
|
||||
|
||||
{CriterionType.PCWG3, _localizer["ReadingImage_PCWGMaximum", item.MaxRowCount.Value]},
|
||||
};
|
||||
|
@ -2401,7 +2401,7 @@ namespace IRaCIS.Application.Services
|
|||
VisitNum = x.VisitTaskNum,
|
||||
TrialReadingCriterionId = x.TrialReadingCriterionId,
|
||||
|
||||
}).FirstOrDefaultAsync();
|
||||
}).FirstNotNullAsync();
|
||||
|
||||
trialReadingCriterionId = task.TrialReadingCriterionId;
|
||||
|
||||
|
@ -2411,7 +2411,7 @@ namespace IRaCIS.Application.Services
|
|||
var subjectTaskList = (await _visitTaskService.GetOrderReadingIQueryable(new GetOrderReadingIQueryableInDto()
|
||||
{
|
||||
TrialId = inDto.TrialId,
|
||||
TrialReadingCriterionId = trialReadingCriterionId.Value,
|
||||
TrialReadingCriterionId = trialReadingCriterionId!.Value,
|
||||
Page = new PageInput()
|
||||
{
|
||||
PageIndex = 1,
|
||||
|
|
|
@ -85,7 +85,7 @@ namespace IRaCIS.Application.Services
|
|||
var firstData = newPageQusetionList.FirstOrDefault();
|
||||
var page = new GetTrialReadingQuestionOutDto()
|
||||
{
|
||||
PageName = firstData.PageName,
|
||||
PageName = firstData!.PageName,
|
||||
IsPage = true,
|
||||
IsPublicPage = firstData.IsPublicPage,
|
||||
};
|
||||
|
@ -100,8 +100,8 @@ namespace IRaCIS.Application.Services
|
|||
groupList.Add(page);
|
||||
}
|
||||
|
||||
result.PublicPage = groupList.Where(x => x.IsPublicPage.Value).ToList();
|
||||
result.MultiPage = groupList.Where(x => !x.IsPublicPage.Value).ToList();
|
||||
result.PublicPage = groupList.Where(x => x.IsPublicPage!.Value).ToList();
|
||||
result.MultiPage = groupList.Where(x => !x.IsPublicPage!.Value).ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -95,7 +95,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
.ForMember(d => d.ValueCN, u => u.MapFrom(s => s.Dictionary.ValueCN));
|
||||
|
||||
CreateMap<ReadingTaskQuestionMark, GetTableAnswerRowInfoOutDto>()
|
||||
.ForMember(d => d.FristAddTaskId, u => u.MapFrom(s => s.FirstAddTaskId.Value));
|
||||
.ForMember(d => d.FristAddTaskId, u => u.MapFrom(s => s.FirstAddTaskId!.Value));
|
||||
CreateMap<ReadingTaskQuestionMark, QuestionMarkInfo>();
|
||||
CreateMap<QuestionMarkInfo, ReadingTaskQuestionMark>();
|
||||
//CreateMap<ReadingClinicalDataView, GetReadingClinicalDataListOutDto>();
|
||||
|
|
|
@ -149,7 +149,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
|
||||
result.LesionCountList = tableAnsweRowInfos.GroupBy(x => x.LesionType).Select(x => new LesionDto
|
||||
{
|
||||
LesionType = x.Key.Value,
|
||||
LesionType = x.Key!.Value,
|
||||
Count = x.ToList().Count()
|
||||
}).ToList();
|
||||
|
||||
|
@ -1775,7 +1775,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
{
|
||||
VisitTaskId = x.VisitTaskId,
|
||||
Answer = x.Answer,
|
||||
QuestionType = x.ReadingQuestionTrial.QuestionType.Value
|
||||
QuestionType = x.ReadingQuestionTrial.QuestionType!.Value
|
||||
}).ToListAsync();
|
||||
|
||||
compareTaskList.ForEach(y =>
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
using IRaCIS.Core.Domain.Share;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using IRaCIS.Core.Domain.Models;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using IRaCIS.Core.Application.Interfaces;
|
||||
using IRaCIS.Core.Application.ViewModel;
|
||||
using Panda.DynamicWebApi.Attributes;
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
using IRaCIS.Core.Domain.Share;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using IRaCIS.Core.Domain.Models;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using IRaCIS.Core.Application.Interfaces;
|
||||
using IRaCIS.Core.Application.ViewModel;
|
||||
using Panda.DynamicWebApi.Attributes;
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
using IRaCIS.Core.Domain.Share;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using IRaCIS.Core.Domain.Models;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using IRaCIS.Core.Application.Interfaces;
|
||||
using IRaCIS.Core.Application.ViewModel;
|
||||
using Panda.DynamicWebApi.Attributes;
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
using IRaCIS.Core.Domain.Share;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using IRaCIS.Core.Domain.Models;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using IRaCIS.Core.Application.Interfaces;
|
||||
using IRaCIS.Core.Application.ViewModel;
|
||||
using Panda.DynamicWebApi.Attributes;
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
using IRaCIS.Core.Domain.Share;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using IRaCIS.Core.Domain.Models;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using IRaCIS.Core.Application.Interfaces;
|
||||
using IRaCIS.Core.Application.ViewModel;
|
||||
using Panda.DynamicWebApi.Attributes;
|
||||
|
|
|
@ -49,7 +49,7 @@ namespace IRaCIS.Core.Application
|
|||
//正参与的数量
|
||||
TrialCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
|
||||
? await _trialRepository.CountAsync()
|
||||
: await _trialUserRepository.Where(t => t.UserId == _userInfo.Id && t.Trial.IsDeleted==false).CountAsync(),
|
||||
: await _trialUserRepository.Where(t => t.UserId == _userInfo.Id && t.Trial.IsDeleted == false).CountAsync(),
|
||||
|
||||
DeletedCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
|
||||
? await _trialRepository.AsQueryable(true).CountAsync(t => t.IsDeleted)
|
||||
|
@ -441,6 +441,7 @@ namespace IRaCIS.Core.Application
|
|||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <param name="_subjectVisitRepository"></param>
|
||||
/// <param name="_trialRepository"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<ImageClinicalDataToBeDoneDto>>> GetImageClinicalDataToBeDoneList(ImageClinicalDataToBeDoneQuery inQuery,
|
||||
|
@ -482,6 +483,7 @@ namespace IRaCIS.Core.Application
|
|||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <param name="_subjectVisitRepository"></param>
|
||||
/// <param name="_trialRepository"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<ImageClinicalDataToBeDoneDto>>> GetImageClinicalDataToBeConfirmList(ImageClinicalDataToBeDoneQuery inQuery,
|
||||
|
@ -575,6 +577,7 @@ namespace IRaCIS.Core.Application
|
|||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <param name="_subjectVisitRepository"></param>
|
||||
/// <param name="_trialRepository"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<ImageCheckQuestionToBeDoneDto>>> GetImageCheckQuestionToBeDoneList(ImageCheckQuestionToBeDoneQuery inQuery,
|
||||
|
@ -615,12 +618,12 @@ namespace IRaCIS.Core.Application
|
|||
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 影像重传 --CRC 待办
|
||||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <param name="_subjectVisitRepository"></param>
|
||||
/// <param name="_trialRepository"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<ImageReUploadToBeDoneDto>>> GetImageReUploadToBeDoneList(ImageReUploadToBeDoneQuery inQuery,
|
||||
|
@ -663,10 +666,11 @@ namespace IRaCIS.Core.Application
|
|||
|
||||
|
||||
/// <summary>
|
||||
/// 加急影像提交 --CRC 待办
|
||||
/// 加急影像提交 --CRC 待办
|
||||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <param name="_subjectVisitRepository"></param>
|
||||
/// <param name="_trialRepository"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<ImageSubmittedToBeDoneDto>>> GetImageSubmittedToBeDoneList(ImageSubmittedToBeDoneQuery inQuery,
|
||||
|
@ -722,6 +726,7 @@ namespace IRaCIS.Core.Application
|
|||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <param name="_subjectVisitRepository"></param>
|
||||
/// <param name="_trialRepository"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<ImageQualityToBeDoneDto>>> GetImageQualityToBeDoneList(ImageQualityToBeDoneQuery inQuery,
|
||||
|
@ -744,7 +749,7 @@ namespace IRaCIS.Core.Application
|
|||
|
||||
|
||||
//待领取量
|
||||
ToBeClaimedCount = t.SubjectVisitList.Where(t=>t.SubmitState==SubmitStateEnum.Submitted).Where(u => u.CurrentActionUserId == null && (u.PreliminaryAuditUserId == null || (u.PreliminaryAuditUserId != _userInfo.Id && u.ReviewAuditUserId == null))).Count(),
|
||||
ToBeClaimedCount = t.SubjectVisitList.Where(t => t.SubmitState == SubmitStateEnum.Submitted).Where(u => u.CurrentActionUserId == null && (u.PreliminaryAuditUserId == null || (u.PreliminaryAuditUserId != _userInfo.Id && u.ReviewAuditUserId == null))).Count(),
|
||||
|
||||
//待审核通过,统计从已领取到QC提交之间的 已领取 待审核 审核中 (审核完成 领取人就会清理 所以只用查询当前领取人是自己的就好了)
|
||||
ToBeReviewedCount = t.SubjectVisitList.Where(u => u.CurrentActionUserId == _userInfo.Id).Count()
|
||||
|
@ -773,10 +778,11 @@ namespace IRaCIS.Core.Application
|
|||
|
||||
|
||||
/// <summary>
|
||||
/// QC 质疑
|
||||
/// QC 质疑
|
||||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <param name="_subjectVisitRepository"></param>
|
||||
/// <param name="_trialRepository"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<ImageQuestionToBeDoneDto>>> GetQCImageQuestionToBeDoneList(ImageQuestionToBeDoneQuery inQuery,
|
||||
|
@ -969,7 +975,7 @@ namespace IRaCIS.Core.Application
|
|||
/// IR医学反馈
|
||||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
|
||||
/// <param name="_taskMedicalReviewRepository"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<MedicalCommentsToBeDoneDto>>> GetIRMedicalCommentsToBeDoneList(MedicalCommentsToBeDoneQuery inQuery,
|
||||
|
@ -1043,7 +1049,7 @@ namespace IRaCIS.Core.Application
|
|||
/// </summary>
|
||||
/// <param name="inQuery"></param>
|
||||
/// <param name="_taskMedicalReviewRepository"></param>
|
||||
|
||||
/// <param name="_trialReadingCriterionRepository"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<IResponseOutput<PageOutput<MedicalCommentsToBeDoneDto>>> GetMIMMedicalCommentsToBeDoneList(MedicalCommentsToBeDoneQuery inQuery,
|
||||
|
|
|
@ -18,7 +18,6 @@ using IRaCIS.Core.Application.Filter;
|
|||
using static IRaCIS.Core.Domain.Share.StaticData;
|
||||
using IRaCIS.Core.Application.Service;
|
||||
using DocumentFormat.OpenXml.Office.CustomUI;
|
||||
using IRaCIS.Core.Application.Service;
|
||||
using IRaCIS.Core.Domain.Models;
|
||||
|
||||
namespace IRaCIS.Core.Application
|
||||
|
|
|
@ -371,7 +371,7 @@ namespace IRaCIS.Core.Application.Services
|
|||
{
|
||||
item.SeriesInstanceUid = string.Empty;
|
||||
|
||||
item.InstanceList = thisRowinfo.Where(y => y.InstanceId != null).OrderBy(x => x.ShowOrder).ThenBy(x => x.RowIndex).Select(y => y.InstanceId.Value).Distinct().ToList();
|
||||
item.InstanceList = thisRowinfo.Where(y => y.InstanceId != null).OrderBy(x => x.ShowOrder).ThenBy(x => x.RowIndex).Select(y => y.InstanceId!.Value).Distinct().ToList();
|
||||
|
||||
var tempInstanceList = await _repository.Where<DicomInstance>(t => item.InstanceList.Contains(t.Id)).OrderBy(t => t.InstanceNumber)
|
||||
.Select(t => new TempInstance
|
||||
|
@ -505,8 +505,8 @@ namespace IRaCIS.Core.Application.Services
|
|||
})
|
||||
.ToList();
|
||||
|
||||
series.WindowWidth = instanceList.FirstOrDefault()?.WindowWidth;
|
||||
series.WindowCenter = instanceList.FirstOrDefault()?.WindowCenter;
|
||||
series.WindowWidth = instanceList.FirstOrDefault()!.WindowWidth;
|
||||
series.WindowCenter = instanceList.FirstOrDefault()!.WindowCenter;
|
||||
});
|
||||
|
||||
//设置为阅片与否 不更改数据库检查 的instance数量 和 SeriesCount 所以这里要实时统计
|
||||
|
|
|
@ -83,7 +83,7 @@ namespace IRaCIS.Application.Services
|
|||
public async Task<IResponseOutput> TestDistributedLock( )
|
||||
{
|
||||
|
||||
_repository.Where<User>().Select(t => t.FullName).FirstOrDefault();
|
||||
await _repository.Where<User>().Select(t => t.FullName).FirstNotNullAsync();
|
||||
|
||||
Console.WriteLine($"我进来了当前值是:" + IntValue);
|
||||
_logger.LogWarning($"我进来了当前值是:" + IntValue);
|
||||
|
|
|
@ -12,7 +12,7 @@ namespace IRaCIS.Core.Infrastructure.Extention
|
|||
{
|
||||
if(businessObject == null)
|
||||
{
|
||||
throw new QueryBusinessObjectNotExistException($"The query object {typeof(TEntity).Name} does not exist in database, Please check the query parameters");
|
||||
throw new QueryBusinessObjectNotExistException($"The query object {typeof(TEntity).Name} is null, Please check ");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -25,7 +25,7 @@ namespace IRaCIS.Core.Infrastructure.Extention
|
|||
{
|
||||
if (businessStruct == null)
|
||||
{
|
||||
throw new QueryBusinessObjectNotExistException($"The query object {typeof(TEntity).Name} does not exist in database, Please check the query parameters");
|
||||
throw new QueryBusinessObjectNotExistException($"The query object {typeof(TEntity).Name} is null, Please check ");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -38,7 +38,7 @@ namespace IRaCIS.Core.Infrastructure.Extention
|
|||
{
|
||||
if (businessObject == null)
|
||||
{
|
||||
throw new QueryBusinessObjectNotExistException($" Can not Convert to {typeof(TEntity).Name} Type, Please check parameter");
|
||||
throw new QueryBusinessObjectNotExistException($" {typeof(TEntity).Name} Type object should not null, Please check ");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue