构造函数优化
continuous-integration/drone/push Build is passing Details

IRC_NewDev
hang 2024-08-22 21:37:56 +08:00
parent 47ec4a5e7e
commit 22b1a839ba
102 changed files with 1111 additions and 2866 deletions

View File

@ -374,10 +374,6 @@ try
//Log.Logger.Warning($"ContentRootPath——xx{Path.GetDirectoryName(Path.GetDirectoryName(env.ContentRootPath))}");
var server = DicomServerFactory.Create<CStoreSCPService>(11112, userState: app.Services);
app.Run();
}

View File

@ -90,6 +90,11 @@
分配规则
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TaskAllocationRuleService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskAllocationRule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.User},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectCanceDoctor})">
<summary>
分配规则
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TaskAllocationRuleService.GetDoctorPlanAllocationRuleList(System.Guid)">
<summary>
获取计划列表 医生带阅片类型
@ -116,6 +121,11 @@
一致性分析配置表
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TaskConsistentRuleService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskConsistentRule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Application.Contracts.IReadingClinicalDataService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},Medallion.Threading.IDistributedLockProvider,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSite},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialVirtualSiteCodeUpdate},IRaCIS.Core.Application.Service.IVisitTaskHelpeService)">
<summary>
一致性分析配置表
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TaskConsistentRuleService.SetAnalysisTaskInvalid(System.Collections.Generic.List{System.Guid})">
<summary>
设置一致性分析任务失效
@ -201,11 +211,21 @@
医学审核生成规则 废弃
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TaskMedicalReviewRuleService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskMedicalReviewRule})">
<summary>
医学审核生成规则 废弃
</summary>
</member>
<member name="T:IRaCIS.Core.Application.Service.TaskMedicalReviewService">
<summary>
任务医学审核
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TaskMedicalReviewService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskMedicalReview},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialUser},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask})">
<summary>
任务医学审核
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TaskMedicalReviewService.GetMedicalReviewTaskList(IRaCIS.Core.Application.ViewModel.TaskMedicalReviewQuery)">
<summary>
PM 医学审核(挑选任务生成后的列表)
@ -267,6 +287,11 @@
访视读片任务
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.VisitTaskHelpeService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingJudgeInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectUser},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingOncologyTaskInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalDataTrialSet},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingClinicalData},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingConsistentClinicalData})">
<summary>
访视读片任务
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.VisitTaskHelpeService.AddConvertedTask(System.Guid)">
<summary>
添加转变任务
@ -286,7 +311,7 @@
访视读片任务
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.Allocation.VisitTaskService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskAllocationRule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectUser},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTaskReReading},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskMedicalReview},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskQuestionAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingClinicalData},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectCriteriaEvaluation},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectCriteriaEvaluationVisitFilter},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectCriteriaEvaluationVisitStudyFilter})">
<member name="M:IRaCIS.Core.Application.Service.Allocation.VisitTaskService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskAllocationRule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectUser},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTaskReReading},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskMedicalReview},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingClinicalData},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectCriteriaEvaluation},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectCriteriaEvaluationVisitFilter},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectCriteriaEvaluationVisitStudyFilter})">
<summary>
访视读片任务
</summary>
@ -738,11 +763,21 @@
ExploreRecommendService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ExploreRecommendService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ExploreRecommend})">
<summary>
ExploreRecommendService
</summary>
</member>
<member name="T:IRaCIS.Core.Application.Service.InternationalizationService">
<summary>
InternationalizationService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.InternationalizationService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Internationalization})">
<summary>
InternationalizationService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.InternationalizationService.GetFrontInternationalizationList">
<summary>
前端国际化内容接口
@ -781,6 +816,11 @@
PublishLogService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.PublishLogService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PublishLog})">
<summary>
PublishLogService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.EmailSendService.SendTrialImageQCTaskEmailAsync(System.Guid)">
<summary>
影像质控
@ -807,6 +847,11 @@
TrialEmailNoticeConfigService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TrialEmailNoticeConfigService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialEmailNoticeConfig},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialEmailBlackUser},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.EmailNoticeConfig},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskMedicalReview},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialUser},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Application.Service.IEmailSendService)">
<summary>
TrialEmailNoticeConfigService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TrialEmailNoticeConfigService.GetTrialEmail(IRaCIS.Core.Application.ViewModel.GetTrialEmailSetInDto)">
<summary>
获取项目邮箱
@ -886,11 +931,6 @@
<param name="batchAddList"></param>
<returns></returns>
</member>
<member name="T:IRaCIS.Core.Application.Service.ImageAndDoc.CStoreSCPService">
<summary>
后台托管服务的方式运行
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ImageAndDoc.DownloadAndUploadService.SubejctRandomReadingTaskNameDeal(System.Guid,System.Guid)">
<summary>
受试者随机阅片,任务进行随机编号
@ -971,6 +1011,11 @@
SystemAnonymizationService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.SystemAnonymizationService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemAnonymization})">
<summary>
SystemAnonymizationService
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Inspection.DTO.DataInspectionAddDTO.ChildrenType">
<summary>
子类
@ -1183,6 +1228,11 @@
FrontAuditConfigService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.FrontAuditConfigService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.FrontAuditConfig},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.QCChallengeDialog},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.DataInspection},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.QCChallenge},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Dictionary},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.CheckChallengeDialog})">
<summary>
FrontAuditConfigService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.FrontAuditConfigService.GetDatabaseTables">
<summary>
获取数据库所有表
@ -1331,6 +1381,11 @@
SystemNoticeService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.SystemNoticeService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemNotice})">
<summary>
SystemNoticeService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.SystemNoticeService.SetSystemNoticeHaveRead(System.Guid)">
<summary>设置已读 </summary>
</member>
@ -1342,6 +1397,11 @@
UserFeedBackService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.UserFeedBackService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.UserFeedBack})">
<summary>
UserFeedBackService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.UserFeedBackService.BatchUpdateFeedBackState(IRaCIS.Core.Application.ViewModel.BatchUpdateCommand)">
<summary>
批量更新状态
@ -3749,6 +3809,11 @@
SubjectCriteriaEvaluationService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.SubjectCriteriaEvaluationService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectCriteriaEvaluation},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectCriteriaEvaluationVisitFilter},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectCriteriaEvaluationVisitStudyFilter},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Application.Service.IVisitTaskHelpeService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskMedicalReview},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTaskReReading})">
<summary>
SubjectCriteriaEvaluationService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.SubjectCriteriaEvaluationService.GetSubjectCriteriaEvaluationList(IRaCIS.Core.Application.ViewModel.SubjectCriteriaEvaluationQuery)">
<summary>
subject 某标准 是否评估列表
@ -3820,6 +3885,11 @@
临床答案
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ClinicalAnswerService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialClinicalQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemClinicalQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemClinicalTableQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialClinicalTableQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalDataTrialSet},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalForm},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModuleCriterionFrom},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.DicomStudy},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalQuestionAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalTableAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalAnswerRowInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingClinicalData},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Application.Interfaces.IClinicalQuestionService,IRaCIS.Core.Application.Contracts.IReadingClinicalDataService)">
<summary>
临床答案
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ClinicalAnswerService.CRCSignClinicalData(IRaCIS.Core.Application.Service.Reading.Dto.CRCSignClinicalDataInDto)">
<summary>
CRC签名临床数据
@ -3946,6 +4016,11 @@
临床数据问题
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ClinicalQuestionService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialClinicalQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemClinicalQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemClinicalTableQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialClinicalTableQuestion})">
<summary>
临床数据问题
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ClinicalQuestionService.GetTrialClinicalQuestionCalculateRelation(IRaCIS.Core.Application.Service.Reading.Dto.GetTrialClinicalQuestionCalculateRelationInDto)">
<summary>
获取问题计算关系
@ -9281,6 +9356,11 @@
阅片医学审核
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingMedicalReviewService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingMedicineTrialQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskQuestionAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingGlobalTaskInfo},IRaCIS.Core.Application.Contracts.IReadingImageTaskService,IRaCIS.Core.Application.Service.IVisitTaskService,IRaCIS.Core.Application.Contracts.IReadingClinicalDataService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskMedicalReview},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingMedicalReviewDialog},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingMedicineQuestionAnswer},IRaCIS.Core.Application.Interfaces.ITrialEmailNoticeConfigService)">
<summary>
阅片医学审核
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingMedicalReviewService.GetMedicalReviewReadingTask(IRaCIS.Core.Application.Service.Reading.Dto.GetMedicalReviewReadingTaskInDto)">
<summary>
获取医学审核任务信息
@ -9362,6 +9442,11 @@
医学审核问题
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingMedicineQuestionService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingMedicineTrialQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingMedicineSystemQuestion})">
<summary>
医学审核问题
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingMedicineQuestionService.GetReadingMedicineSystemQuestionList(IRaCIS.Core.Application.ViewModel.ReadingMedicineSystemQuestionQuery)">
<summary>
获取系统的医学审核问题
@ -9468,6 +9553,11 @@
器官服务层
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.OrganInfoService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.OrganInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Dictionary},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.OrganTrialInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.CriterionNidusSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.CriterionNidusTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionSystem})">
<summary>
器官服务层
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.OrganInfoService.GetOrganInfoList(IRaCIS.Core.Application.ViewModel.OrganInfoQuery)">
<summary>
获取系统器官信息
@ -9775,6 +9865,11 @@
快捷键服务
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ShortcutKeyService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Dictionary},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ShortcutKey})">
<summary>
快捷键服务
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.ShortcutKeyService.GetDoctorShortcutKey(IRaCIS.Core.Application.ViewModel.DefaultShortcutKeyQuery)">
<summary>
获取医生快捷键
@ -9806,6 +9901,11 @@
用户WL模板
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.UserWLTemplateService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.UserWLTemplate},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.User})">
<summary>
用户WL模板
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.UserWLTemplateService.GetUserWLTemplateList(IRaCIS.Core.Application.ViewModel.UserWLTemplateQuery)">
<summary>
获取模板
@ -9898,6 +9998,11 @@
DicomAEService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TrialDicomAEService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialDicomAE},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial})">
<summary>
DicomAEService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TrialDicomAEService.GetTrialDicomAE(System.Guid)">
<summary>
获取项目dicom AE 配置信息otherinfo里面有IsPACSConnect IsTrialPACSConfirmed
@ -9916,6 +10021,11 @@
项目外部人员 录入流程相关
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TrialExternalUserService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialExternalUser},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.User},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialUser},IRaCIS.Application.Services.IMailVerificationService,Medallion.Threading.IDistributedLockProvider)">
<summary>
项目外部人员 录入流程相关
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TrialExternalUserService.AddOrUpdateTrialExternalUser(IRaCIS.Core.Application.ViewModel.TrialExternalUserAddAndSendEmail)">
<summary>
添加和更新接口 已验证邮箱和账户类型不允许添加重复项
@ -9928,6 +10038,11 @@
TrialSiteDicomAEService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Service.TrialSiteDicomAEService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSiteDicomAE})">
<summary>
TrialSiteDicomAEService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.MassTransit.Consumer.ConsistencyCheckConsumer.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.DicomStudy},IRaCIS.Core.Domain.Share.IUserInfo,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSite},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudy},AutoMapper.IMapper,Microsoft.Extensions.Localization.IStringLocalizer)">
<summary>
构造函数注入
@ -11330,6 +11445,11 @@
UserTypeRoleService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.UserTypeRoleService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.UserType})">
<summary>
UserTypeRoleService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.UserTypeRoleService.GetUserTypeList(IRaCIS.Core.Domain.Share.UserTypeSelectEnum)">
<summary>
通过传递场景枚举 返回对应的下拉框数据 1是外部 2是内部 3是Site调研 4: 邮件接收人5邮件抄送人
@ -11348,6 +11468,11 @@
受试者临床信息
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.ClinicalDataService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PreviousOther},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PreviousHistory},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PreviousSurgery},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PreviousPDF},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Application.Service.QCCommon)">
<summary>
受试者临床信息
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.ClinicalDataService.GetSubjectVisitClinicalData(System.Guid)">
<summary>
获取访视+受试者级别的数据
@ -11624,6 +11749,11 @@
NoneDicomStudyService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.NoneDicomStudyService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudy},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudyFile},Medallion.Threading.IDistributedLockProvider,IRaCIS.Core.Application.Service.QCCommon)">
<summary>
NoneDicomStudyService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.NoneDicomStudyService.GetNoneDicomStudyFileList(System.Guid)">
<summary>
非Dicom检查 文件列表
@ -11636,6 +11766,11 @@
系统QC 问题管理
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.QCQuestionConfigureService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.QCQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialQCQuestion})">
<summary>
系统QC 问题管理
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.QCQuestionConfigureService.GetQCQuestionSelectList(IRaCIS.Core.Application.Contracts.QCQuestionFilterSelect)">
<summary>
父问题 下拉框选项 需要排除自己 、把自己设置为父亲 (互为父亲) 、是自己孙辈的(明明是自己子孙,却设置为自己父亲)
@ -11659,6 +11794,11 @@
项目QC 问题 管理
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.TrialQCQuestionConfigureService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialQCQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.QCQuestion})">
<summary>
项目QC 问题 管理
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.TrialQCQuestionConfigureService.EmptyQCQuestion(IRaCIS.Core.Application.Contracts.EmptyQCQuestionInDto)">
<summary>
清空Qc问题
@ -11720,11 +11860,21 @@
TrialSiteEquipmentSurveyService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.TrialSiteEquipmentSurveyService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSiteEquipmentSurvey},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSiteSurvey})">
<summary>
TrialSiteEquipmentSurveyService
</summary>
</member>
<member name="T:IRaCIS.Core.Application.Contracts.TrialSiteSurveyService">
<summary>
TrialSiteSurveyService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.TrialSiteSurveyService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSiteSurvey},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSiteUserSurvey},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.User},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSite},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialUser},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSiteUser},Medallion.Threading.IDistributedLockProvider,IRaCIS.Core.Application.Auth.ITokenService,IRaCIS.Application.Services.IMailVerificationService,Microsoft.Extensions.Options.IOptionsMonitor{IRaCIS.Core.Domain.Share.SystemEmailSendConfig})">
<summary>
TrialSiteSurveyService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.TrialSiteSurveyService.SendEmialVerifyCode(IRaCIS.Core.Application.Contracts.SendEmialVerifyCodeInDto)">
<summary>
发送验证码
@ -11812,6 +11962,11 @@
TrialSiteUserSurveyService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Contracts.TrialSiteUserSurveyService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSiteUserSurvey},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialSiteSurvey})">
<summary>
TrialSiteUserSurveyService
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Contracts.BasicTrialConfig.SubjectCodeRule">
<summary>
受试者编号具体规则
@ -12297,6 +12452,11 @@
SystemBasicDataService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Services.SystemBasicDataService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemBasicData})">
<summary>
SystemBasicDataService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Services.SystemBasicDataService.GetSystemBasicDataList(IRaCIS.Core.Application.Contracts.SystemBasicDataQuery)">
<summary>
模板列表
@ -12323,6 +12483,11 @@
SystemDocumentService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Services.SystemDocumentService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemDocument},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemDocConfirmedUser})">
<summary>
SystemDocumentService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Services.SystemDocumentService.GetSystemDocumentListAsync(IRaCIS.Core.Application.Contracts.SystemDocumentQuery)">
<summary>
管理端列表
@ -12341,6 +12506,11 @@
TrialDocumentService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Services.TrialDocumentService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialDocument},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialDocConfirmedUser},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Application.Contracts.ISystemDocumentService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemDocConfirmedUser},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemDocument},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial})">
<summary>
TrialDocumentService
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Services.TrialDocumentService.GetTrialDocumentList(IRaCIS.Core.Application.Contracts.TrialDocumentQuery)">
<summary>
Setting 界面的 项目所有文档列表
@ -12432,6 +12602,11 @@
Financial---项目收入价格验证
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Services.TrialRevenuesPriceVerificationService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialRevenuesPriceVerification},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Doctor},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Payment})">
<summary>
Financial---项目收入价格验证
</summary>
</member>
<member name="M:IRaCIS.Core.Application.Services.DicomArchiveService.ArchiveDicomFileAsync(FellowOakDicom.DicomDataset)">
<summary>
单个文件接收 归档
@ -13498,6 +13673,11 @@
医生文档关联关系维护
</summary>
</member>
<member name="M:IRaCIS.Application.Services.AttachmentService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Attachment})">
<summary>
医生文档关联关系维护
</summary>
</member>
<member name="M:IRaCIS.Application.Services.AttachmentService.DeleteAttachment(IRaCIS.Application.Contracts.AttachementCommand)">
<summary>
删除附件
@ -14051,6 +14231,11 @@
临床数据配置
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ClinicalDataSetService.#ctor(IRaCIS.Core.Application.Interfaces.IClinicalQuestionService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalDataTrialSet},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialClinicalDataSetCriterion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalDataSystemSet},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PreviousPDF},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Dictionary},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialClinicalQuestion},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SystemClinicalQuestion})">
<summary>
临床数据配置
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ClinicalDataSetService.ApplySystemClinical(IRaCIS.Core.Application.Service.Reading.Dto.ApplySystemClinicalInDto)">
<summary>
应用系统临床数据
@ -14120,6 +14305,11 @@
阅片临床数据
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ReadingClinicalDataService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingClinicalData},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingConsistentClinicalData},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalDataTrialSet},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PreviousPDF},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PreviousHistory},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModuleCriterionFrom},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalForm},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PreviousOther},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PreviousSurgery},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},System.IServiceProvider,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingClinicalDataPDF},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingConsistentClinicalDataPDF})">
<summary>
阅片临床数据
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ReadingClinicalDataService.AddOrUpdateReadingClinicalData(IRaCIS.Core.Application.Service.Reading.Dto.AddOrUpdateReadingClinicalDataDto)">
<summary>
新增或者修改
@ -14234,6 +14424,11 @@
阅片问题.标准
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ReadingQuestionService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalDataTrialSet},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalDataSystemSet},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Dictionary},IRaCIS.Core.Application.Contracts.IReadingImageTaskService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingSystemCriterionDictionary},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingCriterionPage},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TumorAssessment_RECIST1Point1},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.OrganInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskQuestionAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.PreviousPDF})">
<summary>
阅片问题.标准
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ReadingQuestionService.GetCustomTableQuestionPreview(IRaCIS.Core.Application.Service.Reading.Dto.GetCustomQuestionPreviewInDto)">
<summary>
获取自定义表格问题预览
@ -14477,6 +14672,11 @@
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Application.Services.ReadingImageTaskService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudy},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingOncologyTaskInfo},IRaCIS.Core.Application.Service.IVisitTaskHelpeService,IRaCIS.Core.Application.Service.IVisitTaskService,IRaCIS.Core.Application.Contracts.IReadingClinicalDataService,IRaCIS.Core.Application.Service.IReadingCalculateService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},Microsoft.Extensions.Options.IOptionsMonitor{IRaCIS.Core.Domain.Share.ServiceVerifyConfigOption},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingGlobalTaskInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingCriterionPage},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskRelation},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingJudgeInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.DicomInstance},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.OrganInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialDocument},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.User},EasyCaching.Core.IEasyCachingProvider,IRaCIS.Core.Application.Service.ReadingCalculate.Interface.ILuganoCalculateService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingCustomTag},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskQuestionMark},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingSystemCriterionDictionary},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTrialCriterionDictionary},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TumorAssessment_RECIST1Point1},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableAnswerRowInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskQuestionAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudyFile},IRaCIS.Core.Application.Service.IGeneralCalculateService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionTrial},IRaCIS.Core.Application.Interfaces.ITrialEmailNoticeConfigService)">
<summary>
IR影像阅片
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ReadingImageTaskService.GetReadingCalculationData(IRaCIS.Core.Application.Service.Reading.Dto.GetReadingCalculationDataInDto)">
<summary>
获取阅片的计算数据
@ -14973,6 +15173,11 @@
阅片期配置
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ReadingPeriodSetService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingPeriodSet},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitStage},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Application.Service.IVisitTaskHelpeService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingPeriodPlan},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Site},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject})">
<summary>
阅片期配置
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ReadingPeriodSetService.AddOrUpdateReadingPeriodSet(IRaCIS.Core.Application.Service.Reading.Dto.ReadingPeriodSetAddOrEdit)">
<summary>
新增或者修改 (增加标准搜索,已修改)
@ -15040,6 +15245,11 @@
生成的阅片模块(在大列表上展示的) 阅片期
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ReadModuleService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.User},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Application.Service.IVisitTaskHelpeService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ClinicalDataTrialSet},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModuleView},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.DicomInstance},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudyFile},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingPeriodSet},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModule})">
<summary>
生成的阅片模块(在大列表上展示的) 阅片期
</summary>
</member>
<member name="M:IRaCIS.Application.Services.ReadModuleService.GetCanChangeReadVisitList(IRaCIS.Core.Application.Service.Reading.Dto.GetCanChangeReadVisitListInDto)">
<summary>
获取修改截止访视下拉
@ -15092,6 +15302,11 @@
Dashboard统计、全局工作量统计、入组两个维度统计按照项目、按照人
</summary>
</member>
<member name="M:IRaCIS.Application.Services.StatisticsService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Doctor},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Enroll},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Workload},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.CRO},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Dictionary},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Hospital},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.EnrollDetail},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.User},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialUser})">
<summary>
Dashboard统计、全局工作量统计、入组两个维度统计按照项目、按照人
</summary>
</member>
<member name="M:IRaCIS.Application.Services.StatisticsService.GetWorkloadByTrialAndReviewer(IRaCIS.Application.Contracts.StatisticsWorkloadQueryParam)">
<summary> 根据项目和医生,分页获取工作量统计[New] </summary>
</member>

View File

@ -18,27 +18,12 @@ namespace IRaCIS.Core.Application.Service
/// 分配规则
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TaskAllocationRuleService : BaseService, ITaskAllocationRuleService
public class TaskAllocationRuleService(
IRepository<TaskAllocationRule> _taskAllocationRuleRepository,
IRepository<User> _userRepository,
IRepository<SubjectCanceDoctor> _subjectCanceDoctorRepository) : BaseService, ITaskAllocationRuleService
{
private readonly IRepository<TaskAllocationRule> _taskAllocationRuleRepository;
private readonly IRepository<User> _userRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<SubjectCanceDoctor> _subjectCanceDoctorRepository;
public TaskAllocationRuleService(IRepository<TaskAllocationRule> taskAllocationRuleRepository, IRepository<User> userRepository, IRepository<Trial> trialRepository, IRepository<SubjectCanceDoctor> subjectCanceDoctorRepository)
{
_taskAllocationRuleRepository = taskAllocationRuleRepository;
_userRepository = userRepository;
_trialRepository = trialRepository;
_subjectCanceDoctorRepository = subjectCanceDoctorRepository;
}
/// <summary>

View File

@ -28,51 +28,20 @@ namespace IRaCIS.Core.Application.Service
/// 一致性分析配置表
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TaskConsistentRuleService : BaseService, ITaskConsistentRuleService
public class TaskConsistentRuleService(
IRepository<TaskConsistentRule> _taskConsistentRuleRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository,
IReadingClinicalDataService _readingClinicalDataService,
IRepository<Subject> _subjectRepository,
IDistributedLockProvider _distributedLockProvider,
IRepository<Trial> _trialRepository,
IRepository<TrialSite> _trialSiteRepository,
IRepository<TrialVirtualSiteCodeUpdate> _trialVirtualSiteCodeUpdateRepository,
IVisitTaskHelpeService _visitTaskCommonService) : BaseService, ITaskConsistentRuleService
{
private readonly IRepository<TaskConsistentRule> _taskConsistentRuleRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingConsistentClinicalData> _readingConsistentClinicalDataRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository;
private readonly IReadingClinicalDataService _readingClinicalDataService;
private readonly IRepository<SubjectUser> _subjectUserRepository;
private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<Enroll> _enrollRepository;
private readonly IDistributedLockProvider _distributedLockProvider;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TrialSite> _trialSiteRepository;
private readonly IRepository<TrialVirtualSiteCodeUpdate> _trialVirtualSiteCodeUpdateRepository;
private readonly IVisitTaskHelpeService _visitTaskCommonService;
public TaskConsistentRuleService(IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingConsistentClinicalData> readingConsistentClinicalDataRepository,
IRepository<ReadingQuestionCriterionTrial> trialReadingCriterionRepository,
IReadingClinicalDataService readingClinicalDataService,
IRepository<Enroll> enrollRepository, IRepository<TaskConsistentRule> taskConsistentRuleRepository, IRepository<SubjectUser> subjectUserRepository, IRepository<Subject> subjectRepository, IDistributedLockProvider distributedLockProvider,
IRepository<Trial> trialRepository, IRepository<TrialSite> trialSiteRepository, IRepository<TrialVirtualSiteCodeUpdate> trialVirtualSiteCodeUpdateRepository, IVisitTaskHelpeService visitTaskCommonService)
{
_taskConsistentRuleRepository = taskConsistentRuleRepository;
_visitTaskRepository = visitTaskRepository;
this._readingConsistentClinicalDataRepository = readingConsistentClinicalDataRepository;
this._trialReadingCriterionRepository = trialReadingCriterionRepository;
this._readingClinicalDataService = readingClinicalDataService;
_subjectUserRepository = subjectUserRepository;
_subjectRepository = subjectRepository;
_enrollRepository = enrollRepository;
_distributedLockProvider = distributedLockProvider;
_trialRepository = trialRepository;
_trialSiteRepository = trialSiteRepository;
_trialVirtualSiteCodeUpdateRepository = trialVirtualSiteCodeUpdateRepository;
_visitTaskCommonService = visitTaskCommonService;
}
/// <summary>
/// 设置一致性分析任务失效
@ -159,7 +128,7 @@ namespace IRaCIS.Core.Application.Service
{
var filterObj = await _taskConsistentRuleRepository.FirstOrDefaultAsync(t => t.Id == inQuery.TaskConsistentRuleId);
var pagedList = await GetIQueryableDoctorSelfConsistentSubjectView(filterObj, inQuery.DoctorUserId).ToPagedListAsync(inQuery,nameof(DoctorSelfConsistentSubjectView.SubjectCode));
var pagedList = await GetIQueryableDoctorSelfConsistentSubjectView(filterObj, inQuery.DoctorUserId).ToPagedListAsync(inQuery, nameof(DoctorSelfConsistentSubjectView.SubjectCode));
return pagedList;
}
@ -278,7 +247,7 @@ namespace IRaCIS.Core.Application.Service
TaskName = lastTask.TaskName + "_Global",
TaskBlindName = lastTask.TaskBlindName + "_Global",
TrialReadingCriterionId = trialReadingCriterionId,
VisitTaskNum= lastTask.VisitTaskNum + ReadingCommon.TaskNumDic[ReadingCategory.Global]
VisitTaskNum = lastTask.VisitTaskNum + ReadingCommon.TaskNumDic[ReadingCategory.Global]
};
var afterGlobal = _visitTaskRepository.Where(t => t.SubjectId == lastTask.SubjectId && t.TrialReadingCriterionId == trialReadingCriterionId && t.TaskState == TaskState.Effect && t.ReadingCategory == ReadingCategory.Global && t.VisitTaskNum > lastTask.VisitTaskNum).ProjectTo<VisitTaskSimpleDTO>(_mapper.ConfigurationProvider).FirstOrDefault();
@ -627,7 +596,7 @@ namespace IRaCIS.Core.Application.Service
IsReReadingOrBackInfluenceAnalysis = t.IsReReadingOrBackInfluenceAnalysis,
FirstGlobalVisitName= t.ReadModuleList.Where(c=>c.TrialReadingCriterionId== trialReadingCriterionId && c.ModuleType== ModuleTypeEnum.Global).OrderBy(k=>k.SubjectVisit.VisitNum).Select(u=>u.SubjectVisit.VisitName).FirstOrDefault(),
FirstGlobalVisitName = t.ReadModuleList.Where(c => c.TrialReadingCriterionId == trialReadingCriterionId && c.ModuleType == ModuleTypeEnum.Global).OrderBy(k => k.SubjectVisit.VisitNum).Select(u => u.SubjectVisit.VisitName).FirstOrDefault(),
BlindSubjectCode = t.SubjectVisitTaskList.Where(t => t.IsAnalysisCreate && t.TrialReadingCriterionId == trialReadingCriterionId).OrderByDescending(t => t.BlindSubjectCode).Select(t => t.BlindSubjectCode).FirstOrDefault(),

View File

@ -16,17 +16,11 @@ namespace IRaCIS.Core.Application.Service
/// 医学审核生成规则 废弃
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TaskMedicalReviewRuleService : BaseService, ITaskMedicalReviewRuleService
public class TaskMedicalReviewRuleService(
IRepository<TaskMedicalReviewRule> _taskMedicalReviewRuleRepository) : BaseService, ITaskMedicalReviewRuleService
{
private readonly IRepository<TaskMedicalReviewRule> _taskMedicalReviewRuleRepository;
private readonly IRepository<TaskMedicalReview> _taskMedicalReviewRepository;
public TaskMedicalReviewRuleService(IRepository<TaskMedicalReviewRule> taskMedicalReviewRuleRepository,IRepository<TaskMedicalReview> taskMedicalReviewRepository)
{
_taskMedicalReviewRuleRepository = taskMedicalReviewRuleRepository;
_taskMedicalReviewRepository = taskMedicalReviewRepository;
}
[HttpPost]
public async Task<(List<TaskMedicalReviewRuleView>,object)> GetTaskMedicalReviewRuleList(TaskMedicalReviewRuleQuery inQuery)

View File

@ -19,31 +19,14 @@ namespace IRaCIS.Core.Application.Service
/// 任务医学审核
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TaskMedicalReviewService : BaseService, ITaskMedicalReviewService
public class TaskMedicalReviewService(
IRepository<TaskMedicalReview> _taskMedicalReviewRepository,
IRepository<TrialUser> _trialUserRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<VisitTask> _visitTaskRepository) : BaseService, ITaskMedicalReviewService
{
private readonly IRepository<TaskMedicalReview> _taskMedicalReviewRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TrialUser> _trialUserRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<TaskMedicalReviewRule> _taskMedicalReviewRuleRepository;
public TaskMedicalReviewService(IRepository<TaskMedicalReview> taskMedicalReviewRepository,
IRepository<Trial> trialRepository,
IRepository<TrialUser> trialUserRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<TaskMedicalReviewRule> taskMedicalReviewRuleRepository)
{
_taskMedicalReviewRepository = taskMedicalReviewRepository;
this._trialRepository = trialRepository;
_trialUserRepository = trialUserRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
_visitTaskRepository = visitTaskRepository;
_taskMedicalReviewRuleRepository = taskMedicalReviewRuleRepository;
}
/// <summary>
/// PM 医学审核(挑选任务生成后的列表)

View File

@ -29,68 +29,23 @@ namespace IRaCIS.Core.Application.Service
/// 访视读片任务
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class VisitTaskHelpeService : BaseService, IVisitTaskHelpeService
public class VisitTaskHelpeService(
IRepository<VisitTask> _visitTaskRepository,
IRepository<Trial> _trialRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<ReadingJudgeInfo> _readingJudgeInfoRepository,
IRepository<SubjectUser> _subjectUserRepository,
IRepository<ReadModule> _readModuleRepository,
IRepository<ReadingOncologyTaskInfo> _readingOncologyTaskInfoRepository,
IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository,
IRepository<ClinicalDataTrialSet> _trialClinicalDataSetRepository,
IRepository<ReadingClinicalData> _readingClinicalDataRepository,
IRepository<ReadingConsistentClinicalData> _readingConsistentClinicalDataRepository) : BaseService, IVisitTaskHelpeService
{
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<ReadingJudgeInfo> _readingJudgeInfoRepository;
private readonly IRepository<TaskAllocationRule> _taskAllocationRuleRepository;
private readonly IRepository<SubjectUser> _subjectUserRepository;
private readonly IRepository<ReadModule> _readModuleRepository;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<ReadingOncologyTaskInfo> _readingOncologyTaskInfoRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<VisitTaskReReading> _visitTaskReReadingRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository;
private readonly IRepository<ClinicalDataTrialSet> _trialClinicalDataSetRepository;
private readonly IRepository<ReadingClinicalData> _readingClinicalDataRepository;
private readonly IRepository<ReadingConsistentClinicalData> _readingConsistentClinicalDataRepository;
private readonly IRepository<SubjectCriteriaEvaluation> _subjectCriteriaEvaluationRepository;
public VisitTaskHelpeService(IRepository<VisitTask> visitTaskRepository, IRepository<SubjectUser> subjectUserRepository, IRepository<Trial> trialRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<ReadModule> readModuleRepository,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
IRepository<ReadingOncologyTaskInfo> ReadingOncologyTaskInfoRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<ReadingJudgeInfo> readingJudgeInfoRepository,
IRepository<TaskAllocationRule> taskAllocationRuleRepository, IRepository<VisitTaskReReading> visitTaskReReadingRepository,
IRepository<ReadingQuestionCriterionTrial> trialReadingCriterionRepository, IRepository<ClinicalDataTrialSet> trialClinicalDataSetRepository, IRepository<ReadingClinicalData> readingClinicalDataRepository,
IRepository<SubjectCriteriaEvaluation> subjectCriteriaEvaluationRepository, IRepository<ReadingConsistentClinicalData> readingConsistentClinicalDataRepository)
{
_readingConsistentClinicalDataRepository = readingConsistentClinicalDataRepository;
_readingClinicalDataRepository = readingClinicalDataRepository;
_trialClinicalDataSetRepository = trialClinicalDataSetRepository;
_visitTaskRepository = visitTaskRepository;
_trialRepository = trialRepository;
this._readModuleRepository = readModuleRepository;
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
_readingOncologyTaskInfoRepository = ReadingOncologyTaskInfoRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
_subjectVisitRepository = subjectVisitRepository;
this._readingJudgeInfoRepository = readingJudgeInfoRepository;
_taskAllocationRuleRepository = taskAllocationRuleRepository;
_subjectUserRepository = subjectUserRepository;
_visitTaskReReadingRepository = visitTaskReReadingRepository;
_subjectCriteriaEvaluationRepository = subjectCriteriaEvaluationRepository;
_trialReadingCriterionRepository = trialReadingCriterionRepository;
}
//查询列表的时候,一致性核查通过未产生任务的 自动产生任务 如果是一致性核查,那么还会自动分配
public async Task GenerateVisitTaskAsync(Guid trialId, List<Guid> subjectVisitIdList, bool isAssignSubjectToDoctor = false)

View File

@ -39,7 +39,6 @@ namespace IRaCIS.Core.Application.Service.Allocation
IRepository<ReadModule> _readModuleRepository,
IRepository<VisitTaskReReading> _visitTaskReReadingRepository,
IRepository<TaskMedicalReview> _taskMedicalReviewRepository,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository,
IRepository<ReadingClinicalData> _readingClinicalDataReposiotry,
IRepository<SubjectCriteriaEvaluation> _subjectCriteriaEvaluationRepository,
IRepository<SubjectCriteriaEvaluationVisitFilter> _subjectCriteriaEvaluationVisitFilterRepository,

View File

@ -15,15 +15,9 @@ namespace IRaCIS.Core.Application.Service
/// ExploreRecommendService
/// </summary>
[ApiExplorerSettings(GroupName = "Common")]
public class ExploreRecommendService : BaseService, IExploreRecommendService
public class ExploreRecommendService(IRepository<ExploreRecommend> _exploreRecommendRepository) : BaseService, IExploreRecommendService
{
private readonly IRepository<ExploreRecommend> _exploreRecommendRepository;
public ExploreRecommendService(IRepository<ExploreRecommend> exploreRecommendRepository)
{
_exploreRecommendRepository = exploreRecommendRepository;
}
[HttpPost]
public async Task<PageOutput<ExploreRecommendView>> GetExploreRecommendList(ExploreRecommendQuery inQuery)

View File

@ -8,24 +8,15 @@ using Microsoft.AspNetCore.Hosting;
namespace IRaCIS.Application.Services
{
public class FileService : IFileService
public class FileService(
IDoctorService _doctorService,
IAttachmentService _attachmentService,
IWebHostEnvironment _hostEnvironment) : IFileService
{
private string defaultUploadFilePath = FileStoreHelper.GetIRaCISRootPath(_hostEnvironment);
private readonly IDoctorService _doctorService;
private readonly IAttachmentService _attachmentService;
private readonly IWebHostEnvironment _hostEnvironment;
private string defaultUploadFilePath = string.Empty;
private readonly ILogger<FileService> _logger;
public FileService(IDoctorService doctorService, IAttachmentService attachmentService,
IWebHostEnvironment hostEnvironment, ILogger<FileService> logger)
{
_doctorService = doctorService;
_attachmentService = attachmentService;
_hostEnvironment = hostEnvironment;
defaultUploadFilePath = FileStoreHelper.GetIRaCISRootPath(_hostEnvironment);
_logger = logger;
}
/// <summary>
/// 打包医生官方简历
@ -41,7 +32,7 @@ namespace IRaCIS.Application.Services
string uploadFolderPath = Path.Combine(FileStoreHelper.GetIRaCISRootDataFolder(_hostEnvironment), "UploadFile");
var tempSavePath = Path.Combine(uploadFolderPath, "temp", guidStr); //待压缩的文件夹,将需要下载的文件拷贝到此文件夹
if (!Directory.Exists(tempSavePath))
@ -99,7 +90,7 @@ namespace IRaCIS.Application.Services
public async Task<string> CreateDoctorsAllAttachmentZip(Guid[] doctorIds)
{
#region 老版本 存储在服务器
//准备下载文件的临时路径
//准备下载文件的临时路径
var guidStr = Guid.NewGuid().ToString();
//string uploadFolderPath = HostingEnvironment.MapPath("/UploadFile/");
string uploadFolderPath = Path.Combine(FileStoreHelper.GetIRaCISRootDataFolder(_hostEnvironment), "UploadFile");
@ -136,7 +127,7 @@ namespace IRaCIS.Application.Services
ZipHelper.CreateZip(tempSavePath, targetPath);
return Path.Combine("/IRaCISData/UploadFile/", target + ".zip");
#endregion
}

View File

@ -20,16 +20,9 @@ namespace IRaCIS.Core.Application.Service
/// InternationalizationService
/// </summary>
[ApiExplorerSettings(GroupName = "Common")]
public class InternationalizationService : BaseService, IInternationalizationService
public class InternationalizationService (IRepository<Internationalization> _internationalizationRepository) : BaseService, IInternationalizationService
{
private readonly IFusionCache _fusionCache;
private readonly IRepository<Internationalization> _internationalizationRepository;
public InternationalizationService(IRepository<Internationalization> internationalizationRepository, IFusionCache fusionCache)
{
_internationalizationRepository = internationalizationRepository;
_fusionCache = fusionCache;
}
/// <summary>
/// 前端国际化内容接口

View File

@ -53,51 +53,21 @@ namespace IRaCIS.Application.Services
Task UserFeedBackMail(Guid feedBackId);
}
public class MailVerificationService : BaseService, IMailVerificationService
public class MailVerificationService(
IRepository<VerificationCode> _verificationCodeRepository,
IRepository<SystemBasicData> _systemBasicDatarepository,
IRepository<User> _userRepository,
ITokenService _tokenService,
IRepository<Trial> _trialRepository,
IRepository<UserType> _userTypeRepository,
IRepository<Doctor> _doctorTypeRepository,
IRepository<EmailNoticeConfig> _emailNoticeConfigrepository,
IOptionsMonitor<SystemEmailSendConfig> systemEmailConfig,
IDistributedLockProvider _distributedLockProvider) : BaseService, IMailVerificationService
{
private readonly IRepository<VerificationCode> _verificationCodeRepository;
private readonly IRepository<SystemBasicData> _systemBasicDatarepository;
private readonly IRepository<User> _userRepository;
private readonly ITokenService _tokenService;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<UserType> _userTypeRepository;
private readonly IRepository<Doctor> _doctorTypeRepository;
private readonly IDistributedLockProvider _distributedLockProvider;
private readonly SystemEmailSendConfig _systemEmailConfig;
private readonly IRepository<EmailNoticeConfig> _emailNoticeConfigrepository;
public MailVerificationService(IRepository<VerificationCode> verificationCodeRepository,
IRepository<SystemBasicData> systemBasicDatarepository,
IRepository<User> userRepository,
ITokenService tokenService,
IRepository<Trial> trialRepository,
IRepository<UserType> userTypeRepository,
IRepository<Doctor> doctorTypeRepository,
IRepository<EmailNoticeConfig> emailNoticeConfigRepository,
IOptionsMonitor<SystemEmailSendConfig> systemEmailConfig, IDistributedLockProvider distributedLockProvider)
{
_systemEmailConfig = systemEmailConfig.CurrentValue;
_verificationCodeRepository = verificationCodeRepository;
_systemBasicDatarepository = systemBasicDatarepository;
_tokenService = tokenService;
_userRepository = userRepository;
_trialRepository = trialRepository;
_userTypeRepository = userTypeRepository;
_doctorTypeRepository = doctorTypeRepository;
_distributedLockProvider = distributedLockProvider;
_emailNoticeConfigrepository = emailNoticeConfigRepository;
}
private readonly SystemEmailSendConfig _systemEmailConfig = systemEmailConfig.CurrentValue;
private async Task<EmailNoticeConfig> GetEmailSubejctAndHtmlInfoAndBuildAsync(EmailBusinessScenario scenario, MimeMessage messageToSend,
Func<(string topicStr, string htmlBodyStr), (string topicStr, string htmlBodyStr)> emailFunc)
{

View File

@ -17,15 +17,9 @@ namespace IRaCIS.Core.Application.Service
/// PublishLogService
/// </summary>
[ApiExplorerSettings(GroupName = "Common")]
public class PublishLogService : BaseService, IPublishLogService
public class PublishLogService(IRepository<PublishLog> _publishLogRepository) : BaseService, IPublishLogService
{
private readonly IRepository<PublishLog> _publishLogRepository;
public PublishLogService(IRepository<PublishLog> publishLogRepository)
{
_publishLogRepository = publishLogRepository;
}
[HttpPost]
public async Task<PageOutput<PublishLogView>> GetPublishLogList(PublishLogQuery inQuery)

View File

@ -12,13 +12,9 @@ namespace IRaCIS.Core.Application.Services
/// SystemBasicDataService
/// </summary>
[ApiExplorerSettings(GroupName = "Common")]
public class SystemBasicDataService : BaseService, ISystemBasicDataService
public class SystemBasicDataService(IRepository<SystemBasicData> _systemBasicDataRepository) : BaseService, ISystemBasicDataService
{
private readonly IRepository<SystemBasicData> _systemBasicDataRepository;
public SystemBasicDataService(IRepository<SystemBasicData> systemBasicDataRepository) {
this._systemBasicDataRepository = systemBasicDataRepository;
}
/// <summary>

View File

@ -12,14 +12,9 @@ namespace IRaCIS.Application.Services
/// 医生文档关联关系维护
/// </summary>
[ApiExplorerSettings(GroupName = "Reviewer")]
public class AttachmentService : BaseService, IAttachmentService
public class AttachmentService(IRepository<Attachment> _attachmentrepository) : BaseService, IAttachmentService
{
private readonly IRepository<Attachment> _attachmentrepository;
public AttachmentService(IRepository<Attachment> attachmentrepository)
{
this._attachmentrepository = attachmentrepository;
}
/// <summary>
/// 删除附件

View File

@ -8,14 +8,9 @@ using Microsoft.AspNetCore.Mvc;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Reviewer")]
public class DoctorListService : BaseService, IDoctorListQueryService
public class DoctorListService (IRepository<Doctor> _doctorRepository) : BaseService, IDoctorListQueryService
{
private readonly IRepository<Doctor> _doctorRepository;
public DoctorListService(IRepository<Doctor> doctorRepository)
{
_doctorRepository = doctorRepository;
}
/// <summary>
/// Reviewer列表分页查询

View File

@ -9,40 +9,16 @@ using System.Linq.Expressions;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Reviewer")]
public class DoctorService : BaseService, IDoctorService
public class DoctorService(
IRepository<Doctor> _doctorRepository,
IRepository<Enroll> _enrollRepository,
IRepository<Attachment> _attachmentRepository,
IRepository<DoctorCriterionFile> _doctorCriterionFileRepository,
IRepository<Trial> _trialRepository,
IRepository<TrialPaymentPrice> _trialExtRepository
) : BaseService, IDoctorService
{
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<Enroll> _enrollRepository;
private readonly IRepository<DoctorDictionary> _doctorDictionaryRepository;
private readonly IRepository<Attachment> _attachmentRepository;
private readonly IRepository<DoctorCriterionFile> _doctorCriterionFileRepository;
private readonly IRepository<UserDoctor> _userDoctorRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TrialPaymentPrice> _trialExtRepository;
private readonly IRepository<Vacation> _vacationRepository;
public DoctorService(IRepository<Doctor> doctorInfoRepository,
IRepository<Dictionary> dictionaryRepository,
IRepository<Enroll> intoGroupRepository,
IRepository<DoctorDictionary> doctorDictionaryRepository,
IRepository<Attachment> attachmentRepository,
IRepository<DoctorCriterionFile> doctorCriterionFileRepository,
IRepository<UserDoctor> userDoctorRepository,
IRepository<Trial> trialRepository,
IRepository<TrialPaymentPrice> trialExtRepository, IRepository<Vacation> vacationRepository)
{
_doctorRepository = doctorInfoRepository;
_enrollRepository = intoGroupRepository;
_doctorDictionaryRepository = doctorDictionaryRepository;
_attachmentRepository = attachmentRepository;
this._doctorCriterionFileRepository = doctorCriterionFileRepository;
_userDoctorRepository = userDoctorRepository;
_trialRepository = trialRepository;
_trialExtRepository = trialExtRepository;
_vacationRepository = vacationRepository;
}

View File

@ -10,18 +10,11 @@ using Microsoft.AspNetCore.Mvc;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Reviewer")]
public class EducationService : BaseService, IEducationService
public class EducationService(
IRepository<Postgraduate> _postgraduateRepository,
IRepository<Education> _educationRepository) : BaseService, IEducationService
{
private readonly IRepository<Postgraduate> _postgraduateRepository;
private readonly IRepository<Education> _educationRepository;
public EducationService(IRepository<Education> doctorNormalEducationRepository,
IRepository<Postgraduate> doctorContinueLearningRepository)
{
_educationRepository = doctorNormalEducationRepository;
_postgraduateRepository = doctorContinueLearningRepository;
}
/// <summary>
/// 根据医生Id获取医生教育经历和继续学习经历列表
/// </summary>

View File

@ -5,14 +5,9 @@ using Microsoft.AspNetCore.Mvc;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Reviewer")]
public class ResearchPublicationService : BaseService, IResearchPublicationService
public class ResearchPublicationService(IRepository<ResearchPublication> researchPublicationRepository) : BaseService, IResearchPublicationService
{
private readonly IRepository<ResearchPublication> researchPublicationRepository;
public ResearchPublicationService(IRepository<ResearchPublication> _researchPublicationRepository)
{
researchPublicationRepository = _researchPublicationRepository;
}
/// <summary>
/// 查询-医生科学研究信息

View File

@ -5,24 +5,13 @@ using Microsoft.AspNetCore.Mvc;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Reviewer")]
public class TrialExperienceService : BaseService, ITrialExperienceService
public class TrialExperienceService(
IRepository<TrialExperience> _trialExperienceRepository,
IRepository<Doctor> _doctorRepository,
IRepository<Attachment> _attachmentRepository
) : BaseService, ITrialExperienceService
{
private readonly IRepository<TrialExperience> _trialExperienceRepository;
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<Attachment> _attachmentRepository;
private readonly IRepository<TrialExperienceCriteria> _trialExperienceCriteriaRepository;
public TrialExperienceService(IRepository<TrialExperience> trialExperienceRepository, IRepository<Doctor> doctorRepository, IRepository<Attachment> attachmentRepository,
IRepository<TrialExperienceCriteria> trialExperienceCriteriaRepository)
{
_trialExperienceRepository = trialExperienceRepository;
_doctorRepository = doctorRepository;
_attachmentRepository = attachmentRepository;
_trialExperienceCriteriaRepository = trialExperienceCriteriaRepository;
}
/// <summary>

View File

@ -7,14 +7,9 @@ using Panda.DynamicWebApi.Attributes;
namespace IRaCIS.Application.Services
{
[ ApiExplorerSettings(GroupName = "Reviewer")]
public class VacationService : BaseService, IVacationService
public class VacationService (IRepository<Vacation> _vacationRepository) : BaseService, IVacationService
{
private readonly IRepository<Vacation> _vacationRepository;
public VacationService(IRepository<Vacation> vacationRepository)
{
_vacationRepository = vacationRepository;
}
/// <summary>
/// 添加休假时间段
/// </summary>

View File

@ -34,23 +34,16 @@ namespace IRaCIS.Core.Application.Service
Task<(TrialEmailNoticeConfig?, SMTPEmailConfig?)> BuildEmailConfig(Guid trialId, EmailBusinessScenario businessScenario, Func<TrialEmailNoticeConfig, (string topicStr, string htmlBodyStr, bool isEn_us, Guid? onlyToUserId)> topicAndHtmlFunc, Guid? siteId = null, Guid? trialReadingCriterionId = null);
}
public class EmailSendService : BaseService, IEmailSendService
public class EmailSendService(
IRepository<TrialEmailNoticeConfig> _trialEmailNoticeConfigRepository,
IRepository<Trial> _trialRepository,
IOptionsMonitor<SystemEmailSendConfig> _SystemEmailSendConfig) : BaseService, IEmailSendService
{
private readonly IRepository<TrialEmailNoticeConfig> _trialEmailNoticeConfigRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IOptionsMonitor<SystemEmailSendConfig> _SystemEmailSendConfig;
public static string EmailNamePlaceholder => StaticData. EmailSend.EmailNamePlaceholder;
public EmailSendService(IRepository<TrialEmailNoticeConfig> trialEmailNoticeConfigRepository, IRepository<Trial> trialRepository, IOptionsMonitor<SystemEmailSendConfig> systemEmailSendConfig)
{
_trialEmailNoticeConfigRepository = trialEmailNoticeConfigRepository;
_trialRepository = trialRepository;
_SystemEmailSendConfig = systemEmailSendConfig;
}
//入组确认/PD确认

View File

@ -15,22 +15,12 @@ namespace IRaCIS.Core.Application.Services
/// SystemDocumentService
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class SystemDocumentService : BaseService, ISystemDocumentService
public class SystemDocumentService(
IRepository<SystemDocument> _systemDocumentRepository,
IRepository<SystemDocConfirmedUser> _systemDocConfirmedUserRepository) : BaseService, ISystemDocumentService
{
private readonly IRepository<SystemDocument> _systemDocumentRepository;
private readonly IRepository<SystemDocNeedConfirmedUserType> _systemDocNeedConfirmedUserTypeRepository;
private readonly IRepository<SystemDocConfirmedUser> _systemDocConfirmedUserRepository;
public SystemDocumentService( IRepository<SystemDocument> systemDocumentRepository,
IRepository<SystemDocNeedConfirmedUserType> systemDocNeedConfirmedUserTypeRepository,
IRepository<SystemDocConfirmedUser> systemDocConfirmedUserRepository)
{
_systemDocumentRepository = systemDocumentRepository;
this._systemDocNeedConfirmedUserTypeRepository = systemDocNeedConfirmedUserTypeRepository;
_systemDocConfirmedUserRepository = systemDocConfirmedUserRepository;
}

View File

@ -19,38 +19,18 @@ namespace IRaCIS.Core.Application.Services
/// TrialDocumentService
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialDocumentService : BaseService, ITrialDocumentService
public class TrialDocumentService(
IRepository<TrialDocument> _trialDocumentRepository,
IRepository<TrialDocConfirmedUser> _trialDocUserTypeConfirmedUserRepository,
IRepository<Trial> _trialRepository,
ISystemDocumentService _systemDocumentService,
IRepository<SystemDocConfirmedUser> _systemDocConfirmedUserRepository,
IRepository<SystemDocument> _systemDocumentRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository) : BaseService, ITrialDocumentService
{
private readonly IRepository<TrialDocument> _trialDocumentRepository;
private readonly IRepository<TrialDocConfirmedUser> _trialDocUserTypeConfirmedUserRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly ISystemDocumentService _systemDocumentService;
private readonly IRepository<SystemDocConfirmedUser> _systemDocConfirmedUserRepository;
private readonly IRepository<SystemDocument> _systemDocumentRepository;
private readonly IRepository<TrialCriterionAdditionalAssessmentType> _trialCriterionAdditionalAssessmentTypeRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
public TrialDocumentService(IRepository<TrialDocument> trialDocumentRepository,
IRepository<TrialDocConfirmedUser> trialDocUserTypeConfirmedUserRepository,
IRepository<Trial> trialRepository,
ISystemDocumentService systemDocumentService,
IRepository<SystemDocConfirmedUser> systemDocConfirmedUserRepository,
IRepository<TrialCriterionAdditionalAssessmentType> trialCriterionAdditionalAssessmentTypeRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository
, IRepository<SystemDocument> systemDocumentRepository)
{
_trialDocumentRepository = trialDocumentRepository;
this._trialDocUserTypeConfirmedUserRepository = trialDocUserTypeConfirmedUserRepository;
this._trialRepository = trialRepository;
this._systemDocumentService = systemDocumentService;
this._systemDocConfirmedUserRepository = systemDocConfirmedUserRepository;
_systemDocumentRepository = systemDocumentRepository;
_readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
_trialCriterionAdditionalAssessmentTypeRepository = trialCriterionAdditionalAssessmentTypeRepository;
}
/// <summary>
/// Setting 界面的 项目所有文档列表

View File

@ -34,48 +34,20 @@ namespace IRaCIS.Core.Application.Service
/// TrialEmailNoticeConfigService
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialEmailNoticeConfigService : BaseService, ITrialEmailNoticeConfigService
public class TrialEmailNoticeConfigService(
IRepository<TrialEmailNoticeConfig> _trialEmailNoticeConfigRepository,
IRepository<TrialEmailBlackUser> _trialEmailBlackUserRepository,
IRepository<EmailNoticeConfig> _emailNoticeConfigRepository,
IRepository<Trial> _trialRepository,
IRepository<TaskMedicalReview> _taskMedicalReviewRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<TrialUser> _trialUserRepository,
IRepository<Subject> _subjectRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IEmailSendService _emailSendService) : BaseService, ITrialEmailNoticeConfigService
{
private readonly IRepository<TrialEmailNoticeConfig> _trialEmailNoticeConfigRepository;
private readonly IRepository<TrialEmailBlackUser> _trialEmailBlackUserRepository;
private readonly IRepository<EmailNoticeConfig> _emailNoticeConfigRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TaskMedicalReview> _taskMedicalReviewRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<TrialUser> _trialUserRepository;
private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IEmailSendService _emailSendService;
public TrialEmailNoticeConfigService(
IRepository<TrialEmailNoticeConfig> trialEmailNoticeConfigRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<Trial> trialRepository,
IRepository<TrialUser> trialUserRepository,
IRepository<TaskMedicalReview> taskMedicalReviewRepository,
IRepository<Subject> subjectRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<TrialEmailBlackUser> trialEmailBlackUserRepository,
IRepository<EmailNoticeConfig> emailNoticeConfigRepository
, IEmailSendService emailSendService
)
{
_trialEmailNoticeConfigRepository = trialEmailNoticeConfigRepository;
_visitTaskRepository = visitTaskRepository;
_trialRepository = trialRepository;
_trialUserRepository = trialUserRepository;
_taskMedicalReviewRepository = taskMedicalReviewRepository;
_subjectRepository = subjectRepository;
_subjectVisitRepository = subjectVisitRepository;
_trialEmailBlackUserRepository = trialEmailBlackUserRepository;
_emailNoticeConfigRepository = emailNoticeConfigRepository;
_emailSendService = emailSendService;
}
/// <summary>
/// 获取项目邮箱

View File

@ -11,46 +11,22 @@ using Panda.DynamicWebApi.Attributes;
namespace IRaCIS.Application.Services
{
public class CalculateService :BaseService, ICalculateService
public class CalculateService(
IRepository<Payment> _paymentRepository,
IRepository<TrialPaymentPrice> _trialPaymentRepository,
IRepository<ReviewerPayInformation> _doctorPayInfoRepository,
IRepository<Trial> _trialRepository,
IRepository<Doctor> _doctorRepository,
IRepository<Workload> _doctorWorkloadRepository,
IRepository<RankPrice> _rankPriceRepository,
IRepository<PaymentDetail> _paymentDetailRepository,
IVolumeRewardService _volumeRewardPriceService,
IRepository<ExchangeRate> _exchangeRateRepository,
IRepository<PaymentAdjustment> _payAdjustmentRepository,
IRepository<Enroll> _enrollRepository)
: BaseService, ICalculateService
{
private readonly IRepository<Payment> _paymentRepository;
private readonly IRepository<TrialPaymentPrice> _trialPaymentRepository;
private readonly IRepository<ReviewerPayInformation> _doctorPayInfoRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<Workload> _doctorWorkloadRepository;
private readonly IRepository<RankPrice> _rankPriceRepository;
private readonly IRepository<PaymentDetail> _paymentDetailRepository;
private readonly IVolumeRewardService _volumeRewardPriceService;
private readonly IRepository<ExchangeRate> _exchangeRateRepository;
private readonly IRepository<PaymentAdjustment> _payAdjustmentRepository;
private readonly IRepository<Enroll> _enrollRepository;
public CalculateService(IRepository<Payment> paymentRepository, IRepository<TrialPaymentPrice> trialPaymentPriceRepository,
IRepository<ReviewerPayInformation> reviewerPayInfoRepository,
IRepository<Trial> trialRepository,
IRepository<Doctor> doctorRepository,
IRepository<Workload> workloadRepository,
IRepository<RankPrice> rankPriceRepository,
IRepository<PaymentDetail> paymentDetailRepository,
IVolumeRewardService volumeRewardService,
IRepository<ExchangeRate> exchangeRateRepository,
IRepository<Enroll> EnrollRepository,
IRepository<PaymentAdjustment> paymentAdjustmentRepository)
{
_paymentRepository = paymentRepository;
_trialPaymentRepository = trialPaymentPriceRepository;
_doctorPayInfoRepository = reviewerPayInfoRepository;
_trialRepository = trialRepository;
_doctorRepository = doctorRepository;
_doctorWorkloadRepository = workloadRepository;
_rankPriceRepository = rankPriceRepository;
_paymentDetailRepository = paymentDetailRepository;
_volumeRewardPriceService = volumeRewardService;
_exchangeRateRepository = exchangeRateRepository;
_payAdjustmentRepository = paymentAdjustmentRepository;
this._enrollRepository = EnrollRepository;
}
/// <summary>
/// 获取某个月下的某些医生最终确认的工作量,用于计算月度费用

View File

@ -11,16 +11,12 @@ namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Financial")]
public class ExchangeRateService : BaseService, IExchangeRateService
public class ExchangeRateService(
IRepository<ExchangeRate> _exchangeRateRepository,
IRepository<Payment> _paymentRepository)
: BaseService, IExchangeRateService
{
private readonly IRepository<ExchangeRate> _exchangeRateRepository;
private readonly IRepository<Payment> _paymentRepository;
public ExchangeRateService(IRepository<ExchangeRate> exchangeRateRepository, IRepository<Payment> paymentRepository)
{
_exchangeRateRepository = exchangeRateRepository;
_paymentRepository = paymentRepository;
}
[NonDynamicMethod]
public async Task<IResponseOutput> AddOrUpdateExchangeRate(ExchangeRateCommand model)

View File

@ -10,55 +10,23 @@ using System.Linq.Dynamic.Core;
namespace IRaCIS.Application.Services
{
[ ApiExplorerSettings(GroupName = "Financial")]
public class FinancialService : BaseService, IPaymentService
public class FinancialService(
IRepository<Payment> _paymentRepository,
IRepository<ReviewerPayInformation> _doctorPayInfoRepository,
IRepository<TrialPaymentPrice> _trialPaymentPriceRepository,
IRepository<Trial> _trialRepository,
IRepository<Doctor> _doctorRepository,
IRepository<RankPrice> _rankPriceRepository,
IRepository<PaymentDetail> _paymentDetailRepository,
IRepository<CRO> _croRepository,
IRepository<Workload> _workloadRepository,
IRepository<TrialRevenuesPrice> _trialRevenuePriceRepository,
IRepository<PaymentAdjustment> _payAdjustmentRepository,
IRepository<Enroll> _enrollRepository,
IRepository<Workload> _doctorWorkloadRepository)
: BaseService, IPaymentService
{
private readonly IRepository<Payment> _paymentRepository;
private readonly IRepository<ReviewerPayInformation> _doctorPayInfoRepository;
private readonly IRepository<TrialPaymentPrice> _TrialPaymentPriceRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<RankPrice> _rankPriceRepository;
private readonly IRepository<PaymentDetail> _paymentDetailRepository;
private readonly IRepository<CRO> _croRepository;
private readonly IRepository<Workload> _workloadRepository;
private readonly IRepository<TrialRevenuesPrice> _trialRevenuePriceRepository;
private readonly IRepository<PaymentAdjustment> _payAdjustmentRepository;
private readonly IRepository<Enroll> _enrollRepository;
private readonly IRepository<Workload> _doctorWorkloadRepository;
public FinancialService(IRepository<Payment> costStatisticsRepository,
IRepository<ReviewerPayInformation> doctorPayInfoRepository,
IRepository<Trial> trialRepository,
IRepository<Doctor> doctorRepository,
IRepository<RankPrice> rankPriceRepository,
IRepository<PaymentDetail> costStatisticsDetailRepository,
IRepository<CRO> croCompanyRepository,
IRepository<Workload> workloadRepository,
IRepository<Enroll> intoGroupRepository,
IRepository<TrialPaymentPrice> trialPaymentPriceRepository,
IRepository<TrialRevenuesPrice> trialCostRepository,
IRepository<PaymentAdjustment> costAdjustmentRepository,
IRepository<Workload> doctoWorkloadRepository
)
{
_TrialPaymentPriceRepository = trialPaymentPriceRepository;
_paymentRepository = costStatisticsRepository;
_doctorPayInfoRepository = doctorPayInfoRepository;
_trialRepository = trialRepository;
_doctorRepository = doctorRepository;
_rankPriceRepository = rankPriceRepository;
_paymentDetailRepository = costStatisticsDetailRepository;
_croRepository = croCompanyRepository;
_enrollRepository = intoGroupRepository;
_workloadRepository = workloadRepository;
_trialRevenuePriceRepository = trialCostRepository;
_payAdjustmentRepository = costAdjustmentRepository;
_doctorWorkloadRepository = doctoWorkloadRepository;
}
/// <summary>
/// Financials /MonthlyPayment 列表查询接口
/// </summary>
@ -187,7 +155,7 @@ namespace IRaCIS.Application.Services
//from enroll in _enrollRepository.Where(t => t.TrialId == challengeQuery.TrialId)
//join dociorc in _doctorRepository.Where() on enroll.DoctorId equals dociorc.Id
//join price in _TrialPaymentPriceRepository.Where() on enroll.TrialId equals price.TrialId
//join price in _trialPaymentPriceRepository.Where() on enroll.TrialId equals price.TrialId
//select new EnrollViewModel()
@ -207,7 +175,7 @@ namespace IRaCIS.Application.Services
detailList = await (from pay in _paymentDetailRepository.Where(t => t.PaymentId == paymentId)
join enroll in _enrollRepository.Where() on new { pay.DoctorId, pay.TrialId } equals new { enroll.DoctorId, enroll.TrialId }
join price in _TrialPaymentPriceRepository.Where() on pay.TrialId equals price.TrialId
join price in _trialPaymentPriceRepository.Where() on pay.TrialId equals price.TrialId
orderby pay.ShowCodeOrder
orderby pay.ShowTypeOrder
select new PaymentDetailDTO()
@ -234,7 +202,7 @@ namespace IRaCIS.Application.Services
var adjList =
await (from costAdjustment in _payAdjustmentRepository.Where(t => t.YearMonth == yearMonthStr&& t.ReviewerId == paymentId)
join enroll in _enrollRepository.Where() on new { costAdjustment.ReviewerId, costAdjustment.TrialId } equals new { ReviewerId= enroll.DoctorId, enroll.TrialId }
join price in _TrialPaymentPriceRepository.Where() on costAdjustment.TrialId equals price.TrialId
join price in _trialPaymentPriceRepository.Where() on costAdjustment.TrialId equals price.TrialId
select new PaymentDetailDTO()

View File

@ -8,23 +8,14 @@ using Panda.DynamicWebApi.Attributes;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Financial")]
public class PaymentAdjustmentService : BaseService, IPaymentAdjustmentService
public class PaymentAdjustmentService(
IRepository<PaymentAdjustment> _payAdjustmentRepository,
IRepository<Doctor> _doctorRepository,
IRepository<ExchangeRate> _exchangeRateRepository,
IRepository<Payment> _paymentRepository)
: BaseService, IPaymentAdjustmentService
{
private readonly IRepository<PaymentAdjustment> _payAdjustmentRepository;
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<ExchangeRate> _exchangeRateRepository;
private readonly IRepository<Payment> _paymentRepository;
public PaymentAdjustmentService(IRepository<PaymentAdjustment> costAdjustmentRepository, IRepository<Doctor> doctorRepository,
IRepository<ExchangeRate> exchangeRateRepository, IRepository<Payment> paymentRepository, IMapper mapper)
{
_payAdjustmentRepository = costAdjustmentRepository;
_doctorRepository = doctorRepository;
_exchangeRateRepository = exchangeRateRepository;
_paymentRepository = paymentRepository;
}
/// <summary>
/// 添加或更新费用调整[AUTH]

View File

@ -11,18 +11,12 @@ using Panda.DynamicWebApi.Attributes;
namespace IRaCIS.Application.Services
{
[ ApiExplorerSettings(GroupName = "Financial")]
public class RankPriceService : BaseService, IRankPriceService
public class RankPriceService(
IRepository<RankPrice> _rankPriceRepository,
IRepository<ReviewerPayInformation> _reviewerPayInfoRepository)
: BaseService, IRankPriceService
{
private readonly IRepository<RankPrice> _rankPriceRepository;
private readonly IRepository<ReviewerPayInformation> _reviewerPayInfoRepository;
public RankPriceService(IRepository<RankPrice> rankPriceRepository, IRepository<ReviewerPayInformation> reviewerPayInfoRepository,IMapper mapper)
{
_rankPriceRepository = rankPriceRepository;
_reviewerPayInfoRepository = reviewerPayInfoRepository;
}
[NonDynamicMethod]
public async Task<IResponseOutput> AddOrUpdateRankPrice(RankPriceCommand addOrUpdateModel, Guid userId)

View File

@ -11,23 +11,14 @@ using Panda.DynamicWebApi.Attributes;
namespace IRaCIS.Application.Services
{
[ ApiExplorerSettings(GroupName = "Financial")]
public class ReviewerPayInfoService : BaseService, IReviewerPayInfoService
public class ReviewerPayInfoService(
IRepository<ReviewerPayInformation> _doctorPayInfoRepository,
IRepository<Doctor> _doctorRepository,
IRepository<RankPrice> _rankPriceRepository,
IRepository<Hospital> _hospitalRepository)
: BaseService, IReviewerPayInfoService
{
private readonly IRepository<ReviewerPayInformation> _doctorPayInfoRepository;
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<RankPrice> _rankPriceRepository;
private readonly IRepository<Hospital> _hospitalRepository;
public ReviewerPayInfoService(IRepository<Doctor> doctorRepository, IRepository<ReviewerPayInformation> doctorPayInfoRepository,
IRepository<RankPrice> rankPriceRepository, IRepository<Hospital> hospitalRepository, IMapper mapper)
{
_doctorPayInfoRepository = doctorPayInfoRepository;
_doctorRepository = doctorRepository;
_rankPriceRepository = rankPriceRepository;
_hospitalRepository = hospitalRepository;
}
[NonDynamicMethod]
public async Task<IResponseOutput> AddOrUpdateReviewerPayInfo(ReviewerPayInfoCommand addOrUpdateModel, Guid userId)
{

View File

@ -8,27 +8,15 @@ using Panda.DynamicWebApi.Attributes;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Financial")]
public class TrialPaymentPriceService : BaseService, ITrialPaymentPriceService
public class TrialPaymentPriceService(
IRepository<TrialPaymentPrice> _trialExtRepository,
IRepository<Enroll> _enrollRepository,
IRepository<Doctor> _doctorRepository,
IRepository<CRO> _croRepository,
IRepository<Trial> _trialRepository)
: BaseService, ITrialPaymentPriceService
{
private readonly IRepository<TrialPaymentPrice> _trialExtRepository;
private readonly IRepository<Enroll> _enrollRepository;
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<CRO> _croRepository;
private readonly IRepository<Trial> _trialRepository;
public TrialPaymentPriceService(IRepository<Trial> trialRepository, IRepository<TrialPaymentPrice> trialExtRepository,
IRepository<Enroll> enrollRepository,
IRepository<Doctor> doctorRepository,
IRepository<CRO> croCompanyRepository, IMapper mapper)
{
_trialExtRepository = trialExtRepository;
_croRepository = croCompanyRepository;
_enrollRepository = enrollRepository;
_doctorRepository = doctorRepository;
_trialRepository = trialRepository;
}
/// <summary>
/// 添加或更新项目支付价格信息

View File

@ -10,25 +10,16 @@ using Panda.DynamicWebApi.Attributes;
namespace IRaCIS.Application.Services
{
[ ApiExplorerSettings(GroupName = "Financial")]
public class TrialRevenuesPriceService : BaseService, ITrialRevenuesPriceService
[ApiExplorerSettings(GroupName = "Financial")]
public class TrialRevenuesPriceService(
IRepository<Trial> _trialRepository,
IRepository<TrialRevenuesPrice> _trialRevenuesPriceRepository,
IRepository<CRO> _croRepository,
IRepository<Dictionary> _dictionaryRepository,
IRepository<TrialRevenuesPriceVerification> _trialRevenuesPriceVerificationRepository)
: BaseService, ITrialRevenuesPriceService
{
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TrialRevenuesPrice> _trialRevenuesPriceRepository;
private readonly IRepository<CRO> _croRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IRepository<TrialRevenuesPriceVerification> _trialRevenuesPriceVerificationRepository;
public TrialRevenuesPriceService(IRepository<Trial> trialRepository, IRepository<TrialRevenuesPrice> trialCostRepository, IRepository<CRO> croCompanyRepository, IRepository<Dictionary> dictionaryRepository, IRepository<TrialRevenuesPriceVerification> trialRevenuesPriceVerificationRepository, IMapper mapper)
{
_trialRepository = trialRepository;
_trialRevenuesPriceRepository = trialCostRepository;
_croRepository = croCompanyRepository;
_dictionaryRepository = dictionaryRepository;
_trialRevenuesPriceVerificationRepository = trialRevenuesPriceVerificationRepository;
}
public async Task<IResponseOutput> AddOrUpdateTrialRevenuesPrice(TrialRevenuesPriceDTO model)
{
@ -52,7 +43,7 @@ namespace IRaCIS.Application.Services
{
var trialCost = _mapper.Map<TrialRevenuesPrice>(model);
await _trialRevenuesPriceRepository.AddAsync(trialCost);
var success = await _trialRevenuesPriceRepository.SaveChangesAsync();
var success = await _trialRevenuesPriceRepository.SaveChangesAsync();
return ResponseOutput.Result(success, trialCost.Id.ToString());
}
else//update
@ -81,15 +72,15 @@ namespace IRaCIS.Application.Services
});
//删除所有有价格的记录 为true 表示有价格或者不需要价格 缺价格的为false
await _trialRevenuesPriceVerificationRepository.BatchDeleteNoTrackingAsync(t => t.TrialId == model.TrialId &&
t.Timepoint&&
t.TimepointIn24H&&
t.TimepointIn48H &&
t.Adjudication &&
t.AdjudicationIn24H &&
t.AdjudicationIn48H &&
t.Global &&
t.Training &&t.RefresherTraining);
await _trialRevenuesPriceVerificationRepository.BatchDeleteNoTrackingAsync(t => t.TrialId == model.TrialId &&
t.Timepoint &&
t.TimepointIn24H &&
t.TimepointIn48H &&
t.Adjudication &&
t.AdjudicationIn24H &&
t.AdjudicationIn48H &&
t.Global &&
t.Training && t.RefresherTraining);
@ -110,9 +101,9 @@ namespace IRaCIS.Application.Services
[HttpPost]
public async Task<PageOutput<TrialRevenuesPriceDetialDTO>> GetTrialRevenuesPriceList(TrialRevenuesPriceQueryDTO inQuery)
{
var trialQueryable = from trial in _trialRepository.AsQueryable()
.Where(u => u.TrialCode.Contains(inQuery.KeyWord)|| u.Indication.Contains(inQuery.KeyWord))
.Where(u => u.TrialCode.Contains(inQuery.KeyWord) || u.Indication.Contains(inQuery.KeyWord))
.WhereIf(inQuery.CroId != null, o => o.CROId == inQuery.CroId)
join cro in _croRepository.AsQueryable() on trial.CROId equals cro.Id into CRO
from croInfo in CRO.DefaultIfEmpty()
@ -138,13 +129,13 @@ namespace IRaCIS.Application.Services
Downtime = trialCostItem == null ? 0 : trialCostItem.Downtime,
Global = trialCostItem == null ? 0 : trialCostItem.Global,
Training = trialCostItem == null ? 0 : trialCostItem.Training,
RefresherTraining= trialCostItem == null ? 0 : trialCostItem.RefresherTraining,
RefresherTraining = trialCostItem == null ? 0 : trialCostItem.RefresherTraining,
Expedited = trial.Expedited
};
return await trialQueryable.ToPagedListAsync(inQuery);
}

View File

@ -11,21 +11,14 @@ namespace IRaCIS.Core.Application.Services
/// Financial---项目收入价格验证
/// </summary>
[ ApiExplorerSettings(GroupName = "Financial")]
public class TrialRevenuesPriceVerificationService : BaseService, ITrialRevenuesPriceVerificationService
public class TrialRevenuesPriceVerificationService(
IRepository<TrialRevenuesPriceVerification> _trialRevenuesPriceVerificationRepository,
IRepository<Trial> _trialRepository,
IRepository<Doctor> _doctorRepository,
IRepository<Payment> _paymentRepository)
: BaseService, ITrialRevenuesPriceVerificationService
{
private readonly IRepository<TrialRevenuesPriceVerification> _trialRevenuesPriceVerificationRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<Payment> _paymentRepository;
public TrialRevenuesPriceVerificationService(IRepository<TrialRevenuesPriceVerification> trialRevenuesPriceVerificationRepository,
IRepository<Trial> trialRepository,IRepository<Doctor> doctorRepository,IRepository<Payment> paymentRepository)
{
_trialRevenuesPriceVerificationRepository = trialRevenuesPriceVerificationRepository;
_trialRepository = trialRepository;
_doctorRepository = doctorRepository;
_paymentRepository = paymentRepository;
}
[HttpPost]
public async Task<AnalysisVerifyResultDTO> GetAnalysisVerifyList(RevenusVerifyQueryDTO param)
{

View File

@ -11,16 +11,9 @@ using Panda.DynamicWebApi.Attributes;
namespace IRaCIS.Application.Services
{
[ ApiExplorerSettings(GroupName = "Financial")]
public class VolumeRewardService : BaseService, IVolumeRewardService
public class VolumeRewardService (IRepository<VolumeReward> _volumeRewardRepository) : BaseService, IVolumeRewardService
{
private readonly IRepository<VolumeReward> _volumeRewardRepository;
public VolumeRewardService(IRepository<VolumeReward> volumeRewardRepository,IMapper mapper)
{
_volumeRewardRepository = volumeRewardRepository;
}
/// <summary>
/// 批量添加或更新奖励费用单价
/// </summary>

View File

@ -1,175 +0,0 @@
using FellowOakDicom.Network;
using FellowOakDicom;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Extensions.Logging;
using IRaCIS.Core.Application.Contracts.Dicom;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
namespace IRaCIS.Core.Application.Service.ImageAndDoc
{
/// <summary>
/// 后台托管服务的方式运行
/// </summary>
//public class CStoreSCPHostedService : IHostedService
//{
// private readonly ILogger<CStoreSCPHostedService> _logger;
// private readonly IDicomServerFactory _dicomServerFactory;
// private IDicomServer? _server;
// public CStoreSCPHostedService(ILogger<CStoreSCPHostedService> logger, IDicomServerFactory dicomServerFactory)
// {
// _logger = logger ?? throw new ArgumentNullException(nameof(logger));
// _dicomServerFactory = dicomServerFactory ?? throw new ArgumentNullException(nameof(dicomServerFactory));
// }
// public async Task StartAsync(CancellationToken cancellationToken)
// {
// _logger.LogInformation("Starting DICOM server");
// _server = _dicomServerFactory.Create<CStoreSCPService>(104);
// _logger.LogInformation("DICOM server is running");
// }
// public Task StopAsync(CancellationToken cancellationToken)
// {
// if (_server != null)
// {
// _server.Stop();
// _server.Dispose();
// _server = null;
// }
// return Task.CompletedTask;
// }
//}
public class CStoreSCPService : DicomService, IDicomServiceProvider, IDicomCStoreProvider, IDicomCEchoProvider
{
private IServiceProvider _serviceProvider { get; set; }
private static readonly DicomTransferSyntax[] _acceptedTransferSyntaxes = new DicomTransferSyntax[]
{
DicomTransferSyntax.ExplicitVRLittleEndian,
DicomTransferSyntax.ExplicitVRBigEndian,
DicomTransferSyntax.ImplicitVRLittleEndian
};
private static readonly DicomTransferSyntax[] _acceptedImageTransferSyntaxes = new DicomTransferSyntax[]
{
// Lossless
DicomTransferSyntax.JPEGLSLossless,
DicomTransferSyntax.JPEG2000Lossless,
DicomTransferSyntax.JPEGProcess14SV1,
DicomTransferSyntax.JPEGProcess14,
DicomTransferSyntax.RLELossless,
// Lossy
DicomTransferSyntax.JPEGLSNearLossless,
DicomTransferSyntax.JPEG2000Lossy,
DicomTransferSyntax.JPEGProcess1,
DicomTransferSyntax.JPEGProcess2_4,
// Uncompressed
DicomTransferSyntax.ExplicitVRLittleEndian,
DicomTransferSyntax.ExplicitVRBigEndian,
DicomTransferSyntax.ImplicitVRLittleEndian
};
public CStoreSCPService(INetworkStream stream, Encoding fallbackEncoding, ILogger log, DicomServiceDependencies dependencies)
: base(stream, fallbackEncoding, log, dependencies)
{
var tt = base.UserState;
//_dicomArchiveService = dicomArchiveService;
}
public Task OnReceiveAssociationRequestAsync(DicomAssociation association)
{
_serviceProvider =(IServiceProvider) this.UserState;
if (association.CalledAE != "STORESCP")
{
return SendAssociationRejectAsync(
DicomRejectResult.Permanent,
DicomRejectSource.ServiceUser,
DicomRejectReason.CalledAENotRecognized);
}
foreach (var pc in association.PresentationContexts)
{
if (pc.AbstractSyntax == DicomUID.Verification)
{
pc.AcceptTransferSyntaxes(_acceptedTransferSyntaxes);
}
else if (pc.AbstractSyntax.StorageCategory != DicomStorageCategory.None)
{
pc.AcceptTransferSyntaxes(_acceptedImageTransferSyntaxes);
}
}
return SendAssociationAcceptAsync(association);
}
public Task OnReceiveAssociationReleaseRequestAsync()
{
return SendAssociationReleaseResponseAsync();
}
public void OnReceiveAbort(DicomAbortSource source, DicomAbortReason reason)
{
/* nothing to do here */
}
public void OnConnectionClosed(Exception exception)
{
/* nothing to do here */
}
public async Task<DicomCStoreResponse> OnCStoreRequestAsync(DicomCStoreRequest request)
{
var tt= _serviceProvider.GetService<IDicomArchiveService>();
var studyUid = request.Dataset.GetSingleValue<string>(DicomTag.StudyInstanceUID).Trim();
var instUid = request.SOPInstanceUID.UID;
var path = Path.GetFullPath(@".\DICOM-Store");
path = Path.Combine(path, studyUid);
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
path = Path.Combine(path, instUid) + ".dcm";
await request.File.SaveAsync(path);
return new DicomCStoreResponse(request, DicomStatus.Success);
}
public Task OnCStoreRequestExceptionAsync(string tempFileName, Exception e)
{
// let library handle logging and error response
return Task.CompletedTask;
}
public Task<DicomCEchoResponse> OnCEchoRequestAsync(DicomCEchoRequest request)
{
return Task.FromResult(new DicomCEchoResponse(request, DicomStatus.Success));
}
}
}

View File

@ -17,34 +17,19 @@ using ZiggyCreatures.Caching.Fusion;
namespace IRaCIS.Core.Application.Services
{
public class DicomArchiveService : BaseService, IDicomArchiveService
public class DicomArchiveService(
IRepository<DicomStudy> _studyRepository,
IRepository<DicomSeries> _seriesRepository,
IRepository<DicomInstance> _instanceRepository,
IRepository<Dictionary> _dictionaryRepository,
IDistributedLockProvider _distributedLockProvider) : BaseService, IDicomArchiveService
{
private readonly IRepository<DicomStudy> _studyRepository;
private readonly IRepository<DicomSeries> _seriesRepository;
private readonly IRepository<DicomInstance> _instanceRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IDistributedLockProvider _distributedLockProvider;
private List<Guid> _instanceIdList = new List<Guid>();
public DicomArchiveService(IRepository<DicomStudy> studyRepository,
IRepository<DicomSeries> seriesRepository,
IRepository<DicomInstance> instanceRepository,
IRepository<Dictionary> dictionaryRepository,
IDistributedLockProvider distributedLockProvider)
{
_distributedLockProvider = distributedLockProvider;
_studyRepository = studyRepository;
_seriesRepository = seriesRepository;
_instanceRepository = instanceRepository;
_dictionaryRepository = dictionaryRepository;
}
public async Task<bool> DicomDBDataSaveChange()
{
@ -75,9 +60,9 @@ namespace IRaCIS.Core.Application.Services
var anonymizeList = await _fusionCache.GetOrSetAsync(CacheKeys.SystemAnonymization, _ => CacheHelper.GetSystemAnonymizationListAsync(_repository), TimeSpan.FromDays(7));
var fixedFiledList= anonymizeList.Where(t=>t.IsFixed).ToList();
var ircFiledList = anonymizeList.Where(t => t.IsFixed==false).ToList();
var fixedFiledList = anonymizeList.Where(t => t.IsFixed).ToList();
var ircFiledList = anonymizeList.Where(t => t.IsFixed == false).ToList();
@ -191,7 +176,7 @@ namespace IRaCIS.Core.Application.Services
}
private DicomStudy CreateDicomStudy(DicomDataset dataset, DicomTrialSiteSubjectInfo addtionalInfo, out bool isStudyNeedAdd)
private DicomStudy CreateDicomStudy(DicomDataset dataset, DicomTrialSiteSubjectInfo addtionalInfo, out bool isStudyNeedAdd)
{
string studyInstanceUid = dataset.GetString(DicomTag.StudyInstanceUID);
@ -516,7 +501,7 @@ namespace IRaCIS.Core.Application.Services
}
findStudy.Modalities = modality;
findStudy.ModalityForEdit= modalityForEdit;
findStudy.ModalityForEdit = modalityForEdit;
if (findStudy.PatientBirthDate.Length == 8)
{
@ -609,13 +594,13 @@ namespace IRaCIS.Core.Application.Services
if (isStudyNeedAdd)
{
await _studyRepository.AddAsync(findStudy);
await _studyRepository.AddAsync(findStudy);
}
if(isSeriesNeedAdd)
if (isSeriesNeedAdd)
{
await _seriesRepository.AddAsync(findSerice);
}
if(isInstanceNeedAdd)
if (isInstanceNeedAdd)
{
await _instanceRepository.AddAsync(findInstance);
}

View File

@ -31,26 +31,15 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
Task PackageAndAnonymizImage(Guid trialId, Guid subjectVisitId, bool isDicom, bool isAnonymize = true);
}
[ApiExplorerSettings(GroupName = "Trial")]
public class DownloadAndUploadService : BaseService, IDownloadAndUploadService
public class DownloadAndUploadService(
IRepository<SystemAnonymization> _systemAnonymizationRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IOSSService _oSSService,
IRepository<StudyMonitor> _studyMonitorRepository,
IDistributedLockProvider _distributedLockProvider) : BaseService, IDownloadAndUploadService
{
private readonly IRepository<SystemAnonymization> _systemAnonymizationRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IOSSService _oSSService;
private readonly IRepository<StudyMonitor> _studyMonitorRepository;
private readonly IDistributedLockProvider _distributedLockProvider;
public DownloadAndUploadService(IRepository<SystemAnonymization> systemAnonymizationRepository, IRepository<SubjectVisit> subjectVisitRepository, IOSSService oSSService,
IRepository<StudyMonitor> studyMonitorRepository, IDistributedLockProvider distributedLockProvider, IRepository<VisitTask> visitTaskRepository)
{
_systemAnonymizationRepository = systemAnonymizationRepository;
_subjectVisitRepository = subjectVisitRepository;
_oSSService = oSSService;
_studyMonitorRepository = studyMonitorRepository;
_distributedLockProvider = distributedLockProvider;
_visitTaskRepository = visitTaskRepository;
}
/// <summary>
/// 受试者随机阅片,任务进行随机编号

View File

@ -9,22 +9,13 @@ using IRaCIS.Core.Application.Auth;
namespace IRaCIS.Core.Application.Services
{
[AllowAnonymous, ApiExplorerSettings(GroupName = "Image")]
public class ImageShareService : BaseService, IImageShareService
public class ImageShareService(
IRepository<ImageShare> _imageShareRepository,
IRepository<DicomStudy> _studyRepository,
ITokenService _tokenService) : BaseService, IImageShareService
{
private readonly IRepository<ImageShare> _imageShareRepository;
private readonly IRepository<DicomStudy> _studyRepository;
private readonly IConfiguration _configuration;
private readonly ITokenService _tokenService;
public ImageShareService(IRepository<ImageShare> imageShareRepository, IRepository<DicomStudy> studyRepository, IConfiguration configuration, ITokenService tokenService)
{
_imageShareRepository = imageShareRepository;
_studyRepository = studyRepository;
_configuration = configuration;
_tokenService = tokenService;
}
[HttpPost]
public async Task<IResponseOutput> CreateImageShare(ImageShareCommand imageShareCommand)

View File

@ -8,19 +8,11 @@ namespace IRaCIS.Core.Application.Services
{
[ApiExplorerSettings(GroupName = "Image")]
[AllowAnonymous]
public class InstanceService : BaseService, IInstanceService
public class InstanceService(
IRepository<DicomInstance> _instanceRepository
) : BaseService, IInstanceService
{
private readonly IRepository<DicomInstance> _instanceRepository;
private readonly IRepository<DicomStudy> _studyRepository;
//private readonly IRepository<KeyInstance> _keyInstanceRepository;
public InstanceService(IRepository<DicomInstance> instanceRepository, IRepository<DicomStudy> studyRepository
//,IRepository<KeyInstance> keyInstanceRepository
)
{
_instanceRepository = instanceRepository;
_studyRepository = studyRepository;
//_keyInstanceRepository = keyInstanceRepository;
}
/// <summary> 指定资源Id获取Dicom序列所属的实例信息列表 </summary>
/// <param name="seriesId"> Dicom序列的Id </param>
@ -49,7 +41,7 @@ namespace IRaCIS.Core.Application.Services
// return _keyInstanceRepository.Where(s => s.TpCode == tpCode).Select(t => t.InstanceId).Distinct();
//}
//else
return _instanceRepository.Where(s => s.SeriesId == seriesId).OrderBy(s => s.InstanceNumber).Select(t => t.Id);
return _instanceRepository.Where(s => s.SeriesId == seriesId).OrderBy(s => s.InstanceNumber).Select(t => t.Id);
}
[AllowAnonymous]
@ -58,7 +50,7 @@ namespace IRaCIS.Core.Application.Services
{
var path = string.Empty;
path = (await _instanceRepository.Where(s => s.Id == instanceId).Select(t => t.Path).FirstOrDefaultAsync()).IfNullThrowException();
path = (await _instanceRepository.Where(s => s.Id == instanceId).Select(t => t.Path).FirstOrDefaultAsync()).IfNullThrowException();
var physicalPath = FileStoreHelper.GetPhysicalFilePath(_hostEnvironment, path);
@ -78,7 +70,7 @@ namespace IRaCIS.Core.Application.Services
public async Task<FileContentResult> Content(Guid instanceId)
{
var filePath = string.Empty;
var path = (await _instanceRepository.Where(s => s.Id == instanceId).Select(t=>t.Path).FirstOrDefaultAsync()).IfNullThrowException();
var path = (await _instanceRepository.Where(s => s.Id == instanceId).Select(t => t.Path).FirstOrDefaultAsync()).IfNullThrowException();
var physicalPath = FileStoreHelper.GetPhysicalFilePath(_hostEnvironment, path);
@ -93,6 +85,6 @@ namespace IRaCIS.Core.Application.Services
}
}
}
}

View File

@ -8,23 +8,12 @@ namespace IRaCIS.Core.Application.Services
{
[ApiExplorerSettings(GroupName = "Image")]
[AllowAnonymous]
public class SeriesService : BaseService
public class SeriesService(
IRepository<DicomSeries> _seriesRepository,
IRepository<DicomInstance> _instanceRepository
) : BaseService
{
//private readonly IRepository<KeyInstance> _keyInstanceRepository;
// private readonly IRepository<ImageLabel> _imageLabelRepository;
private readonly IRepository<DicomSeries> _seriesRepository;
private readonly IRepository<DicomInstance> _instanceRepository;
private readonly IRepository<DicomStudy> _studyRepository;
public SeriesService(IRepository<DicomInstance> instanceRepository, IRepository<DicomStudy> studyRepository, IRepository<DicomSeries> seriesRepository
/* IRepository<KeyInstance> keyInstanceRepository, IRepository<ImageLabel> imageLabelRepository*/)
{
_seriesRepository = seriesRepository;
_instanceRepository = instanceRepository;
_studyRepository = studyRepository;
//_keyInstanceRepository = keyInstanceRepository;
//_imageLabelRepository = imageLabelRepository;
}

View File

@ -22,34 +22,17 @@ using ZiggyCreatures.Caching.Fusion;
namespace IRaCIS.Core.Application.Service.ImageAndDoc
{
[ApiExplorerSettings(GroupName = "Image")]
public class StudyService : BaseService, IStudyService
public class StudyService(
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<DicomInstance> _dicomInstanceRepository,
IRepository<DicomSeries> _dicomSeriesRepository,
IRepository<DicomStudy> _dicomstudyRepository,
IRepository<Dictionary> _dictionaryRepository,
IRepository<StudyMonitor> _studyMonitorRepository,
IDistributedLockProvider _distributedLockProvider) : BaseService, IStudyService
{
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<DicomInstance> _dicomInstanceRepository;
private readonly IRepository<DicomSeries> _dicomSeriesRepository;
private readonly IRepository<DicomStudy> _dicomstudyRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IRepository<StudyMonitor> _studyMonitorRepository;
private readonly IDistributedLockProvider _distributedLockProvider;
public StudyService(IRepository<SubjectVisit> subjectVisitRepository,
IRepository<DicomInstance> dicomInstanceRepository,
IRepository<DicomSeries> dicomSeriesRepository, IRepository<DicomStudy> dicomstudyRepository, IRepository<Dictionary> dictionaryRepository, IRepository<StudyMonitor> studyMonitorRepository, IDistributedLockProvider distributedLockProvider)
{
_subjectVisitRepository = subjectVisitRepository;
_dicomInstanceRepository = dicomInstanceRepository;
_dicomSeriesRepository = dicomSeriesRepository;
_dicomstudyRepository = dicomstudyRepository;
_dictionaryRepository = dictionaryRepository;
_studyMonitorRepository = studyMonitorRepository;
_distributedLockProvider = distributedLockProvider;
}
private void SpecialArchiveStudyDeal(DicomStudy study)
{
#region 特殊逻辑

View File

@ -14,14 +14,9 @@ namespace IRaCIS.Core.Application.Service
/// SystemAnonymizationService
/// </summary>
[ApiExplorerSettings(GroupName = "Image")]
public class SystemAnonymizationService : BaseService, ISystemAnonymizationService
public class SystemAnonymizationService(IRepository<SystemAnonymization> systemAnonymizationRepository) : BaseService, ISystemAnonymizationService
{
private readonly IRepository<SystemAnonymization> systemAnonymizationRepository;
public SystemAnonymizationService( IRepository<SystemAnonymization> systemAnonymizationRepository)
{
this.systemAnonymizationRepository = systemAnonymizationRepository;
}
[HttpPost]
public async Task<PageOutput<SystemAnonymizationView>> GetSystemAnonymizationList(SystemAnonymizationQuery inQuery)

View File

@ -26,34 +26,17 @@ namespace IRaCIS.Core.Application.Service
/// FrontAuditConfigService
/// </summary>
[ApiExplorerSettings(GroupName = "Reviewer")]
public class FrontAuditConfigService : BaseService, IFrontAuditConfigService
{
public class FrontAuditConfigService(
IRepository<FrontAuditConfig> _frontAuditConfigRepository,
IRepository<QCChallengeDialog> _qCChallengeDialogRepository,
IRepository<DataInspection> _dataInspectionRepository,
IRepository<QCChallenge> _qCChallengeRepository,
IRepository<Dictionary> _dictionaryRepository,
IRepository<Trial> _trialRepository,
IRepository<CheckChallengeDialog> _checkChallengeDialogRepository) : BaseService, IFrontAuditConfigService
{
private readonly IRepository<FrontAuditConfig> _frontAuditConfigRepository;
private readonly IRepository<QCChallengeDialog> _qCChallengeDialogRepository;
private readonly IRepository<DataInspection> _dataInspectionRepository;
private readonly IRepository<QCChallenge> _qCChallengeRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<CheckChallengeDialog> _checkChallengeDialogRepository;
public FrontAuditConfigService(IRepository<FrontAuditConfig> frontAuditConfigRepository,
IRepository<QCChallengeDialog> qCChallengeDialogRepository,
IRepository<DataInspection> dataInspectionRepository,
IRepository<QCChallenge> qCChallengeRepository,
IRepository<Dictionary> dictionaryRepository,
IRepository<Trial> trialRepository,
IRepository<CheckChallengeDialog> checkChallengeDialogRepository
)
{
_frontAuditConfigRepository = frontAuditConfigRepository;
this._qCChallengeDialogRepository = qCChallengeDialogRepository;
this._dataInspectionRepository = dataInspectionRepository;
this._qCChallengeRepository = qCChallengeRepository;
this._dictionaryRepository = dictionaryRepository;
this._trialRepository = trialRepository;
this._checkChallengeDialogRepository = checkChallengeDialogRepository;
}
/// <summary>
/// 获取数据库所有表

View File

@ -11,18 +11,11 @@ using Panda.DynamicWebApi.Attributes;
namespace IRaCIS.Core.Application.Service.Inspection
{
[NonDynamicWebApi]
public class InspectionService : BaseService, IInspectionService
public class InspectionService(
IRepository<DataInspection> _dataInspectionRepository,
IRepository<FrontAuditConfig> _frontAuditConfigRepository) : BaseService, IInspectionService
{
private readonly IRepository<DataInspection> _dataInspectionRepository;
private readonly IRepository<FrontAuditConfig> _frontAuditConfigRepository;
public InspectionService(IRepository<DataInspection> dataInspectionRepository,
IRepository<FrontAuditConfig> frontAuditConfigRepository
)
{
this._dataInspectionRepository = dataInspectionRepository;
this._frontAuditConfigRepository = frontAuditConfigRepository;
}

View File

@ -6,16 +6,11 @@ using Microsoft.AspNetCore.Mvc;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Institution")]
public class CroService : BaseService, ICroService
public class CroService(
IRepository<CRO> _croRepository,
IRepository<Trial> _trialRepository) : BaseService, ICroService
{
private readonly IRepository<CRO> _croRepository;
private readonly IRepository<Trial> _trialRepository;
public CroService(IRepository<CRO> croRepository, IRepository<Trial> trialRepository)
{
_croRepository = croRepository;
this._trialRepository = trialRepository;
}
/// <summary> 分页获取CRO列表 </summary>
[HttpPost]

View File

@ -8,18 +8,12 @@ using Microsoft.Data.Sqlite;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Institution")]
public class HospitalService : BaseService, IHospitalService
public class HospitalService(
IRepository<Hospital> _hospitalRepository,
IRepository<Doctor> _doctorRepository,
IRepository<Site> _siteRepository) : BaseService, IHospitalService
{
private readonly IRepository<Hospital> _hospitalRepository;
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<Site> _siteRepository;
public HospitalService(IRepository<Hospital> hospitalRepository, IRepository<Doctor> doctorRepository, IRepository<Site> siteRepository)
{
_hospitalRepository = hospitalRepository;
_doctorRepository = doctorRepository;
_siteRepository = siteRepository;
}
/// <summary> 获取所有医院列表 </summary>
public async Task<IEnumerable<HospitalDTO>> GetHospitalList()

View File

@ -11,20 +11,13 @@ using Site = IRaCIS.Core.Domain.Models.Site;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Institution")]
public class SiteService : BaseService, ISiteService
public class SiteService(
IRepository<Site> _siteRepository,
IRepository<TrialSiteUser> _trialSiteUserRepository,
IDistributedLockProvider _distributedLockProvider,
IRepository<Hospital> _hospitalRepository) : BaseService, ISiteService
{
private readonly IRepository<Site> _siteRepository;
private readonly IRepository<TrialSiteUser> _trialSiteUserRepository;
private readonly IDistributedLockProvider _distributedLockProvider;
private readonly IRepository<Hospital> _hospitalRepository;
public SiteService(IRepository<Site> siteRepository, IRepository<TrialSiteUser> trialSiteUserRepository, IDistributedLockProvider distributedLockProvider, IRepository<Hospital> hospitalRepository)
{
_siteRepository = siteRepository;
_trialSiteUserRepository = trialSiteUserRepository;
_distributedLockProvider = distributedLockProvider;
_hospitalRepository = hospitalRepository;
}
/// <summary> 分页获取研究中心列表 </summary>
[HttpPost]

View File

@ -7,16 +7,11 @@ using IRaCIS.Core.Domain.Models;
namespace IRaCIS.Application.Services
{
[ ApiExplorerSettings(GroupName = "Institution")]
public class SponsorService : BaseService, ISponsorService
public class SponsorService(
IRepository<Sponsor> _sponsorRepository,
IRepository<Trial> _trialRepository) : BaseService, ISponsorService
{
private readonly IRepository<Sponsor> _sponsorRepository;
private readonly IRepository<Trial> _trialRepository;
public SponsorService(IRepository<Sponsor> sponsorRepository, IRepository<Trial> trialRepository)
{
_sponsorRepository = sponsorRepository;
this._trialRepository = trialRepository;
}
/// <summary> 分页获取申办方列表 </summary>
[HttpPost]

View File

@ -6,16 +6,11 @@ using Microsoft.AspNetCore.Mvc;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Management")]
public class MenuService : BaseService, IMenuService
public class MenuService(
IRepository<Menu> menuRepository,
IRepository<UserTypeMenu> _userTypeMenuRepository) : BaseService, IMenuService
{
private readonly IRepository<Menu> menuRepository;
private readonly IRepository<UserTypeMenu> _userTypeMenuRepository;
public MenuService(IRepository<Menu> menuRepository, IRepository<UserTypeMenu> userTypeMenuRepository)
{
this.menuRepository = menuRepository;
this._userTypeMenuRepository = userTypeMenuRepository;
}
/// <summary>
/// 添加菜单 New

View File

@ -14,15 +14,10 @@ namespace IRaCIS.Core.Application.Service
/// SystemNoticeService
/// </summary>
[ApiExplorerSettings(GroupName = "Management")]
public class SystemNoticeService : BaseService, ISystemNoticeService
public class SystemNoticeService (IRepository<SystemNotice> _systemNoticeRepository) : BaseService, ISystemNoticeService
{
private readonly IRepository<SystemNotice> _systemNoticeRepository;
public SystemNoticeService(IRepository<SystemNotice> systemNoticeRepository)
{
_systemNoticeRepository = systemNoticeRepository;
}
[HttpPost]
public async Task<PageOutput<SystemNoticeView>> GetSystemNoticeList(SystemNoticeQuery inQuery)

View File

@ -19,15 +19,10 @@ namespace IRaCIS.Core.Application.Service
/// UserFeedBackService
/// </summary>
[ApiExplorerSettings(GroupName = "Management")]
public class UserFeedBackService : BaseService, IUserFeedBackService
public class UserFeedBackService (IRepository<UserFeedBack> _userFeedBackRepository) : BaseService, IUserFeedBackService
{
private readonly IRepository<UserFeedBack> _userFeedBackRepository;
public UserFeedBackService(IRepository<UserFeedBack> userFeedBackRepository)
{
_userFeedBackRepository = userFeedBackRepository;
}
[HttpPost]
public async Task<PageOutput<UserFeedBackView>> GetUserFeedBackList(UserFeedBackQuery inQuery)

View File

@ -23,56 +23,20 @@ using IP2Region.Net.Abstractions;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Management")]
public class UserService : BaseService, IUserService
public class UserService(
IRepository<User> _userRepository,
IMailVerificationService _mailVerificationService,
IRepository<VerificationCode> _verificationCodeRepository,
IRepository<TrialUser> _userTrialRepository,
IRepository<UserLog> _userLogRepository,
IRepository<UserPassWordLog> _userPassWordLogRepository,
IDistributedLockProvider _distributedLockProvider,
IEasyCachingProvider _cache,
IOptionsMonitor<ServiceVerifyConfigOption> _verifyConfig,
SystemEmailSendConfig _systemEmailConfig,
ISearcher _searcher) : BaseService, IUserService
{
private readonly IRepository<User> _userRepository;
private readonly IMailVerificationService _mailVerificationService;
private readonly IRepository<VerificationCode> _verificationCodeRepository;
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<TrialUser> _userTrialRepository;
private readonly IRepository<UserLog> _userLogRepository;
private readonly IRepository<UserPassWordLog> _userPassWordLogRepository;
private readonly IDistributedLockProvider _distributedLockProvider;
private readonly IEasyCachingProvider _cache;
private readonly IReadingImageTaskService _readingImageTaskService;
private readonly IOptionsMonitor<ServiceVerifyConfigOption> _verifyConfig;
private readonly SystemEmailSendConfig _systemEmailConfig;
public ISearcher _searcher;
public UserService(IRepository<User> userRepository,
IMailVerificationService mailVerificationService,
IRepository<VerificationCode> verificationCodeRepository,
IRepository<Doctor> doctorRepository,
IEasyCachingProvider cache,
ISearcher searcher,
IReadingImageTaskService readingImageTaskService,
IRepository<TrialUser> userTrialRepository,
IOptionsMonitor<ServiceVerifyConfigOption> verifyConfig,
IOptionsMonitor<SystemEmailSendConfig> systemEmailConfig,
IRepository<UserLog> userLogRepository,
IRepository<UserPassWordLog> userPassWordLogRepository
,
IDistributedLockProvider distributedLockProvider)
{
_userLogRepository = userLogRepository;
this._userPassWordLogRepository = userPassWordLogRepository;
_verifyConfig = verifyConfig;
_cache = cache;
this._searcher = searcher;
this._readingImageTaskService = readingImageTaskService;
_userRepository = userRepository;
_mailVerificationService = mailVerificationService;
_verificationCodeRepository = verificationCodeRepository;
_doctorRepository = doctorRepository;
_userTrialRepository = userTrialRepository;
_userLogRepository = userLogRepository;
_distributedLockProvider = distributedLockProvider;
_systemEmailConfig = systemEmailConfig.CurrentValue;
}
private async Task VerifyUserNameAsync(Guid? userId, string userName)

View File

@ -14,15 +14,9 @@ namespace IRaCIS.Core.Application.Contracts
/// UserTypeRoleService
/// </summary>
[ApiExplorerSettings(GroupName = "Management")]
public class UserTypeRoleService : BaseService, IUserTypeService
public class UserTypeRoleService(IRepository<UserType> _userTypeRepository) : BaseService, IUserTypeService
{
private readonly IRepository<UserType> _userTypeRepository;
public UserTypeRoleService(IRepository<UserType> userTypeRepository)
{
_userTypeRepository = userTypeRepository;
}
[HttpPost]
public async Task<List<UserTypeRoleView>> GetUserTypeRoleList(UserTypeQuery userTypeQuery)
{

View File

@ -12,32 +12,15 @@ namespace IRaCIS.Core.Application.Contracts
///受试者临床信息
/// </summary>
[ApiExplorerSettings(GroupName = "Image")]
public class ClinicalDataService : BaseService, IClinicalDataService
public class ClinicalDataService(
IRepository<PreviousOther> _previousOtherRepository,
IRepository<PreviousHistory> _previousHistoryRepository,
IRepository<PreviousSurgery> _previousSurgeryRepository,
IRepository<PreviousPDF> _previousPdfRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
QCCommon _qCCommon) : BaseService, IClinicalDataService
{
public IRepository<PreviousOther> _previousOtherRepository { get; }
private readonly IRepository<PreviousHistory> _previousHistoryRepository;
private readonly IRepository<PreviousSurgery> _previousSurgeryRepository;
private readonly IRepository<PreviousPDF> _previousPdfRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly QCCommon _qCCommon;
public ClinicalDataService(IRepository<PreviousHistory> previousHistoryRepository,
IRepository<PreviousOther> previousOtherRepository,
IRepository<PreviousSurgery> previousSurgeryRepository,
IRepository<PreviousPDF> previousPDFRepository,
IRepository<SubjectVisit> subjectVisitRepository,
QCCommon qCCommon
)
{
_qCCommon = qCCommon;
_previousOtherRepository = previousOtherRepository;
_previousHistoryRepository = previousHistoryRepository;
_previousSurgeryRepository = previousSurgeryRepository;
_previousPdfRepository = previousPDFRepository;
_subjectVisitRepository = subjectVisitRepository;
}
/// <summary>

View File

@ -16,24 +16,13 @@ namespace IRaCIS.Core.Application.Contracts
/// NoneDicomStudyService
/// </summary>
[ApiExplorerSettings(GroupName = "Image")]
public class NoneDicomStudyService : BaseService, INoneDicomStudyService
public class NoneDicomStudyService(
IRepository<NoneDicomStudy> _noneDicomStudyRepository,
IRepository<NoneDicomStudyFile> _noneDicomStudyFileRepository,
IDistributedLockProvider _distributedLockProvider,
QCCommon _qCCommon) : BaseService, INoneDicomStudyService
{
private readonly IRepository<NoneDicomStudy> _noneDicomStudyRepository;
private readonly IRepository<NoneDicomStudyFile> _noneDicomStudyFileRepository;
private readonly IDistributedLockProvider _distributedLockProvider;
private readonly QCCommon _qCCommon;
public NoneDicomStudyService(IRepository<NoneDicomStudy> noneDicomStudyRepository,
QCCommon qCCommon,
IRepository<NoneDicomStudyFile> noneDicomStudyFileRepository, IDistributedLockProvider distributedLockProvider)
{
_qCCommon = qCCommon;
_noneDicomStudyRepository = noneDicomStudyRepository;
_noneDicomStudyFileRepository = noneDicomStudyFileRepository;
_distributedLockProvider = distributedLockProvider;
}
[HttpGet]

View File

@ -13,38 +13,16 @@ using IRaCIS.Core.Infrastructure;
namespace IRaCIS.Core.Application.Image.QA
{
[ApiExplorerSettings(GroupName = "Image")]
public class QCListService : BaseService, IQCListService
public class QCListService(
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<Trial> _trialRepository,
IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository,
IRepository<ClinicalDataTrialSet> _clinicalDataTrialSet,
IRepository<TrialQCQuestionAnswer> _trialQCQuestionAnswerRepository,
IRepository<TrialQCQuestion> _trialQCQuestionRepository,
IReadingImageTaskService _IReadingImageTaskService) : BaseService, IQCListService
{
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSet;
private readonly IRepository<TrialQCQuestionAnswer> _trialQCQuestionAnswerRepository;
private readonly IRepository<TrialQCQuestion> _trialQCQuestionRepository;
private readonly IRepository<InspectionFile> _consistencyCheckFileRepository;
private IReadingImageTaskService _IReadingImageTaskService;
public QCListService(
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<Trial> trialRepository,
IRepository<ClinicalDataTrialSet> clinicalDataTrialSetRepository,
IRepository<ClinicalDataTrialSet> clinicalDataTrialSet,
IRepository<TrialQCQuestionAnswer> trialQCQuestionAnswerRepository,
IRepository<TrialQCQuestion> trialQCQuestionRepository,
IReadingImageTaskService IReadingImageTaskService,
IRepository<InspectionFile> consistencyCheckFileRepository
)
{
this._IReadingImageTaskService = IReadingImageTaskService;
_subjectVisitRepository = subjectVisitRepository;
this._trialQCQuestionAnswerRepository = trialQCQuestionAnswerRepository;
this._trialQCQuestionRepository = trialQCQuestionRepository;
this._consistencyCheckFileRepository = consistencyCheckFileRepository;
_trialRepository = trialRepository;
this._clinicalDataTrialSetRepository = clinicalDataTrialSetRepository;
this._clinicalDataTrialSet = clinicalDataTrialSet;
}

View File

@ -20,55 +20,22 @@ using DocumentFormat.OpenXml.Office2010.Excel;
namespace IRaCIS.Core.Application.Image.QA
{
[ApiExplorerSettings(GroupName = "Image")]
public class QCOperationService : BaseService, IQCOperationService
public class QCOperationService(
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<QCChallenge> _qcChallengeRepository,
IRepository<DicomStudy> _dicomStudyRepository,
IRepository<DicomSeries> _dicomSeriesrepository,
IRepository<Subject> _subjectRepository,
IRepository<ReadingClinicalData> _readingClinicalDataRepository,
IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository,
IRepository<QCChallengeDialog> _qCChallengeDialogrepository,
IRepository<CheckChallengeDialog> _checkChallengeDialogrepository,
IRepository<Trial> _trialRepository,
IRepository<VisitTask> _visitTaskRepository,
IDistributedLockProvider _distributedLockProvider, IReadingClinicalDataService _readingClinicalDataService) : BaseService, IQCOperationService
{
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<QCChallenge> _qcChallengeRepository;
private readonly IRepository<DicomStudy> _dicomStudyRepository;
private readonly IRepository<DicomSeries> _dicomSeriesrepository;
private readonly IReadingClinicalDataService _readingClinicalDataService;
private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<ReadingClinicalData> _readingClinicalDataRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<QCChallengeDialog> _qCChallengeDialogrepository;
private readonly IRepository<CheckChallengeDialog> _checkChallengeDialogrepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IVisitTaskHelpeService _IVisitTaskHelpeService;
private readonly IDistributedLockProvider _distributedLockProvider;
public QCOperationService(IRepository<SubjectVisit> subjectVisitRepository,
IRepository<QCChallenge> qcChallengeRepository,
IRepository<Trial> trialRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<DicomStudy> dicomStudyRepository,
IRepository<DicomSeries> dicomSeriesrepository,
IReadingClinicalDataService readingClinicalDataService,
IRepository<Subject> subjectRepository,
IRepository<ReadingClinicalData> readingClinicalDataRepository,
IRepository<ClinicalDataTrialSet> clinicalDataTrialSetRepository,
IRepository<QCChallengeDialog> qCChallengeDialogrepository,
IRepository<CheckChallengeDialog> checkChallengeDialogrepository,
IVisitTaskHelpeService visitTaskHelpeService,
IDistributedLockProvider distributedLockProvider
)
{
_subjectVisitRepository = subjectVisitRepository;
_qcChallengeRepository = qcChallengeRepository;
_dicomStudyRepository = dicomStudyRepository;
this._dicomSeriesrepository = dicomSeriesrepository;
this._readingClinicalDataService = readingClinicalDataService;
this._subjectRepository = subjectRepository;
this._readingClinicalDataRepository = readingClinicalDataRepository;
this._clinicalDataTrialSetRepository = clinicalDataTrialSetRepository;
this._qCChallengeDialogrepository = qCChallengeDialogrepository;
this._checkChallengeDialogrepository = checkChallengeDialogrepository;
_trialRepository = trialRepository;
this._visitTaskRepository = visitTaskRepository;
_IVisitTaskHelpeService = visitTaskHelpeService;
_distributedLockProvider = distributedLockProvider;
}
#region QC质疑 以及回复 关闭
@ -1264,7 +1231,7 @@ namespace IRaCIS.Core.Application.Image.QA
if (await _dicomStudyRepository.AnyAsync(x => x.SubjectVisitId == item && modalitieTypess.Contains(x.Modalities)))
{
var visit = await _subjectVisitRepository.Where(x => x.Id == item).FirstNotNullAsync();
var clinicalData = await this._readingClinicalDataService.GetStudyClinicalData(new Service.Reading.Dto.GetStudyClinicalDataInDto()
var clinicalData = await _readingClinicalDataService.GetStudyClinicalData(new Service.Reading.Dto.GetStudyClinicalDataInDto()
{
SubjectVisitId = item,
});
@ -1932,7 +1899,7 @@ namespace IRaCIS.Core.Application.Image.QA
if (await _dicomStudyRepository.AnyAsync(x => x.SubjectVisitId == item && modalitieTypess.Contains(x.Modalities)))
{
var visit = await _subjectVisitRepository.Where(x => x.Id == item).FirstNotNullAsync();
var clinicalData = await this._readingClinicalDataService.GetStudyClinicalData(new Service.Reading.Dto.GetStudyClinicalDataInDto()
var clinicalData = await _readingClinicalDataService.GetStudyClinicalData(new Service.Reading.Dto.GetStudyClinicalDataInDto()
{
SubjectVisitId = item,
});

View File

@ -16,19 +16,11 @@ namespace IRaCIS.Core.Application.Contracts
/// 系统QC 问题管理
/// </summary>
[ApiExplorerSettings(GroupName = "Image")]
public class QCQuestionConfigureService : BaseService, IQCQuestionService
public class QCQuestionConfigureService(
IRepository<QCQuestion> _qcQuestionRepository,
IRepository<TrialQCQuestion> _trialQCQuestionRepository) : BaseService, IQCQuestionService
{
private readonly IRepository<QCQuestion> _qcQuestionRepository;
private readonly IRepository<TrialQCQuestion> _trialQCQuestionRepository;
public QCQuestionConfigureService(IRepository<QCQuestion> qcQuestionRepository,
IRepository<TrialQCQuestion> trialQCQuestionRepository
)
{
_qcQuestionRepository = qcQuestionRepository;
this._trialQCQuestionRepository = trialQCQuestionRepository;
}
/// <summary>

View File

@ -19,19 +19,11 @@ namespace IRaCIS.Core.Application.Contracts
/// 项目QC 问题 管理
/// </summary>
[ApiExplorerSettings(GroupName = "Image")]
public class TrialQCQuestionConfigureService : BaseService, ITrialQCQuestionConfigureService
public class TrialQCQuestionConfigureService(
IRepository<TrialQCQuestion> _trialQcQuestionRepository,
IRepository<QCQuestion> _qCQuestionRepository) : BaseService, ITrialQCQuestionConfigureService
{
private readonly IRepository<TrialQCQuestion> _trialQcQuestionRepository;
private readonly IRepository<QCQuestion> _qCQuestionRepository;
public TrialQCQuestionConfigureService(
IRepository<TrialQCQuestion> trialQcQuestionRepository,
IRepository<QCQuestion> qCQuestionRepository
)
{
_trialQcQuestionRepository = trialQcQuestionRepository;
this._qCQuestionRepository = qCQuestionRepository;
}
/// <summary>
/// 清空Qc问题

View File

@ -27,44 +27,21 @@ namespace IRaCIS.Core.Application.Service
/// SubjectCriteriaEvaluationService
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class SubjectCriteriaEvaluationService : BaseService, ISubjectCriteriaEvaluationService
public class SubjectCriteriaEvaluationService(
IRepository<SubjectCriteriaEvaluation> _subjectCriteriaEvaluationRepository,
IRepository<Subject> _subjectRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<SubjectCriteriaEvaluationVisitFilter> _subjectCriteriaEvaluationVisitFilterRepository,
IRepository<SubjectCriteriaEvaluationVisitStudyFilter> _subjectCriteriaEvaluationVisitStudyFilterRepository,
IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository,
IRepository<ReadingQuestionTrial> _trialReadingQuestionRepository,
IRepository<VisitTask> _visitTaskRepository,
IVisitTaskHelpeService _IVisitTaskHelpeService,
IRepository<TaskMedicalReview> _taskMedicalReviewRepository,
IRepository<VisitTaskReReading> _visitTaskReReadingRepository) : BaseService, ISubjectCriteriaEvaluationService
{
private readonly IRepository<SubjectCriteriaEvaluation> _subjectCriteriaEvaluationRepository;
private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<SubjectCriteriaEvaluationVisitFilter> _subjectCriteriaEvaluationVisitFilterRepository;
private readonly IRepository<SubjectCriteriaEvaluationVisitStudyFilter> _subjectCriteriaEvaluationVisitStudyFilterRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository;
private readonly IRepository<ReadingQuestionTrial> _trialReadingQuestionRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IVisitTaskHelpeService _IVisitTaskHelpeService;
private readonly IRepository<TaskMedicalReview> _taskMedicalReviewRepository;
private readonly IRepository<VisitTaskReReading> _visitTaskReReadingRepository;
public SubjectCriteriaEvaluationService(IRepository<SubjectCriteriaEvaluation> subjectCriteriaEvaluationRepository, IRepository<Subject> subjectRepository,
IRepository<SubjectCriteriaEvaluationVisitFilter> subjectCriteriaEvaluationVisitFilterRepository, IRepository<SubjectVisit> subjectVisitRepository,
IRepository<SubjectCriteriaEvaluationVisitStudyFilter> subjectCriteriaEvaluationVisitStudyFilterRepository,
IRepository<ReadingQuestionCriterionTrial> trialReadingCriterionRepository, IVisitTaskHelpeService IVisitTaskHelpeService, IRepository<ReadingQuestionTrial> trialReadingQuestionRepository, IRepository<VisitTask> visitTaskRepository, IRepository<TaskMedicalReview> taskMedicalReviewRepository, IRepository<VisitTaskReReading> visitTaskReReadingRepository)
{
_subjectCriteriaEvaluationRepository = subjectCriteriaEvaluationRepository;
_subjectRepository = subjectRepository;
_subjectCriteriaEvaluationVisitFilterRepository = subjectCriteriaEvaluationVisitFilterRepository;
_subjectVisitRepository = subjectVisitRepository;
_subjectCriteriaEvaluationVisitStudyFilterRepository = subjectCriteriaEvaluationVisitStudyFilterRepository;
_trialReadingCriterionRepository = trialReadingCriterionRepository;
_IVisitTaskHelpeService = IVisitTaskHelpeService;
_trialReadingQuestionRepository = trialReadingQuestionRepository;
_visitTaskRepository = visitTaskRepository;
_taskMedicalReviewRepository = taskMedicalReviewRepository;
_visitTaskReReadingRepository = visitTaskReReadingRepository;
}
/// <summary>

View File

@ -23,77 +23,27 @@ namespace IRaCIS.Core.Application.Service
/// 临床答案
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public class ClinicalAnswerService : BaseService, IClinicalAnswerService
{
private readonly IRepository<TrialClinicalQuestion> _trialClinicalQuestionRepository;
private readonly IRepository<SystemClinicalQuestion> _systemClinicalQuestionRepository;
private readonly IRepository<SystemClinicalTableQuestion> _systemClinicalTableQuestionRepository;
private readonly IRepository<TrialClinicalTableQuestion> _trialClinicalTableQuestionRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<ClinicalForm> _clinicalFormRepository;
private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<ReadModuleCriterionFrom> _readModuleCriterionFromRepository;
private readonly IRepository<ReadModule> _readModuleRepository;
private readonly IRepository<DicomStudy> _dicomStudyRepository;
private readonly IRepository<ClinicalQuestionAnswer> _clinicalQuestionAnswerRepository;
private readonly IRepository<ClinicalTableAnswer> _clinicalTableAnswerRepository;
private readonly IRepository<ClinicalAnswerRowInfo> _clinicalAnswerRowInfoRepository;
private readonly IRepository<ReadingClinicalData> _readingClinicalDataRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IClinicalQuestionService _iClinicalQuestionService;
private readonly IReadingClinicalDataService _iReadingClinicalDataService;
public ClinicalAnswerService(IRepository<TrialClinicalQuestion> trialClinicalQuestionRepository,
IRepository<SystemClinicalTableQuestion> systemClinicalTableQuestionRepository,
IRepository<TrialClinicalTableQuestion> trialClinicalTableQuestionRepository,
IRepository<ReadingClinicalData> readingClinicalDataRepository,
IRepository<ClinicalForm> clinicalFormRepository,
IRepository<Subject> subjectRepository,
IReadingClinicalDataService iReadingClinicalDataService,
IRepository<ReadModuleCriterionFrom> readModuleCriterionFromRepository,
IRepository<ReadModule> readModuleRepository,
IRepository<DicomStudy> dicomStudyRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<ClinicalTableAnswer> clinicalTableAnswerRepository,
IRepository<ClinicalQuestionAnswer> clinicalQuestionAnswerRepository,
IClinicalQuestionService iClinicalQuestionService,
IRepository<ClinicalAnswerRowInfo> clinicalAnswerRowInfoRepository,
IRepository<ClinicalDataTrialSet> clinicalDataTrialSetRepository,
IRepository<SystemClinicalQuestion> systemClinicalQuestionRepository
)
{
_subjectVisitRepository = subjectVisitRepository;
_readingClinicalDataRepository = readingClinicalDataRepository;
_clinicalAnswerRowInfoRepository = clinicalAnswerRowInfoRepository;
_clinicalQuestionAnswerRepository = clinicalQuestionAnswerRepository;
_systemClinicalTableQuestionRepository = systemClinicalTableQuestionRepository;
_trialClinicalQuestionRepository = trialClinicalQuestionRepository;
_trialClinicalTableQuestionRepository = trialClinicalTableQuestionRepository;
_systemClinicalQuestionRepository = systemClinicalQuestionRepository;
_clinicalDataTrialSetRepository = clinicalDataTrialSetRepository;
_iReadingClinicalDataService = iReadingClinicalDataService;
_clinicalFormRepository = clinicalFormRepository;
this._subjectRepository = subjectRepository;
this._readModuleCriterionFromRepository = readModuleCriterionFromRepository;
this._readModuleRepository = readModuleRepository;
this._dicomStudyRepository = dicomStudyRepository;
_clinicalTableAnswerRepository = clinicalTableAnswerRepository;
_iClinicalQuestionService = iClinicalQuestionService;
}
public class ClinicalAnswerService(
IRepository<TrialClinicalQuestion> _trialClinicalQuestionRepository,
IRepository<SystemClinicalQuestion> _systemClinicalQuestionRepository,
IRepository<SystemClinicalTableQuestion> _systemClinicalTableQuestionRepository,
IRepository<TrialClinicalTableQuestion> _trialClinicalTableQuestionRepository,
IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository,
IRepository<ClinicalForm> _clinicalFormRepository,
IRepository<Subject> _subjectRepository,
IRepository<ReadModuleCriterionFrom> _readModuleCriterionFromRepository,
IRepository<ReadModule> _readModuleRepository,
IRepository<DicomStudy> _dicomStudyRepository,
IRepository<ClinicalQuestionAnswer> _clinicalQuestionAnswerRepository,
IRepository<ClinicalTableAnswer> _clinicalTableAnswerRepository,
IRepository<ClinicalAnswerRowInfo> _clinicalAnswerRowInfoRepository,
IRepository<ReadingClinicalData> _readingClinicalDataRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IClinicalQuestionService _iClinicalQuestionService,
IReadingClinicalDataService _iReadingClinicalDataService) : BaseService, IClinicalAnswerService
{
/// <summary>
/// CRC签名临床数据
/// </summary>

View File

@ -16,50 +16,20 @@ namespace IRaCIS.Application.Services
/// 临床数据配置
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public class ClinicalDataSetService : BaseService
public class ClinicalDataSetService(
IClinicalQuestionService _iClinicalQuestionService,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository,
IRepository<TrialClinicalDataSetCriterion> _trialClinicalDataSetCriterionRepository,
IRepository<ReadingQuestionCriterionTrial> _iReadingQuestionCriterionTrialRepository,
IRepository<ClinicalDataSystemSet> _clinicalDataSystemSetRepository,
IRepository<PreviousPDF> _previousPDFRepository,
IRepository<Dictionary> _dictionaryRepository,
IRepository<Trial> _trialRepository,
IRepository<TrialClinicalQuestion> _trialClinicalQuestionRepository,
IRepository<SystemClinicalQuestion> _systemClinicalQuestionRepository) : BaseService
{
public IClinicalQuestionService _iClinicalQuestionService;
public IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<TrialClinicalDataSetCriterion> _trialClinicalDataSetCriterionRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _iReadingQuestionCriterionTrialRepository;
private readonly IRepository<ClinicalDataSystemSet> _clinicalDataSystemSetRepository;
private readonly IRepository<PreviousPDF> _previousPDFRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TrialClinicalQuestion> _trialClinicalQuestionRepository;
private readonly IRepository<SystemClinicalQuestion> _systemClinicalQuestionRepository;
public ClinicalDataSetService(IRepository<SubjectVisit> subjectVisitRepository,
IClinicalQuestionService iClinicalQuestionService,
IRepository<ClinicalDataTrialSet> ClinicalDataTrialSetRepository,
IRepository<TrialClinicalDataSetCriterion> trialClinicalDataSetCriterionRepository,
IRepository<ReadingQuestionCriterionTrial> iReadingQuestionCriterionTrialRepository,
IRepository<ClinicalDataSystemSet> ClinicalDataSystemSetRepository,
IRepository<PreviousPDF> previousPDFRepository,
IRepository<Dictionary> dictionaryRepository,
IRepository<TrialClinicalQuestion> trialClinicalQuestionRepository,
IRepository<SystemClinicalQuestion> systemClinicalQuestionRepository,
IRepository<Trial> trialRepository
)
{
_iClinicalQuestionService = iClinicalQuestionService;
_subjectVisitRepository = subjectVisitRepository;
_trialClinicalQuestionRepository = trialClinicalQuestionRepository;
_systemClinicalQuestionRepository = systemClinicalQuestionRepository;
_clinicalDataTrialSetRepository = ClinicalDataTrialSetRepository;
this._trialClinicalDataSetCriterionRepository = trialClinicalDataSetCriterionRepository;
this._iReadingQuestionCriterionTrialRepository = iReadingQuestionCriterionTrialRepository;
_clinicalDataSystemSetRepository = ClinicalDataSystemSetRepository;
this._previousPDFRepository = previousPDFRepository;
this._dictionaryRepository = dictionaryRepository;
this._trialRepository = trialRepository;
}
/// <summary>

View File

@ -19,30 +19,14 @@ namespace IRaCIS.Core.Application.Service
/// 临床数据问题
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public class ClinicalQuestionService : BaseService, IClinicalQuestionService
public class ClinicalQuestionService(
IRepository<TrialClinicalQuestion> _trialClinicalQuestionRepository,
IRepository<SystemClinicalQuestion> _systemClinicalQuestionRepository,
IRepository<SystemClinicalTableQuestion> _systemClinicalTableQuestionRepository,
IRepository<TrialClinicalTableQuestion> _trialClinicalTableQuestionRepository) : BaseService, IClinicalQuestionService
{
private readonly IRepository<TrialClinicalQuestion> _trialClinicalQuestionRepository;
private readonly IRepository<SystemClinicalQuestion> _systemClinicalQuestionRepository;
private readonly IRepository<SystemClinicalTableQuestion> _systemClinicalTableQuestionRepository;
private readonly IRepository<TrialClinicalTableQuestion> _trialClinicalTableQuestionRepository;
public ClinicalQuestionService(IRepository<TrialClinicalQuestion> trialClinicalQuestionRepository,
IRepository<SystemClinicalTableQuestion> systemClinicalTableQuestionRepository,
IRepository<TrialClinicalTableQuestion> trialClinicalTableQuestionRepository,
IRepository<SystemClinicalQuestion> systemClinicalQuestionRepository
)
{
_systemClinicalTableQuestionRepository = systemClinicalTableQuestionRepository;
_trialClinicalQuestionRepository = trialClinicalQuestionRepository;
_trialClinicalTableQuestionRepository = trialClinicalTableQuestionRepository;
_systemClinicalQuestionRepository = systemClinicalQuestionRepository;
}
/// <summary>
/// 获取问题计算关系
/// </summary>
@ -145,7 +129,7 @@ namespace IRaCIS.Core.Application.Service
result.ForEach(x =>
{
this.FindChildQuestion(x, questions, tableQuestions, new List<ClinicalFormQuestionAnswer>(), new List<ClinicalFormTableQuestionAnswer>());
FindChildQuestion(x, questions, tableQuestions, new List<ClinicalFormQuestionAnswer>(), new List<ClinicalFormTableQuestionAnswer>());
});
return (result, true);
@ -189,7 +173,7 @@ namespace IRaCIS.Core.Application.Service
result.ForEach(x =>
{
this.FindChildQuestion(x, questions, tableQuestions, new List<ClinicalFormQuestionAnswer>(), new List<ClinicalFormTableQuestionAnswer>());
FindChildQuestion(x, questions, tableQuestions, new List<ClinicalFormQuestionAnswer>(), new List<ClinicalFormTableQuestionAnswer>());
});
return (result, true);
@ -229,12 +213,12 @@ namespace IRaCIS.Core.Application.Service
item.RelationQuestions.ForEach(x =>
{
this.FindChildQuestion(x, questions, tableQuestions, answers, tableAnswers);
FindChildQuestion(x, questions, tableQuestions, answers, tableAnswers);
});
item.Childrens.ForEach(x =>
{
this.FindChildQuestion(x, questions, tableQuestions, answers, tableAnswers);
FindChildQuestion(x, questions, tableQuestions, answers, tableAnswers);
});
}
@ -311,7 +295,7 @@ namespace IRaCIS.Core.Application.Service
[HttpPost]
public async Task<List<TrialClinicalQuestionDto>> GetTrialClinicalGroupQuestionList(GetTrialGroupDto inDto)
{
return await this._trialClinicalQuestionRepository.Where(x => x.TrialClinicalId == inDto.TrialClinicalId && x.ClinicalQuestionType == "group")
return await _trialClinicalQuestionRepository.Where(x => x.TrialClinicalId == inDto.TrialClinicalId && x.ClinicalQuestionType == "group")
.ProjectTo<TrialClinicalQuestionDto>(_mapper.ConfigurationProvider).ToListAsync();
}
@ -327,7 +311,7 @@ namespace IRaCIS.Core.Application.Service
{
"select","radio"
};
return await this._trialClinicalQuestionRepository.Where(x => x.TrialClinicalId == inDto.TrialClinicalId && types.Contains(x.ClinicalQuestionType))
return await _trialClinicalQuestionRepository.Where(x => x.TrialClinicalId == inDto.TrialClinicalId && types.Contains(x.ClinicalQuestionType))
.ProjectTo<TrialClinicalQuestionDto>(_mapper.ConfigurationProvider).ToListAsync();
}
@ -408,7 +392,7 @@ namespace IRaCIS.Core.Application.Service
[HttpPost]
public async Task<List<SystemClinicalQuestionDto>> GetSystemClinicalGroupQuestionList(GetSystemGroupDto inDto)
{
return await this._systemClinicalQuestionRepository.Where(x => x.SystemClinicalId == inDto.SystemClinicalId && x.ClinicalQuestionType == "group")
return await _systemClinicalQuestionRepository.Where(x => x.SystemClinicalId == inDto.SystemClinicalId && x.ClinicalQuestionType == "group")
.ProjectTo<SystemClinicalQuestionDto>(_mapper.ConfigurationProvider).ToListAsync();
}
@ -425,7 +409,7 @@ namespace IRaCIS.Core.Application.Service
{
"select","radio"
};
return await this._systemClinicalQuestionRepository.Where(x => x.SystemClinicalId == inDto.SystemClinicalId && types.Contains(x.ClinicalQuestionType))
return await _systemClinicalQuestionRepository.Where(x => x.SystemClinicalId == inDto.SystemClinicalId && types.Contains(x.ClinicalQuestionType))
.ProjectTo<SystemClinicalQuestionDto>(_mapper.ConfigurationProvider).ToListAsync();
}
@ -443,7 +427,7 @@ namespace IRaCIS.Core.Application.Service
public async Task<PageOutput<SystemClinicalTableQuestionDto>> GetSystemClinicalTableQuestionList(SystemClinicalTableQuestionQuery inQuery)
{
var systemClinicalTableQuestionQueryable = this._systemClinicalTableQuestionRepository
var systemClinicalTableQuestionQueryable = _systemClinicalTableQuestionRepository
.Where(x => x.QuestionId == inQuery.QuestionId)
.ProjectTo<SystemClinicalTableQuestionDto>(_mapper.ConfigurationProvider);
@ -504,7 +488,7 @@ namespace IRaCIS.Core.Application.Service
{
"select","radio"
};
return await this._systemClinicalTableQuestionRepository.Where(x => x.QuestionId == inDto.QuestionId && types.Contains(x.ClinicalTableQuestionType))
return await _systemClinicalTableQuestionRepository.Where(x => x.QuestionId == inDto.QuestionId && types.Contains(x.ClinicalTableQuestionType))
.Where(x => x.Id != inDto.TableQuestionId)
.ProjectTo<SystemClinicalTableQuestionDto>(_mapper.ConfigurationProvider).ToListAsync();
}
@ -526,7 +510,7 @@ namespace IRaCIS.Core.Application.Service
{
"select","radio"
};
return await this._trialClinicalTableQuestionRepository.Where(x => x.QuestionId == inDto.QuestionId && types.Contains(x.ClinicalTableQuestionType))
return await _trialClinicalTableQuestionRepository.Where(x => x.QuestionId == inDto.QuestionId && types.Contains(x.ClinicalTableQuestionType))
.Where(x => x.Id != inDto.TableQuestionId)
.ProjectTo<TrialClinicalTableQuestionDto>(_mapper.ConfigurationProvider).ToListAsync();
}
@ -540,7 +524,7 @@ namespace IRaCIS.Core.Application.Service
public async Task<PageOutput<TrialClinicalTableQuestionDto>> GetTrialClinicalTableQuestionList(TrialClinicalTableQuestionQuery inQuery)
{
var trialClinicalTableQuestionQueryable = this._trialClinicalTableQuestionRepository
var trialClinicalTableQuestionQueryable = _trialClinicalTableQuestionRepository
.Where(x => x.QuestionId == inQuery.QuestionId)
.ProjectTo<TrialClinicalTableQuestionDto>(_mapper.ConfigurationProvider);

View File

@ -20,65 +20,26 @@ namespace IRaCIS.Application.Services
/// 阅片临床数据
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public class ReadingClinicalDataService : BaseService, IReadingClinicalDataService
public class ReadingClinicalDataService(
IRepository<ReadingClinicalData> _readingClinicalDataRepository,
IRepository<ReadingConsistentClinicalData> _readingConsistentClinicalDataRepository,
IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<PreviousPDF> _previousPDFRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<PreviousHistory> _previousHistoryRepository,
IRepository<ReadModuleCriterionFrom> _readModuleCriterionFromRepository,
IRepository<ClinicalForm> _clinicalFormRepository,
IRepository<PreviousOther> _previousOtherRepository,
IRepository<PreviousSurgery> _previousSurgeryRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IServiceProvider iServiceProvider,
IRepository<Subject> _subjectRepository,
IRepository<ReadModule> _readModuleRepository,
IRepository<ReadingClinicalDataPDF> _readingClinicalDataPDFRepository,
IRepository<ReadingConsistentClinicalDataPDF> _readingConsistentClinicalDataPDFRepository) : BaseService, IReadingClinicalDataService
{
private readonly IRepository<ReadingClinicalData> _readingClinicalDataRepository;
private readonly IRepository<ReadingConsistentClinicalData> _readingConsistentClinicalDataRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<PreviousPDF> _previousPDFRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<PreviousHistory> _previousHistoryRepository;
private readonly IRepository<ReadModuleCriterionFrom> _readModuleCriterionFromRepository;
private readonly IRepository<ClinicalForm> _clinicalFormRepository;
private readonly IRepository<PreviousOther> _previousOtherRepository;
private readonly IRepository<PreviousSurgery> _previousSurgeryRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IServiceProvider iServiceProvider;
private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<ReadModule> _readModuleRepository;
private readonly IRepository<ReadingClinicalDataPDF> _readingClinicalDataPDFRepository;
private readonly IRepository<ReadingConsistentClinicalDataPDF> _readingConsistentClinicalDataPDFRepository;
public ReadingClinicalDataService(IRepository<ReadingClinicalData> readingClinicalDataRepository,
IRepository<ReadingConsistentClinicalData> readingConsistentClinicalDataRepository,
IRepository<ClinicalDataTrialSet> clinicalDataTrialSetRepository,
IRepository<PreviousPDF> previousPDFRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<PreviousHistory> previousHistoryRepository,
IRepository<ReadModuleCriterionFrom> readModuleCriterionFromRepository,
IRepository<ClinicalForm> clinicalFormRepository,
IRepository<PreviousOther> previousOtherRepository,
IRepository<PreviousSurgery> previousSurgeryRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IServiceProvider IServiceProvider,
IRepository<Subject> subjectRepository,
IRepository<ReadModule> readModuleRepository,
IRepository<ReadingClinicalDataPDF> readingClinicalDataPDFRepository,
IRepository<ReadingConsistentClinicalDataPDF> readingConsistentClinicalDataPDFRepository,
IRepository<VisitTask> visitTaskRepository)
{
this._readingClinicalDataRepository = readingClinicalDataRepository;
this._readingConsistentClinicalDataRepository = readingConsistentClinicalDataRepository;
this._clinicalDataTrialSetRepository = clinicalDataTrialSetRepository;
this._previousPDFRepository = previousPDFRepository;
this._subjectVisitRepository = subjectVisitRepository;
this._previousHistoryRepository = previousHistoryRepository;
this._readModuleCriterionFromRepository = readModuleCriterionFromRepository;
this._clinicalFormRepository = clinicalFormRepository;
this._previousOtherRepository = previousOtherRepository;
this._previousSurgeryRepository = previousSurgeryRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this.iServiceProvider = IServiceProvider;
this._subjectRepository = subjectRepository;
this._readModuleRepository = readModuleRepository;
this._readingClinicalDataPDFRepository = readingClinicalDataPDFRepository;
this._readingConsistentClinicalDataPDFRepository = readingConsistentClinicalDataPDFRepository;
this._visitTaskRepository = visitTaskRepository;
}
#region 临床数据基本增删改

View File

@ -19,69 +19,24 @@ namespace IRaCIS.Core.Application.Service
/// 阅片医学审核
/// </summary>
[ ApiExplorerSettings(GroupName = "Reading")]
public class ReadingMedicalReviewService : BaseService, IReadingMedicalReviewService
public class ReadingMedicalReviewService(
IRepository<ReadingMedicineTrialQuestion> _readingMedicineTrialQuestionRepository,
IRepository<Trial> _trialRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository,
IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository,
IReadingImageTaskService _iReadingImageTaskService,
IVisitTaskService _visitTaskService,
IReadingClinicalDataService _readingClinicalDataService,
IRepository<TaskMedicalReview> _taskMedicalReviewRepository,
IRepository<ReadingMedicalReviewDialog> _readingMedicalReviewDialogRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrial,
IRepository<ReadingMedicineQuestionAnswer> _readingMedicineQuestionAnswerRepository,
ITrialEmailNoticeConfigService _trialEmailNoticeConfigService) : BaseService, IReadingMedicalReviewService
{
private readonly IRepository<ReadingMedicineTrialQuestion> _readingMedicineTrialQuestionRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
private readonly IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository;
private readonly IRepository<ReadingOncologyTaskInfo> _readingOncologyTaskInfoRepository;
private readonly IRepository<ReadingSystemCriterionDictionary> _readingCriterionDictionaryRepository;
private readonly IReadingImageTaskService _iReadingImageTaskService;
private readonly IRepository<User> _userTaskRepository;
private readonly IVisitTaskService _visitTaskService;
private readonly IReadingClinicalDataService _readingClinicalDataService;
private readonly IRepository<TaskMedicalReview> _taskMedicalReviewRepository;
private readonly IRepository<ReadingMedicalReviewDialog> _readingMedicalReviewDialogRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrial;
private readonly IRepository<ReadingMedicineQuestionAnswer> _readingMedicineQuestionAnswerRepository;
private readonly IRepository<ReadingMedicineSystemQuestion> _readingMedicineSystemQuestionRepository;
private readonly ITrialEmailNoticeConfigService _trialEmailNoticeConfigService;
public ReadingMedicalReviewService(
IRepository<ReadingMedicineTrialQuestion> readingMedicineTrialQuestionRepository,
IRepository<Trial> trialRepository,
IRepository<VisitTask> visitTaskRepository,
IReadingImageTaskService readingImageTaskService,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository,
IRepository<ReadingGlobalTaskInfo> readingGlobalTaskInfoRepository,
IRepository<ReadingOncologyTaskInfo> readingOncologyTaskInfoRepository,
IRepository<ReadingSystemCriterionDictionary> readingCriterionDictionaryRepository,
IRepository<User> userTaskRepository,
IVisitTaskService visitTaskService,
IReadingClinicalDataService readingClinicalDataService,
IRepository<TaskMedicalReview> taskMedicalReviewRepository,
IRepository<ReadingMedicalReviewDialog> readingMedicalReviewDialogRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrial,
IRepository<ReadingMedicineQuestionAnswer> readingMedicineQuestionAnswerRepository,
IRepository<ReadingMedicineSystemQuestion> readingMedicineSystemQuestionRepository,
ITrialEmailNoticeConfigService trialEmailNoticeConfigService
)
{
this._readingMedicineTrialQuestionRepository = readingMedicineTrialQuestionRepository;
this._trialRepository = trialRepository;
this._iReadingImageTaskService = readingImageTaskService;
this._visitTaskRepository = visitTaskRepository;
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
this._readingGlobalTaskInfoRepository = readingGlobalTaskInfoRepository;
this._readingOncologyTaskInfoRepository = readingOncologyTaskInfoRepository;
this._readingCriterionDictionaryRepository = readingCriterionDictionaryRepository;
this._userTaskRepository = userTaskRepository;
this._visitTaskService = visitTaskService;
this._readingClinicalDataService = readingClinicalDataService;
this._taskMedicalReviewRepository = taskMedicalReviewRepository;
this._readingMedicalReviewDialogRepository = readingMedicalReviewDialogRepository;
this._readingQuestionCriterionTrial = readingQuestionCriterionTrial;
this._readingMedicineQuestionAnswerRepository = readingMedicineQuestionAnswerRepository;
this._readingMedicineSystemQuestionRepository = readingMedicineSystemQuestionRepository;
_trialEmailNoticeConfigService = trialEmailNoticeConfigService;
}
/// <summary>
/// 获取医学审核任务信息
/// </summary>

View File

@ -15,26 +15,14 @@ namespace IRaCIS.Core.Application.Service
/// 医学审核问题
/// </summary>
[ ApiExplorerSettings(GroupName = "Reading")]
public class ReadingMedicineQuestionService: BaseService, IReadingMedicineQuestionService
{
public class ReadingMedicineQuestionService(
IRepository<ReadingMedicineTrialQuestion> _readingMedicineTrialQuestionRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<Trial> _trialRepository,
IRepository<ReadingMedicineSystemQuestion> _readingMedicineSystemQuestionRepository) : BaseService, IReadingMedicineQuestionService
{
private readonly IRepository<ReadingMedicineTrialQuestion> _readingMedicineTrialQuestionRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<ReadingMedicineSystemQuestion> _readingMedicineSystemQuestionRepository;
public ReadingMedicineQuestionService(
IRepository<ReadingMedicineTrialQuestion> readingMedicineTrialQuestionRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrial,
IRepository<Trial> trialRepository,
IRepository<ReadingMedicineSystemQuestion> readingMedicineSystemQuestionRepository
)
{
this._readingMedicineTrialQuestionRepository = readingMedicineTrialQuestionRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrial;
this._trialRepository = trialRepository;
this._readingMedicineSystemQuestionRepository = readingMedicineSystemQuestionRepository;
}

View File

@ -19,38 +19,18 @@ namespace IRaCIS.Core.Application.Service
/// 器官服务层
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public class OrganInfoService : BaseService, IOrganInfoService
public class OrganInfoService(
IRepository<OrganInfo> _organInfoRepository,
IRepository<Dictionary> _dictionaryRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<OrganTrialInfo> _organTrialInfoRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrial,
IRepository<CriterionNidusSystem> _criterionNidusRepository,
IRepository<CriterionNidusTrial> _criterionNidusTrialRepository,
IRepository<ReadingQuestionCriterionSystem> _readingQuestionCriterionSystemRepository) : BaseService, IOrganInfoService
{
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<OrganTrialInfo> _organTrialInfoRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrial;
private readonly IRepository<CriterionNidusSystem> _criterionNidusRepository;
private readonly IRepository<CriterionNidusTrial> _criterionNidusTrialRepository;
private readonly IRepository<ReadingQuestionCriterionSystem> _readingQuestionCriterionSystemRepository;
public OrganInfoService(
IRepository<OrganInfo> organInfoRepository,
IRepository<Dictionary> dictionaryRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<OrganTrialInfo> organTrialInfoRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrial,
IRepository<CriterionNidusTrial> criterionNidusTrialRepository,
IRepository<ReadingQuestionCriterionSystem> readingQuestionCriterionSystemRepository,
IRepository<CriterionNidusSystem> criterionNidusRepository
)
{
_organInfoRepository = organInfoRepository;
this._dictionaryRepository = dictionaryRepository;
this._visitTaskRepository = visitTaskRepository;
this._organTrialInfoRepository = organTrialInfoRepository;
this._readingQuestionCriterionTrial = readingQuestionCriterionTrial;
this._criterionNidusRepository = criterionNidusRepository;
this._criterionNidusTrialRepository = criterionNidusTrialRepository;
this._readingQuestionCriterionSystemRepository = readingQuestionCriterionSystemRepository;
}
#region 系统器官

View File

@ -13,53 +13,23 @@ namespace IRaCIS.Core.Application.Service.RC
[ApiExplorerSettings(GroupName = "Reading")]
public class ReadingQuestionService : BaseService
public class ReadingQuestionService(
IRepository<ReadingQuestionCriterionSystem> _readingQuestionCriterionSystemRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswer,
IRepository<ReadingCriterionPage> _readingCriterionPageRepository,
IRepository<ReadingSystemCriterionDictionary> _readingCriterionDictionaryRepository,
IRepository<ReadingTrialCriterionDictionary> _readingTrialCriterionDictionaryRepository,
IRepository<VisitTask> _visitTaskRepository,
ITrialConfigService _trialConfigService,
IRepository<SystemCriterionDictionaryCode> _systemCriterionDictionaryCodeRepository,
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository) : BaseService
{
private readonly IRepository<ReadingQuestionCriterionSystem> _readingQuestionCriterionSystemRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswer;
private readonly IRepository<ReadingCriterionPage> _readingCriterionPageRepository;
private readonly IRepository<ReadingSystemCriterionDictionary> _readingCriterionDictionaryRepository;
private readonly IRepository<ReadingTrialCriterionDictionary> _readingTrialCriterionDictionaryRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly ITrialConfigService _trialConfigService;
private readonly IRepository<SystemCriterionDictionaryCode> _systemCriterionDictionaryCodeRepository;
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
public ReadingQuestionService(
IRepository<ReadingQuestionCriterionSystem> readingQuestionCriterionSystemRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<ReadingSystemCriterionDictionary> readingCriterionDictionaryRepository,
IRepository<ReadingTrialCriterionDictionary> readingTrialCriterionDictionaryRepository,
IRepository<VisitTask> visitTaskRepository,
ITrialConfigService trialConfigService,
IRepository<SystemCriterionDictionaryCode> systemCriterionDictionaryCodeRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswer,
IRepository<ReadingCriterionPage> readingCriterionPageRepository)
{
this._readingQuestionCriterionSystemRepository = readingQuestionCriterionSystemRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingCriterionPageRepository = readingCriterionPageRepository;
this._readingCriterionDictionaryRepository = readingCriterionDictionaryRepository;
this._readingTrialCriterionDictionaryRepository = readingTrialCriterionDictionaryRepository;
this._visitTaskRepository = visitTaskRepository;
this._trialConfigService = trialConfigService;
this._systemCriterionDictionaryCodeRepository = systemCriterionDictionaryCodeRepository;
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingTaskQuestionAnswer = readingTaskQuestionAnswer;
}
/// <summary>

View File

@ -15,68 +15,28 @@ namespace IRaCIS.Application.Services
/// 阅片问题.标准
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public class ReadingQuestionService : BaseService, IReadingQuestionService
public class ReadingQuestionService(
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<ReadingQuestionCriterionSystem> _readingQuestionCriterionSystemRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingQuestionSystem> _readingQuestionSystemRepository,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository,
IRepository<ClinicalDataSystemSet> _clinicalDataSystemSetRepository,
IRepository<Dictionary> _dictionaryRepository,
IReadingImageTaskService _iReadingImageTaskService,
IRepository<ReadingSystemCriterionDictionary> _readingCriterionDictionaryRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
IRepository<ReadingCriterionPage> _readingCriterionPageRepository,
IRepository<Trial> _trialRepository,
IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository,
IRepository<OrganInfo> _organInfoRepository,
IRepository<ReadingTableQuestionSystem> _readingTableQuestionSystemRepository,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswer,
IRepository<PreviousPDF> _previousPDFRepository) : BaseService, IReadingQuestionService
{
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<ReadingQuestionCriterionSystem> _readingQuestionCriterionSystemRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingQuestionSystem> _readingQuestionSystemRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<ClinicalDataSystemSet> _clinicalDataSystemSetRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IReadingImageTaskService _iReadingImageTaskService;
private readonly IRepository<ReadingSystemCriterionDictionary> _readingCriterionDictionaryRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingCriterionPage> _readingCriterionPageRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<ReadingTableQuestionSystem> _readingTableQuestionSystemRepository;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswer;
private readonly IRepository<PreviousPDF> _previousPDFRepository;
public ReadingQuestionService(
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<ReadingQuestionCriterionSystem> readingQuestionCriterionSystemRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingQuestionSystem> readingQuestionSystemRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<ClinicalDataTrialSet> ClinicalDataTrialSetRepository,
IRepository<ClinicalDataSystemSet> ClinicalDataSystemSetRepository,
IRepository<Dictionary> dictionaryRepository,
IReadingImageTaskService iReadingImageTaskService,
IRepository<ReadingSystemCriterionDictionary> readingCriterionDictionaryRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingCriterionPage> readingCriterionPageRepository,
IRepository<Trial> trialRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<ReadingTableQuestionSystem> readingTableQuestionSystemRepository,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswer,
IRepository<PreviousPDF> previousPDFRepository
)
{
this._subjectVisitRepository = subjectVisitRepository;
this._readingQuestionCriterionSystemRepository = readingQuestionCriterionSystemRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingQuestionSystemRepository = readingQuestionSystemRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._clinicalDataTrialSetRepository = ClinicalDataTrialSetRepository;
this._clinicalDataSystemSetRepository = ClinicalDataSystemSetRepository;
this._dictionaryRepository = dictionaryRepository;
this._iReadingImageTaskService = iReadingImageTaskService;
this._readingCriterionDictionaryRepository = readingCriterionDictionaryRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingCriterionPageRepository = readingCriterionPageRepository;
this._trialRepository = trialRepository;
this._tumorAssessmentRepository = tumorAssessmentRepository;
this._organInfoRepository = organInfoRepository;
this._readingTableQuestionSystemRepository = readingTableQuestionSystemRepository;
this._readingTaskQuestionAnswer = readingTaskQuestionAnswer;
this._previousPDFRepository = previousPDFRepository;
}
#region 获取计算问题

View File

@ -13,39 +13,13 @@ namespace IRaCIS.Core.Application.Service.TA
[ApiExplorerSettings(GroupName = "Reading")]
public class ReadingQuestionService : BaseService
public class ReadingQuestionService(
IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository1Point1,
IRepository<TumorAssessment_IRECIST1Point1> _tumorAssessmentIRepository1Point1,
IRepository<TumorAssessment_RECIST1Point1BM> _tumorAssessmentRepository1Point1BM) : BaseService
{
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository1Point1;
private readonly IRepository<TumorAssessment_IRECIST1Point1> _tumorAssessmentIRepository1Point1;
private readonly IRepository<TumorAssessment_RECIST1Point1BM> _tumorAssessmentRepository1Point1BM;
public ReadingQuestionService(IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository1Point1,
IRepository<TumorAssessment_IRECIST1Point1> tumorAssessmentIRepository1Point1,
IRepository<TumorAssessment_RECIST1Point1BM> tumorAssessmentRepository1Point1BM
)
{
this._tumorAssessmentRepository1Point1 = tumorAssessmentRepository1Point1;
this._tumorAssessmentIRepository1Point1 = tumorAssessmentIRepository1Point1;
this._tumorAssessmentRepository1Point1BM = tumorAssessmentRepository1Point1BM;
}
///// <summary>
///// 获取疗效对照
///// </summary>
///// <returns></returns>
//[HttpPost]
//public async Task<List<TumorAssessmentView>> GetTumorAssessmentList(GetTumorAssessmentListInDto inDto)
//{
// var result = await _tumorAssessmentRepository
// .Where(x => x.CriterionId == inDto.CriterionId)
// .WhereIf(inDto.OverallEfficacy != null, x => x.OverallEfficacy == inDto.OverallEfficacy)
// .WhereIf(inDto.TargetLesion != null, x => x.TargetLesion == inDto.TargetLesion)
// .WhereIf(inDto.NonTargetLesions != null, x => x.NonTargetLesions == inDto.NonTargetLesions)
// .WhereIf(inDto.NewLesion != null, x => x.NewLesion == inDto.NewLesion)
// .ProjectTo<TumorAssessmentView>(_mapper.ConfigurationProvider).ToListAsync();
// return result;
//}
/// <summary>
/// 获取疗效对照

View File

@ -32,135 +32,49 @@ namespace IRaCIS.Application.Services
/// IR影像阅片
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public partial class ReadingImageTaskService : BaseService, IReadingImageTaskService
public partial class ReadingImageTaskService(
IRepository<NoneDicomStudy> _noneDicomStudyRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<Trial> _trialRepository,
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<ReadingOncologyTaskInfo> _readingOncologyTaskInfoRepository,
IVisitTaskHelpeService _visitTaskHelpeService,
IVisitTaskService _visitTaskService,
IReadingClinicalDataService _readingClinicalDataService,
IReadingCalculateService _readingCalculateService,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<Subject> _subjectRepository,
IOptionsMonitor<ServiceVerifyConfigOption> _verifyConfig,
IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository,
IRepository<ReadingCriterionPage> _readingCriterionPageRepository,
IRepository<ReadingTaskRelation> _readingTaskRelationRepository,
IRepository<ReadingJudgeInfo> _readingJudgeInfoRepository,
IRepository<ReadModule> _readModuleRepository,
IRepository<DicomInstance> _dicomInstanceRepository,
IRepository<OrganInfo> _organInfoRepository,
IRepository<TrialDocument> _trialDocumentRepository,
IRepository<User> _userRepository,
IEasyCachingProvider _provider,
ILuganoCalculateService _luganoCalculateService,
IRepository<ReadingCustomTag> _readingCustomTagRepository,
IRepository<ReadingTaskQuestionMark> _readingTaskQuestionMarkRepository,
IRepository<ReadingSystemCriterionDictionary> _readingCriterionDictionaryRepository,
IRepository<ReadingTrialCriterionDictionary> _readingTrialCriterionDictionaryRepository,
IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingTableQuestionSystem> _readingTableQuestionSystemRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingQuestionCriterionSystem> _readingQuestionCriterionSystemRepository,
IRepository<ReadingQuestionSystem> _readingQuestionSystem,
IRepository<NoneDicomStudyFile> _noneDicomStudyFileSystem,
IGeneralCalculateService _generalCalculateService,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
ITrialEmailNoticeConfigService _trialEmailNoticeConfigService) : BaseService, IReadingImageTaskService
{
private readonly IRepository<NoneDicomStudy> _noneDicomStudyRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<ReadingOncologyTaskInfo> _readingOncologyTaskInfoRepository;
private readonly IVisitTaskHelpeService _visitTaskHelpeService;
private readonly IVisitTaskService _visitTaskService;
private readonly IReadingClinicalDataService _readingClinicalDataService;
private readonly IReadingCalculateService _readingCalculateService;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<Subject> _subjectRepository;
private readonly IOptionsMonitor<ServiceVerifyConfigOption> _verifyConfig;
private readonly IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository;
private readonly IRepository<ReadingCriterionPage> _readingCriterionPageRepository;
private readonly IRepository<ReadingTaskRelation> _readingTaskRelationRepository;
private readonly IRepository<ReadingJudgeInfo> _readingJudgeInfoRepository;
private readonly IRepository<ReadModule> _readModuleRepository;
private readonly IRepository<DicomInstance> _dicomInstanceRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<TrialDocument> _trialDocumentRepository;
private readonly IRepository<User> _userRepository;
private readonly IEasyCachingProvider _provider;
private readonly ILuganoCalculateService _luganoCalculateService;
private readonly IRepository<ReadingCustomTag> _readingCustomTagRepository;
private readonly IRepository<ReadingTaskQuestionMark> _readingTaskQuestionMarkRepository;
private readonly IRepository<ReadingSystemCriterionDictionary> _readingCriterionDictionaryRepository;
private readonly IRepository<ReadingTrialCriterionDictionary> _readingTrialCriterionDictionaryRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingTableQuestionSystem> _readingTableQuestionSystemRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingQuestionCriterionSystem> _readingQuestionCriterionSystemRepository;
private readonly IRepository<ReadingQuestionSystem> _readingQuestionSystem;
private readonly IRepository<NoneDicomStudyFile> _noneDicomStudyFileSystem;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly ITrialEmailNoticeConfigService _trialEmailNoticeConfigService;
public ReadingImageTaskService(
IRepository<NoneDicomStudy> noneDicomStudyRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<Trial> TrialRepository,
IRepository<ReadingTableQuestionAnswer> ReadingTableQuestionAnswerRepository,
IRepository<ReadingOncologyTaskInfo> ReadingOncologyTaskInfoRepository,
IVisitTaskHelpeService visitTaskHelpeService,
IVisitTaskService visitTaskService,
IReadingClinicalDataService readingClinicalDataService,
IReadingCalculateService readingCalculateService,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<Subject> subjectRepository,
IOptionsMonitor<ServiceVerifyConfigOption> verifyConfig,
IRepository<ReadingGlobalTaskInfo> readingGlobalTaskInfoRepository,
IRepository<ReadingCriterionPage> readingCriterionPageRepository,
IRepository<ReadingTaskRelation> readingTaskRelationRepository,
IRepository<ReadingJudgeInfo> readingJudgeInfoRepository,
IRepository<ReadModule> readModuleRepository,
IRepository<DicomInstance> dicomInstanceRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<TrialDocument> trialDocumentRepository,
IRepository<User> userRepository,
IEasyCachingProvider provider,
ILuganoCalculateService luganoCalculateService,
IRepository<ReadingCustomTag> readingCustomTagRepository,
IRepository<ReadingTaskQuestionMark> readingTaskQuestionMarkRepository,
IRepository<ReadingSystemCriterionDictionary> readingCriterionDictionaryRepository,
IRepository<ReadingTrialCriterionDictionary> readingTrialCriterionDictionaryRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingTableQuestionSystem> readingTableQuestionSystemRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingQuestionCriterionSystem> readingQuestionCriterionSystemRepository,
IRepository<ReadingQuestionSystem> ReadingQuestionSystem,
ITrialEmailNoticeConfigService trialEmailNoticeConfigService,
IRepository<NoneDicomStudyFile> noneDicomStudyFileSystem,
IGeneralCalculateService generalCalculateService,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository
)
{
this._noneDicomStudyRepository = noneDicomStudyRepository;
this._visitTaskRepository = visitTaskRepository;
this._trialRepository = TrialRepository;
this._readingTableQuestionAnswerRepository = ReadingTableQuestionAnswerRepository;
this._readingOncologyTaskInfoRepository = ReadingOncologyTaskInfoRepository;
this._visitTaskHelpeService = visitTaskHelpeService;
this._visitTaskService = visitTaskService;
this._readingClinicalDataService = readingClinicalDataService;
this._readingCalculateService = readingCalculateService;
this._subjectVisitRepository = subjectVisitRepository;
this._subjectRepository = subjectRepository;
this._verifyConfig = verifyConfig;
this._readingGlobalTaskInfoRepository = readingGlobalTaskInfoRepository;
this._readingCriterionPageRepository = readingCriterionPageRepository;
this._readingTaskRelationRepository = readingTaskRelationRepository;
this._readingJudgeInfoRepository = readingJudgeInfoRepository;
this._readModuleRepository = readModuleRepository;
this._dicomInstanceRepository = dicomInstanceRepository;
this._organInfoRepository = organInfoRepository;
this._trialDocumentRepository = trialDocumentRepository;
this._userRepository = userRepository;
this._provider = provider;
this._luganoCalculateService = luganoCalculateService;
this._readingCustomTagRepository = readingCustomTagRepository;
this._readingTaskQuestionMarkRepository = readingTaskQuestionMarkRepository;
this._readingCriterionDictionaryRepository = readingCriterionDictionaryRepository;
this._tumorAssessmentRepository = tumorAssessmentRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingTableQuestionSystemRepository = readingTableQuestionSystemRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingQuestionCriterionSystemRepository = readingQuestionCriterionSystemRepository;
this._readingTrialCriterionDictionaryRepository = readingTrialCriterionDictionaryRepository;
this._readingQuestionSystem = ReadingQuestionSystem;
this._noneDicomStudyFileSystem = noneDicomStudyFileSystem;
this._generalCalculateService = generalCalculateService;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._trialEmailNoticeConfigService = trialEmailNoticeConfigService;
}
#region 计算
@ -1122,7 +1036,7 @@ namespace IRaCIS.Application.Services
var organIds = tableAnsweRowInfos.Where(x => x.OrganInfoId != null).Select(x => x.OrganInfoId).Distinct().ToList();
var organList = await _organInfoRepository.Where(x => organIds.Contains(x.Id)).ToListAsync();
return (await this.GetReadingTableQuestion(
return (await GetReadingTableQuestion(
new GetReadingTableQuestionOrAnswerInDto()
{
TrialReadingCriterionId = taskInfo.TrialReadingCriterionId,
@ -1318,7 +1232,7 @@ namespace IRaCIS.Application.Services
var pageGroupList = newPageQusetionList.Where(x => x.Type == ReadingQestionType.Group).ToList();
pageGroupList.ForEach(x =>
{
this.FindChildQuestion(x, newPageQusetionList, tableQuestionList, inDto.TableAnswers, inDto.TableAnsweRowInfos, inDto.OrganInfos, baseLineTableAnswer, isFirstChangeTask, lastTaskTableAnswer, inDto.TaskId);
FindChildQuestion(x, newPageQusetionList, tableQuestionList, inDto.TableAnswers, inDto.TableAnsweRowInfos, inDto.OrganInfos, baseLineTableAnswer, isFirstChangeTask, lastTaskTableAnswer, inDto.TaskId);
});
page.Childrens = pageGroupList.Where(x => !(x.Type == ReadingQestionType.Group && x.Childrens.Count == 0)).ToList();
@ -1335,7 +1249,7 @@ namespace IRaCIS.Application.Services
groupList = qusetionList.Where(x => x.Type == ReadingQestionType.Group).ToList();
groupList.ForEach(x =>
{
this.FindChildQuestion(x, qusetionList, tableQuestionList, inDto.TableAnswers, inDto.TableAnsweRowInfos, inDto.OrganInfos, baseLineTableAnswer, isFirstChangeTask, lastTaskTableAnswer, inDto.TaskId);
FindChildQuestion(x, qusetionList, tableQuestionList, inDto.TableAnswers, inDto.TableAnsweRowInfos, inDto.OrganInfos, baseLineTableAnswer, isFirstChangeTask, lastTaskTableAnswer, inDto.TaskId);
});
groupList = groupList.Where(x => !(x.Type == ReadingQestionType.Group && x.Childrens.Count == 0)).ToList();
@ -1533,7 +1447,7 @@ namespace IRaCIS.Application.Services
{
item.Childrens.ForEach(x =>
{
this.FindChildQuestion(x, questionlists, tableQuestionLists, tableAnswers, tableAnsweRowInfos, organInfos, baseLineTableAnswer, isFirstChangeTask, lastTaskTableAnswer, TaskId);
FindChildQuestion(x, questionlists, tableQuestionLists, tableAnswers, tableAnsweRowInfos, organInfos, baseLineTableAnswer, isFirstChangeTask, lastTaskTableAnswer, TaskId);
});
}
}
@ -1554,7 +1468,7 @@ namespace IRaCIS.Application.Services
public async Task SplitLesion(SplitLesionInDto inDto)
{
await VerifyTaskIsSign(inDto.VisitTaskId);
await this.VerifyIsBaseLineTask(inDto.VisitTaskId);
await VerifyIsBaseLineTask(inDto.VisitTaskId);
var taskInfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).Include(x => x.TrialReadingCriterion).FirstNotNullAsync();
var rowAnswer = await _readingTableAnswerRowInfoRepository.Where(x => x.Id == inDto.RowId).AsNoTracking().FirstNotNullAsync();
var tableAnswers = await _readingTableQuestionAnswerRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId && x.RowIndex == rowAnswer.RowIndex && x.QuestionId == inDto.QuestionId).Include(x => x.ReadingTableQuestionTrial).ProjectTo<TableQuestionAnswerInfo>(_mapper.ConfigurationProvider).ToListAsync();
@ -1657,7 +1571,7 @@ namespace IRaCIS.Application.Services
public async Task MergeLesion(MergeLesionInDto inDto)
{
await VerifyTaskIsSign(inDto.VisitTaskId);
await this.VerifyIsBaseLineTask(inDto.VisitTaskId);
await VerifyIsBaseLineTask(inDto.VisitTaskId);
var taskinfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).Include(x => x.TrialReadingCriterion).FirstNotNullAsync();
var mergeRow = await _readingTableAnswerRowInfoRepository.Where(x => x.Id == inDto.MergeMainRowId).Include(x => x.ReadingQuestionTrial).FirstNotNullAsync();
@ -1686,7 +1600,7 @@ namespace IRaCIS.Application.Services
});
await _readingTableAnswerRowInfoRepository.SaveChangesAsync();
await this._readingCalculateService.CalculateTask(new CalculateTaskInDto()
await _readingCalculateService.CalculateTask(new CalculateTaskInDto()
{
IsChangeOtherTask = false,
VisitTaskId = inDto.VisitTaskId,
@ -1816,10 +1730,10 @@ namespace IRaCIS.Application.Services
{
}
var result = await this.SaveImageQuality(inDto);
var result = await SaveImageQuality(inDto);
// 自动计算
await this._readingCalculateService.CalculateTask(new CalculateTaskInDto()
await _readingCalculateService.CalculateTask(new CalculateTaskInDto()
{
IsChangeOtherTask = false,
VisitTaskId = inDto.VisitTaskId,
@ -2119,7 +2033,7 @@ namespace IRaCIS.Application.Services
}
// 自动计算
await this._readingCalculateService.CalculateTask(new CalculateTaskInDto()
await _readingCalculateService.CalculateTask(new CalculateTaskInDto()
{
IsChangeOtherTask = false,
VisitTaskId = inDto.VisitTaskId,
@ -2517,7 +2431,7 @@ namespace IRaCIS.Application.Services
}
await _readingTableAnswerRowInfoRepository.SaveChangesAsync();
await this._readingCalculateService.CalculateTask(new CalculateTaskInDto()
await _readingCalculateService.CalculateTask(new CalculateTaskInDto()
{
IsChangeOtherTask = false,
VisitTaskId = inDto.VisitTaskId,
@ -2609,7 +2523,7 @@ namespace IRaCIS.Application.Services
await this.SubmitTaskChangeState(inDto.VisitTaskId);
await SubmitTaskChangeState(inDto.VisitTaskId);
return ResponseOutput.Ok(true);
}
@ -3216,7 +3130,7 @@ namespace IRaCIS.Application.Services
}
// 创建任务关联关系
await this.CreateTaskRelated(visitTaskId);
await CreateTaskRelated(visitTaskId);
// 是否触发转变任务
if (isConverted)
@ -3226,12 +3140,12 @@ namespace IRaCIS.Application.Services
else
{
// 触裁判任务
await this.TriggerJudgeQuestion(visitTaskId);
await TriggerJudgeQuestion(visitTaskId);
// 添加阅片期任务
await this.AddReadingTask(visitTaskId);
await AddReadingTask(visitTaskId);
// 完成阅片修改状态
//await this.FinishReadUpdateState(visitTaskId);
//await FinishReadUpdateState(visitTaskId);

View File

@ -16,59 +16,22 @@ namespace IRaCIS.Application.Services
/// 生成的阅片模块(在大列表上展示的) 阅片期
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public class ReadModuleService : BaseService
public class ReadModuleService(
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<Subject> _subjectRepository,
IRepository<User> _userRepository,
IRepository<Trial> _trialRepository,
IVisitTaskHelpeService _visitTaskHelpeService,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository,
IRepository<ReadModuleView> _readModuleViewRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<DicomInstance> _dicomInstanceRepository,
IRepository<NoneDicomStudyFile> _noneDicomStudyFileRepository,
IRepository<ReadingPeriodSet> _readingPeriodSetRepository,
IRepository<ReadModule> _readModuleRepository) : BaseService
{
public IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<VisitStage> _visitstageRepository;
private readonly IRepository<User> _userRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IVisitTaskHelpeService _visitTaskHelpeService;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadModuleCriterionFrom> _readModuleCriterionFromRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<ReadModuleView> _readModuleViewRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<DicomInstance> _dicomInstanceRepository;
private readonly IRepository<NoneDicomStudyFile> _noneDicomStudyFileRepository;
private readonly IRepository<ReadingPeriodSet> _readingPeriodSetRepository;
private readonly IRepository<ReadModule> _readModuleRepository;
public ReadModuleService(IRepository<SubjectVisit> subjectVisitRepository,
IRepository<Subject> subjectRepository,
IRepository<VisitStage> visitstageRepository,
IRepository<User> UserRepository,
IRepository<Trial> trialRepository,
IVisitTaskHelpeService visitTaskHelpeService,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadModuleCriterionFrom> readModuleCriterionFromRepository,
IRepository<ClinicalDataTrialSet> clinicalDataTrialSetRepository,
IRepository<ReadModuleView> readModuleViewRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<DicomInstance> dicomInstanceRepository,
IRepository<NoneDicomStudyFile> noneDicomStudyFileRepository,
IRepository<ReadingPeriodSet> readingPeriodSetRepository,
IRepository<ReadModule> readModuleRepository
)
{
this._subjectVisitRepository = subjectVisitRepository;
this._subjectRepository = subjectRepository;
this._visitstageRepository = visitstageRepository;
this._userRepository = UserRepository;
this._trialRepository = trialRepository;
this._visitTaskHelpeService = visitTaskHelpeService;
this._visitTaskRepository = visitTaskRepository;
this._readModuleCriterionFromRepository = readModuleCriterionFromRepository;
this._clinicalDataTrialSetRepository = clinicalDataTrialSetRepository;
this._readModuleViewRepository = readModuleViewRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._dicomInstanceRepository = dicomInstanceRepository;
this._noneDicomStudyFileRepository = noneDicomStudyFileRepository;
this._readingPeriodSetRepository = readingPeriodSetRepository;
this._readModuleRepository = readModuleRepository;
}
#region 获取修改时可选择的阅片期截止访视

View File

@ -13,48 +13,21 @@ namespace IRaCIS.Application.Services
/// 阅片期配置
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public class ReadingPeriodSetService : BaseService
public class ReadingPeriodSetService(
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<ReadingPeriodSet> _readingPeriodSetRepository,
IRepository<ReadModule> _readModuleRepository,
IRepository<VisitStage> _visitStageRepository,
IRepository<Trial> _trialRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IVisitTaskHelpeService _visitTaskHelpeService,
IRepository<ReadingPeriodPlan> _readingPeriodPlanRepository,
IRepository<Site> _siteSetRepository,
IRepository<Subject> _subjectRepository) : BaseService
{
public IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<ReadingPeriodSet> _readingPeriodSetRepository;
private readonly IRepository<ReadModule> _readModuleRepository;
private readonly IRepository<VisitStage> _visitStageRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IVisitTaskHelpeService _visitTaskHelpeService;
private readonly IRepository<ReadingPeriodPlan> _readingPeriodPlanRepository;
private readonly IRepository<Site> _siteSetRepository;
private readonly IRepository<Subject> _subjectRepository;
public ReadingPeriodSetService(IRepository<SubjectVisit> subjectVisitRepository,
IRepository<ReadingPeriodSet> ReadingPeriodSetRepository,
IRepository<ReadModule> readModuleRepository,
IRepository<VisitStage> visitStageRepository,
IRepository<Trial> trialRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IVisitTaskHelpeService visitTaskHelpeService,
IRepository<ReadingPeriodPlan> readingPeriodPlanRepository,
IRepository<Site> SiteSetRepository,
IRepository<Subject> subjectRepository
)
{
_subjectVisitRepository = subjectVisitRepository;
_readingPeriodSetRepository = ReadingPeriodSetRepository;
this._readModuleRepository = readModuleRepository;
this._visitStageRepository = visitStageRepository;
this._trialRepository = trialRepository;
this._visitTaskRepository = visitTaskRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._visitTaskHelpeService = visitTaskHelpeService;
this._readingPeriodPlanRepository = readingPeriodPlanRepository;
_siteSetRepository = SiteSetRepository;
_subjectRepository = subjectRepository;
}

View File

@ -14,19 +14,11 @@ namespace IRaCIS.Core.Application.Service
/// 快捷键服务
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public class ShortcutKeyService : BaseService
public class ShortcutKeyService(
IRepository<Dictionary> _dictionaryRepository,
IRepository<ShortcutKey> _shortcutKeyRepository) : BaseService
{
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IRepository<ShortcutKey> _shortcutKeyRepository;
public ShortcutKeyService(
IRepository<Dictionary> DictionaryRepository,
IRepository<ShortcutKey> shortcutKeyRepository
)
{
_dictionaryRepository = DictionaryRepository;
_shortcutKeyRepository = shortcutKeyRepository;
}
/// <summary>

View File

@ -16,19 +16,12 @@ namespace IRaCIS.Core.Application.Service
/// 用户WL模板
/// </summary>
[ApiExplorerSettings(GroupName = "Reading")]
public class UserWLTemplateService : BaseService
{
public class UserWLTemplateService(
IRepository<UserWLTemplate> _userWLTemplateRepository,
IRepository<User> _userRepository) : BaseService
{
private readonly IRepository<UserWLTemplate> _userWLTemplateRepository;
private readonly IRepository<User> _userRepository;
public UserWLTemplateService(IRepository<UserWLTemplate> userWLTemplateRepository,
IRepository<User> userRepository
)
{
_userWLTemplateRepository = userWLTemplateRepository;
this._userRepository = userRepository;
}
/// <summary>
/// 获取模板

View File

@ -17,55 +17,22 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
{
[ApiExplorerSettings(GroupName = "Reading")]
public class IRECIST1Point1CalculateService : BaseService, ICriterionCalculateService
public class IRECIST1Point1CalculateService(
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
IRepository<OrganInfo> _organInfoRepository,
IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<TumorAssessment_IRECIST1Point1> _tumorAssessmentRepository,
IGeneralCalculateService _generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository,
ILogger<IRECIST1Point1CalculateService> _logger) : BaseService, ICriterionCalculateService
{
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<TumorAssessment_IRECIST1Point1> _tumorAssessmentRepository;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
private readonly ILogger<IRECIST1Point1CalculateService> _logger;
public IRECIST1Point1CalculateService(
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<ReadingGlobalTaskInfo> readingGlobalTaskInfoRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<TumorAssessment_IRECIST1Point1> tumorAssessmentRepository,
IGeneralCalculateService generalCalculateService,
ILogger<IRECIST1Point1CalculateService> logger,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)
{
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
this._visitTaskRepository = visitTaskRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._organInfoRepository = organInfoRepository;
this._readingGlobalTaskInfoRepository = readingGlobalTaskInfoRepository;
this._subjectVisitRepository = subjectVisitRepository;
this._tumorAssessmentRepository = tumorAssessmentRepository;
this._generalCalculateService = generalCalculateService;
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
this._logger = logger;
}
/// <summary>
/// 获取阅片的计算数据
/// </summary>

View File

@ -22,58 +22,25 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
{
[ApiExplorerSettings(GroupName = "Reading")]
public class LuganoCalculateService : BaseService, ICriterionCalculateService, ILuganoCalculateService
public class LuganoCalculateService(
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
IRepository<ReadingTaskQuestionMark> _readingTaskQuestionMarkRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
IRepository<OrganInfo> _organInfoRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<DicomStudy> _dicomStudyRepository,
IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository,
ISubjectVisitService _subjectVisitService,
IGeneralCalculateService _generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository)
: BaseService, ICriterionCalculateService, ILuganoCalculateService
{
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingTaskQuestionMark> _readingTaskQuestionMarkRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<DicomStudy> _dicomStudyRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly ISubjectVisitService _subjectVisitService;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
public LuganoCalculateService(
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingTaskQuestionMark> readingTaskQuestionMarkRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingGlobalTaskInfo> readingGlobalTaskInfoRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<DicomStudy> dicomStudyRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
ISubjectVisitService subjectVisitService,
IGeneralCalculateService generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)
{
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
this._visitTaskRepository = visitTaskRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingTaskQuestionMarkRepository = readingTaskQuestionMarkRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingGlobalTaskInfoRepository = readingGlobalTaskInfoRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._organInfoRepository = organInfoRepository;
this._subjectVisitRepository = subjectVisitRepository;
this._dicomStudyRepository = dicomStudyRepository;
this._tumorAssessmentRepository = tumorAssessmentRepository;
this._subjectVisitService = subjectVisitService;
this._generalCalculateService = generalCalculateService;
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
}
/// <summary>
/// 获取阅片的计算数据

View File

@ -22,59 +22,25 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
{
[ApiExplorerSettings(GroupName = "Reading")]
public class LuganoWithoutPETCalculateService : BaseService, ICriterionCalculateService, ILuganoCalculateService
public class LuganoWithoutPETCalculateService(
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
IRepository<ReadingTaskQuestionMark> _readingTaskQuestionMarkRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
IRepository<OrganInfo> _organInfoRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<DicomStudy> _dicomStudyRepository,
IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository,
ISubjectVisitService _subjectVisitService,
IGeneralCalculateService _generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository)
: BaseService, ICriterionCalculateService, ILuganoCalculateService
{
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingTaskQuestionMark> _readingTaskQuestionMarkRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<DicomStudy> _dicomStudyRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly ISubjectVisitService _subjectVisitService;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
public LuganoWithoutPETCalculateService(
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingTaskQuestionMark> readingTaskQuestionMarkRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingGlobalTaskInfo> readingGlobalTaskInfoRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<DicomStudy> dicomStudyRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
ISubjectVisitService subjectVisitService,
IGeneralCalculateService generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)
{
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
this._visitTaskRepository = visitTaskRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingTaskQuestionMarkRepository = readingTaskQuestionMarkRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingGlobalTaskInfoRepository = readingGlobalTaskInfoRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._organInfoRepository = organInfoRepository;
this._subjectVisitRepository = subjectVisitRepository;
this._dicomStudyRepository = dicomStudyRepository;
this._tumorAssessmentRepository = tumorAssessmentRepository;
this._subjectVisitService = subjectVisitService;
this._generalCalculateService = generalCalculateService;
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
}
/// <summary>
/// 获取阅片的计算数据
/// </summary>

View File

@ -14,52 +14,23 @@ using MassTransit;
namespace IRaCIS.Core.Application.Service.ReadingCalculate
{
[ApiExplorerSettings(GroupName = "Reading")]
public class PCWG3CalculateService : BaseService, ICriterionCalculateService
public class PCWG3CalculateService(
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<OrganInfo> _organInfoRepository,
IRepository<DicomStudy> _dicomStudyRepository,
IRepository<NoneDicomStudy> _noneDicomStudyRepository,
IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository,
IGeneralCalculateService _generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository)
: BaseService, ICriterionCalculateService
{
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<DicomStudy> _dicomStudyRepository;
private readonly IRepository<NoneDicomStudy> _noneDicomStudyRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
public PCWG3CalculateService(
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<DicomStudy> dicomStudyRepository,
IRepository<NoneDicomStudy> noneDicomStudyRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IGeneralCalculateService generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)
{
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
this._visitTaskRepository = visitTaskRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._subjectVisitRepository = subjectVisitRepository;
this._organInfoRepository = organInfoRepository;
this._dicomStudyRepository = dicomStudyRepository;
this._noneDicomStudyRepository = noneDicomStudyRepository;
this._tumorAssessmentRepository = tumorAssessmentRepository;
this._generalCalculateService = generalCalculateService;
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
}
private List<SiteVisitForTumor> siteVisitForTumorList;

View File

@ -15,50 +15,22 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
{
[ApiExplorerSettings(GroupName = "Reading")]
public class RECIST1Point1CalculateService : BaseService, ICriterionCalculateService
public class RECIST1Point1CalculateService(
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository,
IRepository<OrganInfo> _organInfoRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository,
IGeneralCalculateService _generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository)
: BaseService, ICriterionCalculateService
{
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
public RECIST1Point1CalculateService(
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<ReadingGlobalTaskInfo> readingGlobalTaskInfoRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IGeneralCalculateService generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)
{
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
this._visitTaskRepository = visitTaskRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._readingGlobalTaskInfoRepository = readingGlobalTaskInfoRepository;
this._organInfoRepository = organInfoRepository;
this._subjectVisitRepository = subjectVisitRepository;
this._tumorAssessmentRepository = tumorAssessmentRepository;
this._generalCalculateService = generalCalculateService;
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
}
/// <summary>
/// 获取阅片的计算数据
/// </summary>

View File

@ -15,50 +15,22 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
{
[ApiExplorerSettings(GroupName = "Reading")]
public class RECIST1Point1_BMCalculateService : BaseService, ICriterionCalculateService
public class RECIST1Point1_BMCalculateService(
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
IRepository<OrganInfo> _organInfoRepository,
IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<TumorAssessment_RECIST1Point1BM> _tumorAssessment_RECIST1Point1BM,
IGeneralCalculateService _generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository)
: BaseService, ICriterionCalculateService
{
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1BM> _tumorAssessment_RECIST1Point1BM;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
public RECIST1Point1_BMCalculateService(
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<ReadingGlobalTaskInfo> readingGlobalTaskInfoRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<TumorAssessment_RECIST1Point1BM> tumorAssessment_RECIST1Point1BM,
IGeneralCalculateService generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)
{
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
this._visitTaskRepository = visitTaskRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._organInfoRepository = organInfoRepository;
this._readingGlobalTaskInfoRepository = readingGlobalTaskInfoRepository;
this._subjectVisitRepository = subjectVisitRepository;
this._tumorAssessment_RECIST1Point1BM = tumorAssessment_RECIST1Point1BM;
this._generalCalculateService = generalCalculateService;
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
}
/// <summary>
/// 获取阅片的计算数据
/// </summary>

View File

@ -14,55 +14,24 @@ using MassTransit;
namespace IRaCIS.Core.Application.Service.ReadingCalculate
{
[ApiExplorerSettings(GroupName = "Reading")]
public class SelfDefineCalculateService : BaseService, ICriterionCalculateService
public class SelfDefineCalculateService(
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<OrganInfo> _organInfoRepository,
IRepository<DicomStudy> _dicomStudyRepository,
IRepository<NoneDicomStudy> _noneDicomStudyRepository,
IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository,
IGeneralCalculateService _generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository)
: BaseService, ICriterionCalculateService
{
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingGlobalTaskInfo> _readingGlobalTaskInfoRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<OrganInfo> _organInfoRepository;
private readonly IRepository<DicomStudy> _dicomStudyRepository;
private readonly IRepository<NoneDicomStudy> _noneDicomStudyRepository;
private readonly IRepository<TumorAssessment_RECIST1Point1> _tumorAssessmentRepository;
private readonly IGeneralCalculateService _generalCalculateService;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswerRepository;
public SelfDefineCalculateService(
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingGlobalTaskInfo> readingGlobalTaskInfoRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<SubjectVisit> subjectVisitRepository,
IRepository<OrganInfo> organInfoRepository,
IRepository<DicomStudy> dicomStudyRepository,
IRepository<NoneDicomStudy> noneDicomStudyRepository,
IRepository<TumorAssessment_RECIST1Point1> tumorAssessmentRepository,
IGeneralCalculateService generalCalculateService,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswerRepository
)
{
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
this._visitTaskRepository = visitTaskRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingGlobalTaskInfoRepository = readingGlobalTaskInfoRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._subjectVisitRepository = subjectVisitRepository;
this._organInfoRepository = organInfoRepository;
this._dicomStudyRepository = dicomStudyRepository;
this._noneDicomStudyRepository = noneDicomStudyRepository;
this._tumorAssessmentRepository = tumorAssessmentRepository;
this._generalCalculateService = generalCalculateService;
this._readingTaskQuestionAnswerRepository = readingTaskQuestionAnswerRepository;
}
private List<SiteVisitForTumor> siteVisitForTumorList = new List<SiteVisitForTumor>() ;

View File

@ -14,16 +14,11 @@ namespace IRaCIS.Core.Application.Contracts
/// TrialSiteEquipmentSurveyService
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialSiteEquipmentSurveyService : BaseService, ITrialSiteEquipmentSurveyService
public class TrialSiteEquipmentSurveyService(
IRepository<TrialSiteEquipmentSurvey> _trialSiteEquipmentSurveyRepository,
IRepository<TrialSiteSurvey> _trialSiteSurveyRepository) : BaseService, ITrialSiteEquipmentSurveyService
{
private readonly IRepository<TrialSiteEquipmentSurvey> _trialSiteEquipmentSurveyRepository;
private readonly IRepository<TrialSiteSurvey> _trialSiteSurveyRepository;
public TrialSiteEquipmentSurveyService(IRepository<TrialSiteEquipmentSurvey> trialSiteEquipmentSurveyRepository, IRepository<TrialSiteSurvey> trialSiteSurveyRepository)
{
_trialSiteEquipmentSurveyRepository = trialSiteEquipmentSurveyRepository;
_trialSiteSurveyRepository = trialSiteSurveyRepository;
}
[HttpGet("{trialSiteSurveyId:guid}")]

View File

@ -31,39 +31,21 @@ namespace IRaCIS.Core.Application.Contracts
/// TrialSiteSurveyService
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialSiteSurveyService : BaseService, ITrialSiteSurveyService
public class TrialSiteSurveyService(
IRepository<TrialSiteSurvey> _trialSiteSurveyRepository,
IRepository<TrialSiteUserSurvey> _trialSiteUserSurveyRepository,
IRepository<User> _userRepository,
IRepository<TrialSite> _trialSiteRepository,
IRepository<TrialUser> _trialUserRepository,
IRepository<TrialSiteUser> _trialSiteUserRepository,
IDistributedLockProvider _distributedLockProvider,
ITokenService _tokenService,
IMailVerificationService _mailVerificationService,
IOptionsMonitor<SystemEmailSendConfig> systemEmailConfig) : BaseService, ITrialSiteSurveyService
{
private readonly IRepository<TrialSiteSurvey> _trialSiteSurveyRepository;
private readonly IRepository<TrialSiteUserSurvey> _trialSiteUserSurveyRepository;
private readonly IRepository<User> _userRepository;
private readonly IRepository<TrialSite> _trialSiteRepository;
private readonly IRepository<TrialUser> _trialUserRepository;
private readonly IRepository<TrialSiteUser> _trialSiteUserRepository;
private readonly IDistributedLockProvider _distributedLockProvider;
private readonly ITokenService _tokenService;
private readonly IMailVerificationService _mailVerificationService;
private readonly SystemEmailSendConfig _systemEmailConfig;
private readonly SystemEmailSendConfig _systemEmailConfig = systemEmailConfig.CurrentValue;
public TrialSiteSurveyService(IRepository<TrialSiteSurvey> trialSiteSurveyRepository, IRepository<TrialUser> trialUserRepository, IRepository<TrialSiteUserSurvey> trialSiteUserSurveyRepository,
IRepository<User> userRepository, IRepository<TrialSite> trialSiteRepository,
ITokenService tokenService,
IMailVerificationService mailVerificationService, IRepository<TrialSiteUser> trialSiteUserRepository, IDistributedLockProvider distributedLockProvider, IOptionsMonitor<SystemEmailSendConfig> systemEmailConfig)
{
_trialSiteSurveyRepository = trialSiteSurveyRepository;
_trialSiteUserSurveyRepository = trialSiteUserSurveyRepository;
_userRepository = userRepository;
_trialUserRepository = trialUserRepository;
_trialSiteRepository = trialSiteRepository;
_tokenService = tokenService;
_mailVerificationService = mailVerificationService;
_trialSiteUserRepository = trialSiteUserRepository;
_distributedLockProvider = distributedLockProvider;
_systemEmailConfig = systemEmailConfig.CurrentValue;
}
/// <summary>
@ -396,9 +378,9 @@ namespace IRaCIS.Core.Application.Contracts
var result = await _trialSiteSurveyRepository.Where(t => t.Id == trialSiteSurveyId && t.TrialId == trialId).IgnoreQueryFilters()
.ProjectTo<LoginReturnDTO>(_mapper.ConfigurationProvider, new { isEn_Us = _userInfo.IsEn_Us }).FirstOrDefaultAsync().IfNullThrowException();
.ProjectTo<LoginReturnDTO>(_mapper.ConfigurationProvider, new { isEn_Us = _userInfo.IsEn_Us }).FirstOrDefaultAsync().IfNullThrowException();
var siteSurveryConfig = _trialSiteSurveyRepository.Where(t => t.Id == trialSiteSurveyId).IgnoreQueryFilters().Select(t => t.Trial.TrialExtraConfigJsonStr).FirstOrDefault()??string.Empty;
var siteSurveryConfig = _trialSiteSurveyRepository.Where(t => t.Id == trialSiteSurveyId).IgnoreQueryFilters().Select(t => t.Trial.TrialExtraConfigJsonStr).FirstOrDefault() ?? string.Empty;
result.SiteSurveyFiledConfig = JsonConvert.DeserializeObject<TrialExtraConfig>(siteSurveryConfig) ?? new TrialExtraConfig();
return result;
@ -619,7 +601,7 @@ namespace IRaCIS.Core.Application.Contracts
await _IMailVerificationService.SiteSurveyRejectEmail(messageToSend, survey , trialSiteSubmitBackCommand.RouteUrl, user);
await _IMailVerificationService.SiteSurveyRejectEmail(messageToSend, survey, trialSiteSubmitBackCommand.RouteUrl, user);
await _trialSiteSurveyRepository.SaveChangesAsync();

View File

@ -15,16 +15,11 @@ namespace IRaCIS.Core.Application.Contracts
/// TrialSiteUserSurveyService
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialSiteUserSurveyService : BaseService, ITrialSiteUserSurveyService
public class TrialSiteUserSurveyService(
IRepository<TrialSiteUserSurvey> _trialSiteUserSurveyRepository,
IRepository<TrialSiteSurvey> _trialSiteSurveyRepository) : BaseService, ITrialSiteUserSurveyService
{
private readonly IRepository<TrialSiteUserSurvey> _trialSiteUserSurveyRepository;
private readonly IRepository<TrialSiteSurvey> _trialSiteSurveyRepository;
public TrialSiteUserSurveyService(IRepository<TrialSiteUserSurvey> trialSiteUserSurveyRepository, IRepository<TrialSiteSurvey> trialSiteSurveyRepository)
{
_trialSiteUserSurveyRepository = trialSiteUserSurveyRepository;
_trialSiteSurveyRepository = trialSiteSurveyRepository;
}
[HttpPost]
public async Task<List<TrialSiteUserSurveyView>> GetTrialSiteUserSurveyList(TrialSiteUserSurverQuery inquery)

View File

@ -12,40 +12,19 @@ namespace IRaCIS.Application.Services
/// </summary>
[ApiExplorerSettings(GroupName = "Dashboard&Statistics")]
public class StatisticsService : BaseService, IStatisticsService
public class StatisticsService(
IRepository<Doctor> _doctorRepository,
IRepository<Trial> _trialRepository,
IRepository<Enroll> _enrollRepository,
IRepository<Workload> _workloadRepository,
IRepository<CRO> _croCompanyRepository,
IRepository<Dictionary> _dictionaryRepository,
IRepository<Hospital> _hospitalRepository,
IRepository<EnrollDetail> _enrollDetailRepository,
IRepository<User> _userRepository,
IRepository<TrialUser> _userTrialRepository) : BaseService, IStatisticsService
{
private readonly IRepository<Doctor> _doctorRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<Enroll> _enrollRepository;
private readonly IRepository<Workload> _workloadRepository;
private readonly IRepository<CRO> _croCompanyRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IRepository<Hospital> _hospitalRepository;
private readonly IRepository<EnrollDetail> _enrollDetailRepository;
private readonly IRepository<User> _userRepository;
private readonly IRepository<TrialUser> _userTrialRepository;
public StatisticsService(IRepository<Doctor> doctorRepository, IRepository<Trial> trialRepository,
IRepository<Enroll> intoGroupRepository, IRepository<Workload> workloadRepository,
IRepository<CRO> croCompanyRepository,
IRepository<Dictionary> dictionaryRepository,
IRepository<Hospital> hospitalRepository,
IRepository<EnrollDetail> enrollDetailRepository, IRepository<User> userRepository,
IRepository<TrialUser> userTrialRepository)
{
_doctorRepository = doctorRepository;
_trialRepository = trialRepository;
_enrollRepository = intoGroupRepository;
_workloadRepository = workloadRepository;
_croCompanyRepository = croCompanyRepository;
_dictionaryRepository = dictionaryRepository;
_hospitalRepository = hospitalRepository;
_enrollDetailRepository = enrollDetailRepository;
_userRepository = userRepository;
_userTrialRepository = userTrialRepository;
}
/// <summary> 根据项目和医生,分页获取工作量统计[New] </summary>
[HttpPost]

View File

@ -21,22 +21,13 @@ namespace IRaCIS.Core.Application.Service.Third_partyProject
{
[ApiExplorerSettings(GroupName = "Trial")]
public class UltrasonicDicomService : BaseService
public class UltrasonicDicomService(
IRepository<Trial> _trialRepository,
IRepository<DicomStudy> _studyRepository,
IRepository<Dictionary> _dictionaryRepository,
IRepository<VisitTask> _visitTaskRepository) : BaseService
{
public readonly IRepository<Trial> _trialRepository;
public readonly IRepository<DicomStudy> _studyRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
public readonly IRepository<VisitTask> _visitTaskRepository;
public UltrasonicDicomService(IRepository<Trial> trialRepository, IRepository<DicomStudy> studyRepository, IRepository<VisitTask> visitTaskRepository, IRepository<Dictionary> dictionaryRepository)
{
_trialRepository = trialRepository;
_studyRepository = studyRepository;
_visitTaskRepository = visitTaskRepository;
_dictionaryRepository = dictionaryRepository;
}
/// <summary>
/// 项目列表

View File

@ -17,107 +17,15 @@ using System.Linq.Dynamic.Core;
namespace IRaCIS.Core.Application
{
[ApiExplorerSettings(GroupName = "Trial")]
public class PersonalWorkstation : BaseService
public class PersonalWorkstation(
IRepository<Trial> _trialRepository,
IRepository<TrialDocument> _trialDocumentRepository,
IRepository<SystemDocument> _systemDocumentRepository,
IClinicalAnswerService _clinicalAnswerService,
IRepository<SystemNotice> _systemNoticeRepository) : BaseService
{
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TrialUser> _trialUserRepository;
private readonly IRepository<TrialDocument> _trialDocumentRepository;
private readonly IRepository<SystemDocument> _systemDocumentRepository;
private readonly IRepository<ReadModule> _readModuleRepository;
private readonly IClinicalAnswerService _clinicalAnswerService;
private readonly IRepository<SystemNotice> _systemNoticeRepository;
public PersonalWorkstation(IRepository<Trial> trialRepository, IRepository<TrialUser> trialUserRepository, IRepository<TrialDocument> trialDocumentRepository,
IRepository<SystemDocument> systemDocumentRepository,
IRepository<ReadModule> readModuleRepository,
IClinicalAnswerService clinicalAnswerService,
IRepository<SystemNotice> systemNoticeRepository)
{
_trialRepository = trialRepository;
_trialUserRepository = trialUserRepository;
_trialDocumentRepository = trialDocumentRepository;
_systemDocumentRepository = systemDocumentRepository;
this._readModuleRepository = readModuleRepository;
this._clinicalAnswerService = clinicalAnswerService;
_systemNoticeRepository = systemNoticeRepository;
}
///// <summary>
///// 个人面板 统计值
///// </summary>
///// <returns></returns>
//public async Task<PersonalStataDTO> GetBasicStat()
//{
// return new PersonalStataDTO()
// {
// //正参与的数量
// TrialCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
// ? await _trialRepository.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)
// : await _trialUserRepository.AsQueryable(true).Where(t => t.UserId == _userInfo.Id && t.Trial.IsDeleted)
// .CountAsync(),
// TotalNeedSignTrialDocCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
// ? 0
// : await _trialDocumentRepository.AsQueryable(true).Where(t => t.Trial.TrialStatusStr != StaticData.TrialState.TrialStopped)
// .Where(t => t.Trial.TrialUserList.Any(t => t.UserId == _userInfo.Id))
// .Where(t => t.IsDeleted == false || (t.IsDeleted == true && t.TrialDocConfirmedUserList.Any(t => t.ConfirmUserId == _userInfo.Id && t.ConfirmTime != null)))
// .SelectMany(t => t.NeedConfirmedUserTypeList)
// .CountAsync(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId),
// HaveSignedTrialDocCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
// ? 0
// //废除了 已经签署了也要算进去
// : await _trialDocumentRepository.AsQueryable(true).Where(t => t.Trial.TrialStatusStr != StaticData.TrialState.TrialStopped)
// .Where(t => t.Trial.TrialUserList.Any(t => t.UserId == _userInfo.Id))
// .Where(t => t.NeedConfirmedUserTypeList.Any(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId))
// .SelectMany(t => t.TrialDocConfirmedUserList)
// .CountAsync(t => t.ConfirmUserId == _userInfo.Id && t.ConfirmTime != null),
// TotalNeedSignSystemDocCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
// ? 0
// : await _systemDocumentRepository
// .Where(t => t.IsDeleted == false || (t.IsDeleted == true && t.SystemDocConfirmedUserList.Any(t => t.ConfirmUserId == _userInfo.Id && t.ConfirmTime != null)))
// .SelectMany(t => t.NeedConfirmedUserTypeList)
// .CountAsync(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId),
// HaveSignedSystemDocCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
// ? 0
// : await _systemDocumentRepository
// .Where(t => t.NeedConfirmedUserTypeList.Any(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId))
// .SelectMany(t => t.SystemDocConfirmedUserList)
// .CountAsync(t => t.ConfirmUserId == _userInfo.Id && t.ConfirmTime != null),
// TotalApprovalRequiredCount =
// _userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.APM ?
// _trialRepository.Where(t => t.TrialUserList.Any(t => t.UserId == _userInfo.Id)).SelectMany(t => t.TrialSiteSurveyList).Where(t => t.State == TrialSiteSurveyEnum.SPMApproved).Count()
// : _userInfo.UserTypeEnumInt == (int)UserTypeEnum.CPM || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SPM
// ? _trialRepository.Where(t => t.TrialUserList.Any(t => t.UserId == _userInfo.Id)).SelectMany(t => t.TrialSiteSurveyList).Where(t => t.State == TrialSiteSurveyEnum.CRCSubmitted).Count()
// : 0,
// TotalSystemNoticeCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
// ? 0 : await _systemNoticeRepository.Where(t => t.NoticeUserTypeList.Any(t => t.UserTypeId == _userInfo.UserTypeId) && t.NoticeStateEnum == Domain.Share.Management.SystemNotice_NoticeStateEnum.HavePublished)
// .CountAsync(),
// NeedReadSystemNoticeCount = _userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin
// ? 0 : await _systemNoticeRepository.Where(t => t.NoticeUserTypeList.Any(t => t.UserTypeId == _userInfo.UserTypeId) && t.NoticeStateEnum == Domain.Share.Management.SystemNotice_NoticeStateEnum.HavePublished
// && !t.NoticeUserReadList.Any(t => t.CreateUserId == _userInfo.Id))
// .Where(t => t.EndDate == null || t.EndDate != null && t.EndDate > DateTime.Now)
// .CountAsync(),
// };
//}
/// <summary>

View File

@ -29,78 +29,27 @@ using ZiggyCreatures.Caching.Fusion;
namespace IRaCIS.Core.Application
{
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialConfigService : BaseService, ITrialConfigService
public class TrialConfigService(
IRepository<Trial> _trialRepository,
IRepository<TrialQCQuestion> _trialQCQuestionRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository,
IRepository<TrialCriterionDictionaryCode> _trialCriterionDictionaryCode,
IRepository<SystemCriterionDictionaryCode> _systemCriterionDictionaryCode,
IRepository<ReadingQuestionCriterionSystem> _readingQuestionCriterionSystemRepository,
IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository,
IRepository<ReadingCriterionPage> _readingCriterionPageRepository,
IOrganInfoService _iOrganInfoService,
IRepository<ReadingSystemCriterionDictionary> _readingCriterionDictionaryRepository,
IRepository<ReadingTrialCriterionDictionary> _readingTrialCriterionDictionaryRepository,
IReadingQuestionService iReadingQuestionService,
IRepository<TrialCriterionAdditionalAssessmentType> _trialCriterionAdditionalAssessmentTypeRepository,
IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswer,
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository) : BaseService, ITrialConfigService
{
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TrialQCQuestion> _trialQCQuestionRepository;
private readonly IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository;
private readonly IRepository<ReadingQuestionTrial> _readingQuestionTrialRepository;
private readonly IRepository<TrialCriterionDictionaryCode> _trialCriterionDictionaryCode;
private readonly IRepository<SystemCriterionDictionaryCode> _systemCriterionDictionaryCode;
private readonly IRepository<ReadingQuestionCriterionSystem> _readingQuestionCriterionSystemRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<ReadingCriterionPage> _readingCriterionPageRepository;
private readonly IOrganInfoService _iOrganInfoService;
private readonly IRepository<TaskAllocationRule> _taskAllocationRuleRepository;
private readonly IRepository<ReadingSystemCriterionDictionary> _readingCriterionDictionaryRepository;
private readonly IRepository<ReadingTrialCriterionDictionary> _readingTrialCriterionDictionaryRepository;
private readonly IReadingQuestionService iReadingQuestionService;
private readonly IRepository<TrialCriterionAdditionalAssessmentType> _trialCriterionAdditionalAssessmentTypeRepository;
private readonly IRepository<ReadingTaskQuestionAnswer> _readingTaskQuestionAnswer;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingTableQuestionTrial> _readingTableQuestionTrialRepository;
public TrialConfigService(IRepository<Trial> trialRepository,
IRepository<TrialQCQuestion> trialQCQuestionRepository,
IRepository<ReadingQuestionCriterionTrial> readingQuestionCriterionTrialRepository,
IRepository<ReadingQuestionTrial> readingQuestionTrialRepository,
IRepository<TrialCriterionDictionaryCode> trialCriterionDictionaryCode,
IRepository<SystemCriterionDictionaryCode> systemCriterionDictionaryCode,
IRepository<ReadingQuestionCriterionSystem> readingQuestionCriterionSystemRepository,
IRepository<ClinicalDataTrialSet> clinicalDataTrialSetRepository,
IRepository<ReadingCriterionPage> readingCriterionPageRepository,
IRepository<TaskAllocationRule> taskAllocationRuleRepository,
IRepository<ReadingSystemCriterionDictionary> readingCriterionDictionaryRepository,
IRepository<ReadingTrialCriterionDictionary> readingTrialCriterionDictionaryRepository,
IReadingQuestionService iReadingQuestionService,
IOrganInfoService iOrganInfoService,
IRepository<TrialCriterionAdditionalAssessmentType> trialCriterionAdditionalAssessmentTypeRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingTableQuestionTrial> readingTableQuestionTrialRepository,
IRepository<ReadingTableQuestionAnswer> readingTableQuestionAnswerRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingTaskQuestionAnswer> readingTaskQuestionAnswer
)
{
_trialCriterionAdditionalAssessmentTypeRepository = trialCriterionAdditionalAssessmentTypeRepository;
_trialRepository = trialRepository;
_taskAllocationRuleRepository = taskAllocationRuleRepository;
this._readingCriterionDictionaryRepository = readingCriterionDictionaryRepository;
this._readingTrialCriterionDictionaryRepository = readingTrialCriterionDictionaryRepository;
this.iReadingQuestionService = iReadingQuestionService;
this._trialQCQuestionRepository = trialQCQuestionRepository;
this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository;
this._readingQuestionTrialRepository = readingQuestionTrialRepository;
this._trialCriterionDictionaryCode = trialCriterionDictionaryCode;
this._systemCriterionDictionaryCode = systemCriterionDictionaryCode;
this._readingQuestionCriterionSystemRepository = readingQuestionCriterionSystemRepository;
this._clinicalDataTrialSetRepository = clinicalDataTrialSetRepository;
this._iOrganInfoService = iOrganInfoService;
this._readingTableQuestionTrialRepository = readingTableQuestionTrialRepository;
this._readingCriterionPageRepository = readingCriterionPageRepository;
this._visitTaskRepository = visitTaskRepository;
this._readingTableQuestionAnswerRepository = readingTableQuestionAnswerRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingTaskQuestionAnswer = readingTaskQuestionAnswer;
}
/// <summary>
/// 阅片信息签名验证接口

View File

@ -19,18 +19,12 @@ namespace IRaCIS.Core.Application.Service
/// DicomAEService
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialDicomAEService : BaseService, IDicomAEService
public class TrialDicomAEService(
IRepository<TrialDicomAE> _dicomAERepository,
IRepository<Trial> _trialRepository) : BaseService, IDicomAEService
{
private readonly IRepository<TrialDicomAE> _dicomAERepository;
private readonly IRepository<Trial> _trialRepository;
public TrialDicomAEService(IRepository<TrialDicomAE> dicomAERepository, IRepository<Trial> trialRepository)
{
_trialRepository = trialRepository;
_dicomAERepository = dicomAERepository;
}
[HttpPost]
public async Task<IResponseOutput<PageOutput<DicomAEView>>> GetDicomAEList(DicomAEQuery inQuery)
{

View File

@ -24,29 +24,14 @@ namespace IRaCIS.Core.Application.Service
/// 项目外部人员 录入流程相关
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialExternalUserService : BaseService, ITrialExternalUserService
public class TrialExternalUserService(
IRepository<TrialExternalUser> _trialExternalUseRepository,
IRepository<User> _userRepository,
IRepository<TrialUser> _trialUserRepository,
IMailVerificationService _mailVerificationService,
IDistributedLockProvider _distributedLockProvider) : BaseService, ITrialExternalUserService
{
private readonly IRepository<TrialExternalUser> _trialExternalUseRepository;
private readonly IRepository<User> _userRepository;
private readonly IRepository<TrialUser> _trialUserRepository;
private readonly IRepository<TrialSiteUserSurvey> _trialSiteSurveyUserRepository;
private readonly IRepository<TrialSiteUser> _trialSiteUserRepository;
private readonly IMailVerificationService _mailVerificationService;
private readonly IDistributedLockProvider _distributedLockProvider;
public TrialExternalUserService(IRepository<TrialExternalUser> trialExternalUseRepository, IRepository<User> userRepository, IRepository<TrialUser> trialUserRepository,
IRepository<TrialSiteUserSurvey> trialSiteSurveyUserRepository, IRepository<TrialSiteUser> trialSiteUserRepository,
IMailVerificationService mailVerificationService, IDistributedLockProvider distributedLockProvider)
{
_trialExternalUseRepository = trialExternalUseRepository;
_userRepository = userRepository;
_trialUserRepository = trialUserRepository;
_trialSiteSurveyUserRepository = trialSiteSurveyUserRepository;
_trialSiteUserRepository = trialSiteUserRepository;
_mailVerificationService = mailVerificationService;
_distributedLockProvider = distributedLockProvider;
}

View File

@ -14,19 +14,11 @@ using DocumentFormat.OpenXml.Office2010.ExcelAc;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialMaintenanceService : BaseService, ITrialMaintenanceService
public class TrialMaintenanceService(
IRepository<TrialUser> _trialUseRepository,
IRepository<Trial> _trialRepository) : BaseService, ITrialMaintenanceService
{
private readonly IRepository<TrialUser> _trialUseRepository;
private readonly IRepository<Trial> _trialRepository;
public TrialMaintenanceService(IRepository<TrialUser> trialUseRepository, IRepository<Trial> trialRepository)
{
_trialUseRepository = trialUseRepository;
_trialRepository = trialRepository;
}
#region 移动废弃
///// <summary>

View File

@ -20,24 +20,17 @@ namespace IRaCIS.Application.Services
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialService : BaseService, ITrialService
public class TrialService(
IRepository<Trial> _trialRepository,
IRepository<TrialUser> _trialUserRepository,
IOptionsMonitor<ServiceVerifyConfigOption> _verifyConfig) : BaseService, ITrialService
{
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<TrialUser> _trialUserRepository;
private readonly IOptionsMonitor<ServiceVerifyConfigOption> _verifyConfig;
public bool TrialExpeditedChange { get; set; } = false;
public TrialService(IRepository<Trial> trialRepository,
IRepository<TrialUser> trialUserRepository, IOptionsMonitor<ServiceVerifyConfigOption> verifyConfig
)
{
_verifyConfig = verifyConfig;
_trialRepository = trialRepository;
this._trialUserRepository = trialUserRepository;
}
/// <summary>
/// 分页获取临床项目列表 默认后台加急状态为3 查所有的

View File

@ -14,15 +14,10 @@ namespace IRaCIS.Core.Application.Service
/// TrialSiteDicomAEService
/// </summary>
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialSiteDicomAEService : BaseService, ITrialSiteDicomAEService
public class TrialSiteDicomAEService(IRepository<TrialSiteDicomAE> _trialSiteDicomAERepository) : BaseService, ITrialSiteDicomAEService
{
private readonly IRepository<TrialSiteDicomAE> _trialSiteDicomAERepository;
public TrialSiteDicomAEService(IRepository<TrialSiteDicomAE> trialSiteDicomAERepository)
{
_trialSiteDicomAERepository = trialSiteDicomAERepository;
}
[HttpPost]
public async Task<List<TrialSiteDicomAEView>> GetTrialSiteDicomAEList(TrialSiteDicomAEQuery inQuery)

View File

@ -14,21 +14,13 @@ using System.Linq;
namespace IRaCIS.Core.Application.Services
{
[ApiExplorerSettings(GroupName = "Trial")]
public class TrialMaintenanceService : BaseService, ITrialSiteService
public class TrialMaintenanceService(
IRepository<TrialSite> _trialSiteRepository,
IRepository<TrialSiteUser> _trialSiteUserRepository,
IRepository<Site> _siteRepository,
IRepository<Trial> _trialRepository) : BaseService, ITrialSiteService
{
private readonly IRepository<TrialSite> _trialSiteRepository;
private readonly IRepository<TrialSiteUser> _trialSiteUserRepository;
private readonly IRepository<Site> _siteRepository;
private readonly IRepository<Trial> _trialRepository;
public TrialMaintenanceService(IRepository<TrialSite> trialSiteRepository, IRepository<TrialSiteUser> trialSiteUserRepository
, IRepository<Site> siteRepository, IRepository<Trial> trialRepository)
{
_trialSiteRepository = trialSiteRepository;
_trialSiteUserRepository = trialSiteUserRepository;
_siteRepository = siteRepository;
_trialRepository = trialRepository;
}

View File

@ -46,27 +46,17 @@ using DocumentFormat.OpenXml.InkML;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Trial")]
public class PatientService : BaseService
public class PatientService(
IRepository<Trial> _trialRepository,
IRepository<SCPPatient> _patientRepository,
IRepository<SCPStudy> _scpStudyRepository,
IRepository<Subject> _subjectRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<Dictionary> _dictionaryRepository,
IDistributedLockProvider _distributedLockProvider) : BaseService
{
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<SCPPatient> _patientRepository;
private readonly IRepository<SCPStudy> _scpStudyRepository;
private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<Dictionary> _dictionaryRepository;
private readonly IDistributedLockProvider _distributedLockProvider;
public PatientService(IRepository<SCPStudy> studyRepository, IRepository<Dictionary> dictionaryRepository, IRepository<Trial> trialRepository, IRepository<SCPPatient> patientRepository, IRepository<Subject> subjectRepository, IRepository<SubjectVisit> subjectVisitRepository, IDistributedLockProvider distributedLockProvider)
{
_dictionaryRepository = dictionaryRepository;
_scpStudyRepository = studyRepository;
_trialRepository = trialRepository;
_patientRepository = patientRepository;
_subjectRepository = subjectRepository;
_subjectVisitRepository = subjectVisitRepository;
_distributedLockProvider = distributedLockProvider;
}
[HttpGet]

View File

@ -11,16 +11,11 @@ using IRaCIS.Core.Infrastructure;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Trial")]
public class SubjectService : BaseService, ISubjectService
public class SubjectService(
IRepository<Subject> _subjectRepository,
IRepository<SubjectVisit> _subjectVisitRepository) : BaseService, ISubjectService
{
private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
public SubjectService(IRepository<Subject> subjectRepository, IRepository<SubjectVisit> subjectVisitRepository)
{
_subjectRepository = subjectRepository;
_subjectVisitRepository = subjectVisitRepository;
}
/// <summary>
/// 添加或更新受试者信息[New]

View File

@ -20,67 +20,20 @@ using NPOI.SS.Formula.Functions;
namespace IRaCIS.Core.Application.Services
{
[ApiExplorerSettings(GroupName = "Trial")]
public class SubjectVisitService : BaseService, ISubjectVisitService
public class SubjectVisitService(
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<Trial> _trialRepository,
IRepository<NoneDicomStudy> _noneDicomStudyRepository,
IRepository<VisitTask> _visitTaskRepository,
IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository,
IRepository<ReadingCustomTag> _readingCustomTagRepository,
IRepository<NoneDicomStudyFile> _noneDicomStudyFileRepository,
IRepository<Subject> _subjectRepository,
IServiceProvider _serviceProvider,
IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository
) : BaseService, ISubjectVisitService
{
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<ClinicalDataTrialSet> _clinicalDataTrialSetRepository;
private readonly IRepository<ReadingClinicalData> _readingClinicalDataRepository;
private readonly IRepository<ReadModule> _readModuleRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<ReadingPeriodSet> _readingPeriodSetRepository;
private readonly IRepository<NoneDicomStudy> _noneDicomStudyRepository;
private readonly IRepository<DicomInstance> _dicomInstanceRepository;
private readonly IRepository<VisitTask> _visitTaskRepository;
private readonly IRepository<ReadingTableAnswerRowInfo> _readingTableAnswerRowInfoRepository;
private readonly IRepository<ReadingCustomTag> _readingCustomTagRepository;
private readonly IRepository<NoneDicomStudyFile> _noneDicomStudyFileRepository;
private readonly IRepository<ReadingPeriodPlan> _readingPeriodPlanRepository;
private readonly IRepository<Subject> _subjectRepository;
private readonly IServiceProvider iServiceProvider;
private readonly IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository;
private readonly IRepository<SubjectCriteriaEvaluationVisitStudyFilter> _subjectCriteriaEvaluationVisitStudyFilterRepository;
public SubjectVisitService(IRepository<SubjectVisit> subjectVisitRepository,
IRepository<ClinicalDataTrialSet> clinicalDataTrialSetRepository,
IRepository<ReadingClinicalData> readingClinicalDataRepository,
IRepository<ReadModule> readModuleRepository,
IRepository<Trial> trialRepository,
IServiceProvider IServiceProvider,
IRepository<ReadingPeriodSet> readingPeriodSetRepository,
IRepository<NoneDicomStudy> noneDicomStudyRepository,
IRepository<DicomInstance> dicomInstanceRepository,
IRepository<VisitTask> visitTaskRepository,
IRepository<ReadingTableAnswerRowInfo> readingTableAnswerRowInfoRepository,
IRepository<ReadingCustomTag> readingCustomTagRepository,
IRepository<NoneDicomStudyFile> noneDicomStudyFileRepository,
IRepository<ReadingPeriodPlan> readingPeriodPlanRepository,
IRepository<Subject> subjectRepository,
IRepository<ReadingQuestionCriterionTrial> trialReadingCriterionRepository,
IRepository<SubjectCriteriaEvaluationVisitStudyFilter> subjectCriteriaEvaluationVisitStudyFilterRepository
)
{
this.iServiceProvider = IServiceProvider;
_subjectVisitRepository = subjectVisitRepository;
this._clinicalDataTrialSetRepository = clinicalDataTrialSetRepository;
this._readingClinicalDataRepository = readingClinicalDataRepository;
this._readModuleRepository = readModuleRepository;
this._trialRepository = trialRepository;
this._readingPeriodSetRepository = readingPeriodSetRepository;
this._noneDicomStudyRepository = noneDicomStudyRepository;
this._dicomInstanceRepository = dicomInstanceRepository;
this._visitTaskRepository = visitTaskRepository;
this._readingTableAnswerRowInfoRepository = readingTableAnswerRowInfoRepository;
this._readingCustomTagRepository = readingCustomTagRepository;
this._noneDicomStudyFileRepository = noneDicomStudyFileRepository;
this._readingPeriodPlanRepository = readingPeriodPlanRepository;
_subjectRepository = subjectRepository;
_trialReadingCriterionRepository = trialReadingCriterionRepository;
_subjectCriteriaEvaluationVisitStudyFilterRepository = subjectCriteriaEvaluationVisitStudyFilterRepository;
}
[HttpPost]
[TypeFilter(typeof(TrialResourceFilter), Arguments = new object[] { "AfterStopCannNotOpt" })]
@ -360,7 +313,7 @@ namespace IRaCIS.Core.Application.Services
var pastResultList = await this.iServiceProvider.GetService<IReadingImageTaskService>().GetReadingPastResultList(new GetReadingPastResultListInDto()
var pastResultList = await _serviceProvider.GetService<IReadingImageTaskService>().GetReadingPastResultList(new GetReadingPastResultListInDto()
{
VisitTaskId = inDto.VisitTaskId
});

View File

@ -11,27 +11,15 @@ using MiniExcelLibs;
namespace IRaCIS.Application.Services
{
[ApiExplorerSettings(GroupName = "Trial")]
public class VisitPlanService : BaseService, IVisitPlanService
public class VisitPlanService(
IRepository<VisitStage> _visitStageRepository,
IRepository<Trial> _trialRepository,
IRepository<SubjectVisit> _subjectVisitRepository,
IRepository<VisitPlanInfluenceStudy> _influnceRepository,
IRepository<Subject> _subjectRepository,
IRepository<VisitPlanInfluenceStat> _visitPlanInfluenceStatRepository) : BaseService, IVisitPlanService
{
private readonly IRepository<VisitStage> _visitStageRepository;
private readonly IRepository<Trial> _trialRepository;
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IRepository<VisitPlanInfluenceStudy> _influnceRepository;
private readonly IRepository<Subject> _subjectRepository;
private readonly IRepository<VisitPlanInfluenceStat> _visitPlanInfluenceStatRepository;
public VisitPlanService(IRepository<VisitStage> visitStageRepository, IRepository<Trial> trialRepository, IRepository<SubjectVisit> subjectVisitRepository,
IRepository<VisitPlanInfluenceStudy> visitPlanInfluenceStudy, IRepository<Subject> subjectRepository, IRepository<VisitPlanInfluenceStat> visitPlanInfluenceStatRepository)
{
_visitStageRepository = visitStageRepository;
_trialRepository = trialRepository;
_subjectVisitRepository = subjectVisitRepository;
_influnceRepository = visitPlanInfluenceStudy;
_visitPlanInfluenceStatRepository = visitPlanInfluenceStatRepository;
_subjectRepository = subjectRepository;
}
///暂时不用

Some files were not shown because too many files have changed in this diff Show More