From 4c607302f3d9785b0fb9db95a0c2f7f25aa4b0b9 Mon Sep 17 00:00:00 2001
From: he <109787524@qq.com>
Date: Wed, 10 Jan 2024 10:48:21 +0800
Subject: [PATCH 1/2] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E9=AA=8C=E8=AF=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
IRaCIS.Core.API/IRaCIS.Core.API.xml | 56 +++++++++----------
.../IRaCIS.Core.Application.xml | 26 +++++++++
.../Allocation/DTO/VisitTaskViewModel.cs | 6 +-
.../Service/Allocation/VisitTaskService.cs | 4 +-
.../Document/DTO/SystemDocumentViewModel.cs | 6 +-
.../Service/Document/TrialDocumentService.cs | 4 +-
.../ImageAndDoc/DTO/UnionStudyViewDodel.cs | 7 ++-
.../Service/ImageAndDoc/StudyService.cs | 5 +-
.../Service/Inspection/DTO/InspectionModel.cs | 9 ++-
.../Service/Inspection/InspectionService.cs | 7 ++-
.../LuganoCalculateService.cs | 13 ++++-
.../DTO/TrialSiteSurveyViewModel.cs | 7 ++-
.../SiteSurvey/TrialSiteSurveyService.cs | 7 ++-
13 files changed, 112 insertions(+), 45 deletions(-)
diff --git a/IRaCIS.Core.API/IRaCIS.Core.API.xml b/IRaCIS.Core.API/IRaCIS.Core.API.xml
index fb1288021..5b5c02b0c 100644
--- a/IRaCIS.Core.API/IRaCIS.Core.API.xml
+++ b/IRaCIS.Core.API/IRaCIS.Core.API.xml
@@ -4,6 +4,34 @@
IRaCIS.Core.API
+
+
+ 主要处理 前端404等错误 全局业务异常已统一处理了,非业务错误会来到这里
+
+
+
+
+
+
+ 医生基本信息 、工作信息 专业信息、审核状态
+
+
+
+
+ 获取医生详情
+
+
+
+
+
+
+
+
+
+
+
+ 系统用户登录接口[New]
+
添加实验项目-返回新增Id[AUTH]
新记录Id
@@ -345,27 +373,6 @@
序列化成员
-
-
- 医生基本信息 、工作信息 专业信息、审核状态
-
-
-
-
- 获取医生详情
-
-
-
-
-
-
-
-
-
-
-
- 系统用户登录接口[New]
-
为了前端 一段时间无操作,需要重新登陆
@@ -373,13 +380,6 @@
-
-
- 主要处理 前端404等错误 全局业务异常已统一处理了,非业务错误会来到这里
-
-
-
-
对称可逆加密
diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 6e78e508e..7f49a0446 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -684,6 +684,32 @@
InternationalizationService
+
+
+ 前端国际化内容接口
+
+
+
+
+
+ 前端批量提交,后端判断不存在就添加,存在就更新
+
+
+
+
+
+ 后端之前批量添加接口
+
+
+
+
+
+
+ 前后端添加的时候,区分了,前端判断重复多了多了一个路由 路由+标识唯一
+
+
+
+
PublishLogService
diff --git a/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs b/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs
index 4d9ca292c..8eabd79f7 100644
--- a/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs
@@ -393,7 +393,11 @@ namespace IRaCIS.Core.Application.ViewModel
public DateTime? EndAllocateDate { get; set; }
- public Guid? RootReReadingTaskId { get; set; }
+ public DateTime? BeginSignTime { get; set; }
+
+ public DateTime? EndSignTime { get; set; }
+
+ public Guid? RootReReadingTaskId { get; set; }
public string? TaskCode { get; set; }
diff --git a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
index 3d47057ab..96c28bf13 100644
--- a/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
+++ b/IRaCIS.Core.Application/Service/Allocation/VisitTaskService.cs
@@ -758,7 +758,9 @@ namespace IRaCIS.Core.Application.Service.Allocation
.WhereIf(!string.IsNullOrEmpty(queryVisitTask.SubjectCode), t => (t.Subject.Code.Contains(queryVisitTask.SubjectCode) && t.IsAnalysisCreate == false) || (t.BlindSubjectCode.Contains(queryVisitTask.SubjectCode) && t.IsAnalysisCreate))
.WhereIf(queryVisitTask.BeginAllocateDate != null, t => t.AllocateTime > queryVisitTask.BeginAllocateDate)
.WhereIf(queryVisitTask.EndAllocateDate != null, t => t.AllocateTime < queryVisitTask.EndAllocateDate!.Value.AddDays(1))
- .ProjectTo(_mapper.ConfigurationProvider);
+ .WhereIf(queryVisitTask.BeginSignTime != null, t => t.SignTime > queryVisitTask.BeginSignTime)
+ .WhereIf(queryVisitTask.EndSignTime != null, t => t.SignTime < queryVisitTask.EndSignTime!.Value.AddDays(1))
+ .ProjectTo(_mapper.ConfigurationProvider);
var defalutSortArray = new string[] { nameof(VisitTask.IsUrgent) + " desc", nameof(VisitTask.SubjectId), nameof(VisitTask.VisitTaskNum) };
diff --git a/IRaCIS.Core.Application/Service/Document/DTO/SystemDocumentViewModel.cs b/IRaCIS.Core.Application/Service/Document/DTO/SystemDocumentViewModel.cs
index 6c5a6999a..63c690835 100644
--- a/IRaCIS.Core.Application/Service/Document/DTO/SystemDocumentViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Document/DTO/SystemDocumentViewModel.cs
@@ -144,7 +144,11 @@ namespace IRaCIS.Core.Application.Contracts
public Guid? UserTypeId { get; set; }
public Guid? UserId { get; set; }
- }
+
+ public bool? IsConfirmed { get; set; }
+
+ public bool? IsDeleted { get; set; }
+ }
/// SystemDocumentAddOrEdit 列表查询参数模型
public class SystemDocumentAddOrEdit
diff --git a/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs b/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs
index 06869ba94..0c30c2dd4 100644
--- a/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs
+++ b/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs
@@ -409,7 +409,9 @@ namespace IRaCIS.Core.Application.Services
var unionQuery = trialDocQuery.Union(systemDocQuery)
.WhereIf(!string.IsNullOrEmpty(querySystemDocument.Name), t => t.Name.Contains(querySystemDocument.Name))
.WhereIf(querySystemDocument.FileTypeId != null, t => t.FileTypeId == querySystemDocument.FileTypeId)
- .WhereIf(querySystemDocument.UserTypeId != null, t => t.UserTypeId == querySystemDocument.UserTypeId);
+ .WhereIf(querySystemDocument.IsConfirmed != null, t => t.IsConfirmed == querySystemDocument.IsConfirmed)
+ .WhereIf(querySystemDocument.IsDeleted != null, t => t.IsDeleted == querySystemDocument.IsDeleted)
+ .WhereIf(querySystemDocument.UserTypeId != null, t => t.UserTypeId == querySystemDocument.UserTypeId);
var result = await unionQuery.ToPagedListAsync(querySystemDocument.PageIndex, querySystemDocument.PageSize, querySystemDocument.SortField, querySystemDocument.Asc);
diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs
index 37fbae848..8b32e8343 100644
--- a/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs
+++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs
@@ -175,7 +175,12 @@ namespace IRaCIS.Core.Application.Contracts
public Guid? VisitTaskId { get; set; }
- }
+ public bool? IsDicom { get; set; }
+
+ public string? Uploader { get; set; }
+
+ public bool? IsSuccess { get; set; }
+ }
public class PreArchiveDicomStudyCommand
diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/StudyService.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/StudyService.cs
index 54880b1ed..357b65538 100644
--- a/IRaCIS.Core.Application/Service/ImageAndDoc/StudyService.cs
+++ b/IRaCIS.Core.Application/Service/ImageAndDoc/StudyService.cs
@@ -457,7 +457,10 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
.WhereIf(studyQuery.SubjectId != null, t => t.SubjectId == studyQuery.SubjectId)
.WhereIf(studyQuery.SubjectVisitId != null, t => t.SubjectId == studyQuery.SubjectVisitId)
.WhereIf(studyQuery.SiteId != null, t => t.SiteId == studyQuery.SiteId)
- .Select(t => new UnionStudyMonitorModel()
+ .WhereIf(studyQuery.IsDicom != null, t => t.IsDicom == studyQuery.IsDicom )
+ .WhereIf(!string.IsNullOrWhiteSpace(studyQuery.Uploader), t => t.Uploader.UserName.Contains(studyQuery.Uploader))
+ .WhereIf(studyQuery.IsSuccess != null, t => t.IsSuccess == studyQuery.IsSuccess)
+ .Select(t => new UnionStudyMonitorModel()
{
TrialId = t.TrialId,
SiteId = t.SiteId,
diff --git a/IRaCIS.Core.Application/Service/Inspection/DTO/InspectionModel.cs b/IRaCIS.Core.Application/Service/Inspection/DTO/InspectionModel.cs
index 8d8993861..3ff512ed3 100644
--- a/IRaCIS.Core.Application/Service/Inspection/DTO/InspectionModel.cs
+++ b/IRaCIS.Core.Application/Service/Inspection/DTO/InspectionModel.cs
@@ -486,9 +486,14 @@ namespace IRaCIS.Core.Application.Service.Inspection.DTO
public string ReaderUser { get; set; } = string.Empty;
///
- /// 是否有签名
+ /// 角色
///
- public bool? IsSign { get; set; }
+ public string RoleName { get; set; } = string.Empty;
+
+ ///
+ /// 是否有签名
+ ///
+ public bool? IsSign { get; set; }
///
/// 批次Id
diff --git a/IRaCIS.Core.Application/Service/Inspection/InspectionService.cs b/IRaCIS.Core.Application/Service/Inspection/InspectionService.cs
index f3bb5cb61..f3d7b52e8 100644
--- a/IRaCIS.Core.Application/Service/Inspection/InspectionService.cs
+++ b/IRaCIS.Core.Application/Service/Inspection/InspectionService.cs
@@ -186,9 +186,10 @@ namespace IRaCIS.Core.Application.Service.Inspection
.WhereIf(!dto.SubjectInfo.IsNullOrEmpty(), x => x.SubjectCode.Contains(dto.SubjectInfo))
- //.WhereIf(dto.VisitPlanInfo != null&& dto.VisitPlanInfo!=(decimal) 1.11, x => x.VisitNum == dto.VisitPlanInfo)
- //.WhereIf(dto.VisitPlanInfo != (decimal)1.11,x=>x.InPlan!=null&& x.InPlan==false)
- .WhereIf(dto.StartTime != null, x => x.CreateTime >= dto.StartTime)
+ .WhereIf(!dto.RoleName.IsNullOrEmpty(), x => x.RoleName.Contains(dto.RoleName))
+ //.WhereIf(dto.VisitPlanInfo != null&& dto.VisitPlanInfo!=(decimal) 1.11, x => x.VisitNum == dto.VisitPlanInfo)
+ //.WhereIf(dto.VisitPlanInfo != (decimal)1.11,x=>x.InPlan!=null&& x.InPlan==false)
+ .WhereIf(dto.StartTime != null, x => x.CreateTime >= dto.StartTime)
.WhereIf(dto.EndTime != null, x => x.CreateTime <= dto.EndTime)
.WhereIf(dto.ModuleType != null, x => x.ModuleTypeId == dto.ModuleType)
.WhereIf(!dto.Description.IsNullOrEmpty(), x => x.Description.Contains(dto.Description)|| x.DescriptionCN.Contains(dto.Description))
diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs
index 2f7d09b59..30f6a7723 100644
--- a/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs
+++ b/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs
@@ -762,6 +762,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
}
+ var taskinfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).FirstNotNullAsync();
+
+
var tableAnswerList = await _readingTableQuestionAnswerRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId && (x.Answer == string.Empty || x.Answer == null)
&& x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State
)
@@ -821,15 +824,19 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
// 判断是否有pet
if (await _readingTaskQuestionAnswerRepository.AnyAsync(x => x.ReadingQuestionTrial.QuestionType == QuestionType.ExistPET && x.VisitTaskId == inDto.VisitTaskId && x.Answer == ReadingYesOrNo.Yes.GetEnumInt()))
{
+
List required=new List() {
QuestionType.LiverSUVmax,
QuestionType.MediastinumSUVmax,
QuestionType.SUVmax,
QuestionType.SUVmaxLesion,
QuestionType.PET5PS,
- QuestionType.UptakeChange,
- QuestionType.EvidenceFocalFDG
};
+ if (taskinfo.VisitTaskNum != 0m)
+ {
+ required.Add(QuestionType.UptakeChange);
+ required.Add(QuestionType.EvidenceFocalFDG);
+ }
if ((await _readingTaskQuestionAnswerRepository.CountAsync(x => required.Contains(x.ReadingQuestionTrial.QuestionType) && x.VisitTaskId == inDto.VisitTaskId && x.Answer != string.Empty)) != required.Count())
{
@@ -840,7 +847,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
if (errorMassage != string.Empty)
{
- errorMassage = _localizer["ReadingCalculate_Questionable"] + errorMassage;
+ //errorMassage = errorMassage;
throw new BusinessValidationFailedException(errorMassage);
}
diff --git a/IRaCIS.Core.Application/Service/SiteSurvey/DTO/TrialSiteSurveyViewModel.cs b/IRaCIS.Core.Application/Service/SiteSurvey/DTO/TrialSiteSurveyViewModel.cs
index 83d826c51..b13d89354 100644
--- a/IRaCIS.Core.Application/Service/SiteSurvey/DTO/TrialSiteSurveyViewModel.cs
+++ b/IRaCIS.Core.Application/Service/SiteSurvey/DTO/TrialSiteSurveyViewModel.cs
@@ -355,7 +355,12 @@ namespace IRaCIS.Core.Application.Contracts
public DateTime? UpdateTimeBegin { get; set; }
public DateTime? UpdateTimeEnd { get; set; }
- }
+
+ public string? PreliminaryUserName { get; set; }
+
+ public string? ReviewerUserName { get; set; }
+
+ }
public class CopyTrialSiteSurveyDTO
{
diff --git a/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs b/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs
index a2253fa03..5bedfb6b6 100644
--- a/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs
+++ b/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs
@@ -451,8 +451,11 @@ namespace IRaCIS.Core.Application.Contracts
.WhereIf(surveyQueryDTO.State != null, t => t.State == surveyQueryDTO.State)
.WhereIf(surveyQueryDTO.UpdateTimeBegin != null, t => t.UpdateTime >= surveyQueryDTO.UpdateTimeBegin)
.WhereIf(surveyQueryDTO.UpdateTimeEnd != null, t => t.UpdateTime <= surveyQueryDTO.UpdateTimeEnd)
-
- .ProjectTo(_mapper.ConfigurationProvider, new { isEn_Us = _userInfo.IsEn_Us });
+
+ .ProjectTo(_mapper.ConfigurationProvider, new { isEn_Us = _userInfo.IsEn_Us })
+ .WhereIf(!string.IsNullOrWhiteSpace(surveyQueryDTO.PreliminaryUserName), t => t.PreliminaryUser.RealName.Contains(surveyQueryDTO.PreliminaryUserName))
+ .WhereIf(!string.IsNullOrWhiteSpace(surveyQueryDTO.ReviewerUserName), t => t.ReviewerUser.RealName.Contains(surveyQueryDTO.ReviewerUserName))
+ ;
return await trialSiteSurveyQueryable.ToPagedListAsync(surveyQueryDTO.PageIndex, surveyQueryDTO.PageSize, surveyQueryDTO.SortField, surveyQueryDTO.Asc);
}
From 95862906a440493cc479c9ac6e38c895af02126f Mon Sep 17 00:00:00 2001
From: he <109787524@qq.com>
Date: Wed, 10 Jan 2024 13:18:31 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Service/Allocation/DTO/TaskMedicalReviewViewModel.cs | 9 ++++++++-
.../Service/Allocation/TaskMedicalReviewService.cs | 5 +++++
.../Service/Document/DTO/TrialDocumentViewModel.cs | 4 ++--
.../Service/Document/TrialDocumentService.cs | 3 ++-
4 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/IRaCIS.Core.Application/Service/Allocation/DTO/TaskMedicalReviewViewModel.cs b/IRaCIS.Core.Application/Service/Allocation/DTO/TaskMedicalReviewViewModel.cs
index 80ed03842..6ff2a5f87 100644
--- a/IRaCIS.Core.Application/Service/Allocation/DTO/TaskMedicalReviewViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Allocation/DTO/TaskMedicalReviewViewModel.cs
@@ -104,8 +104,15 @@ namespace IRaCIS.Core.Application.ViewModel
public Guid? SubjectId { get; set; }
+ public Guid? MedicalManagerUserId { get; set; }
- public bool IsGetBeRead { get; set; } = false;
+ public DateTime? BeginSignTime { get; set; }
+ public AuditAdvice? AuditAdviceEnum { get; set; }
+
+
+ public DateTime? EndSignTime { get; set; }
+
+ public bool IsGetBeRead { get; set; } = false;
public string SubjectCode { get; set; } = String.Empty;
diff --git a/IRaCIS.Core.Application/Service/Allocation/TaskMedicalReviewService.cs b/IRaCIS.Core.Application/Service/Allocation/TaskMedicalReviewService.cs
index 8e56f8c98..c6df4fdad 100644
--- a/IRaCIS.Core.Application/Service/Allocation/TaskMedicalReviewService.cs
+++ b/IRaCIS.Core.Application/Service/Allocation/TaskMedicalReviewService.cs
@@ -64,6 +64,11 @@ namespace IRaCIS.Core.Application.Service
.WhereIf(inQuery.ReadingCategory != null, t => t.VisitTask.ReadingCategory == inQuery.ReadingCategory)
.WhereIf(inQuery.TaskState != null, t => t.VisitTask.TaskState == inQuery.TaskState)
.WhereIf(inQuery.AuditState != null, t => t.AuditState == inQuery.AuditState)
+ .WhereIf(inQuery.MedicalManagerUserId != null, t => t.MedicalManagerUserId == inQuery.MedicalManagerUserId)
+ .WhereIf(inQuery.BeginSignTime != null, t => t.VisitTask.SignTime > inQuery.BeginSignTime)
+ .WhereIf(inQuery.EndSignTime != null, t => t.VisitTask.SignTime < inQuery.EndSignTime!.Value.AddDays(1))
+ .WhereIf(inQuery.AuditAdviceEnum != null, t => t.AuditAdviceEnum == inQuery.AuditAdviceEnum)
+
.WhereIf(inQuery.DoctorUserIdeaEnum != null, t => t.DoctorUserIdeaEnum == inQuery.DoctorUserIdeaEnum)
.WhereIf(inQuery.TrialReadingCriterionId != null, t => t.VisitTask.TrialReadingCriterionId == inQuery.TrialReadingCriterionId)
.ProjectTo(_mapper.ConfigurationProvider);
diff --git a/IRaCIS.Core.Application/Service/Document/DTO/TrialDocumentViewModel.cs b/IRaCIS.Core.Application/Service/Document/DTO/TrialDocumentViewModel.cs
index f481f3d4e..476e7c6b3 100644
--- a/IRaCIS.Core.Application/Service/Document/DTO/TrialDocumentViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Document/DTO/TrialDocumentViewModel.cs
@@ -33,8 +33,8 @@ namespace IRaCIS.Core.Application.Contracts
///TrialDocumentQuery 列表查询参数模型
public class TrialDocumentQuery : PageInput
{
-
- public Guid? FileTypeId { get; set; }
+ public bool? IsDeleted { get; set; }
+ public Guid? FileTypeId { get; set; }
public string Name { get; set; } = String.Empty;
diff --git a/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs b/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs
index 0c30c2dd4..39310019a 100644
--- a/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs
+++ b/IRaCIS.Core.Application/Service/Document/TrialDocumentService.cs
@@ -60,7 +60,8 @@ namespace IRaCIS.Core.Application.Services
var trialDocumentQueryable = _trialDocumentRepository.AsQueryable(true).Where(t => t.TrialId == queryTrialDocument.TrialId)
.WhereIf(!string.IsNullOrEmpty(queryTrialDocument.Name), t => t.Name.Contains(queryTrialDocument.Name))
.WhereIf(queryTrialDocument.FileTypeId != null, t => t.FileTypeId == queryTrialDocument.FileTypeId)
- .ProjectTo(_mapper.ConfigurationProvider, new { token = _userInfo.UserToken, isEn_Us = _userInfo.IsEn_Us });
+ .WhereIf(queryTrialDocument.IsDeleted != null, t => t.IsDeleted == queryTrialDocument.IsDeleted)
+ .ProjectTo(_mapper.ConfigurationProvider, new { token = _userInfo.UserToken, isEn_Us = _userInfo.IsEn_Us });
return await trialDocumentQueryable.ToPagedListAsync(queryTrialDocument.PageIndex, queryTrialDocument.PageSize, queryTrialDocument.SortField, queryTrialDocument.Asc);
}