From fe7be9b16997e38ff75b4236df0d1c76c3359dce Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Wed, 25 May 2022 14:16:38 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=B7=A5=E4=BD=9C=E9=87=8F?= =?UTF-8?q?=E5=92=8C=E9=98=85=E7=89=87=E4=BA=BA=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IRaCIS.Core.Application/Auth/IRaCISPolicy.cs | 4 +++- .../Service/Visit/SubjectVisitService.cs | 1 + .../Service/WorkLoad/DoctorWorkloadService.cs | 6 ++++++ IRaCIS.Core.Application/Service/WorkLoad/EnrollService.cs | 7 +++++++ 4 files changed, 17 insertions(+), 1 deletion(-) diff --git a/IRaCIS.Core.Application/Auth/IRaCISPolicy.cs b/IRaCIS.Core.Application/Auth/IRaCISPolicy.cs index d772da97f..1a324502d 100644 --- a/IRaCIS.Core.Application/Auth/IRaCISPolicy.cs +++ b/IRaCIS.Core.Application/Auth/IRaCISPolicy.cs @@ -12,7 +12,7 @@ namespace IRaCIS.Core.Application.Auth { public const string PM_APM = "PM_APM"; - public const string PM_APM_CRC = "PM_APMAndCRC"; + public const string PM_APM_CRC = "PM_APM_CRC"; public const string CRC_IQC = "CRC_IQC"; @@ -24,6 +24,8 @@ namespace IRaCIS.Core.Application.Auth public const string IQC = "IQC"; + public const string PM_APM_SPM_CPM = "PM_APM_SPM_CPM"; + public const string PM_APM_CRC_QC = "PM_APM_CRC_QC"; public const string SPM_CPM = "SPMAndCPM"; diff --git a/IRaCIS.Core.Application/Service/Visit/SubjectVisitService.cs b/IRaCIS.Core.Application/Service/Visit/SubjectVisitService.cs index 118d6520f..6d9bb4aee 100644 --- a/IRaCIS.Core.Application/Service/Visit/SubjectVisitService.cs +++ b/IRaCIS.Core.Application/Service/Visit/SubjectVisitService.cs @@ -27,6 +27,7 @@ namespace IRaCIS.Core.Application.Services [HttpPost] [TypeFilter(typeof(TrialResourceFilter))] [UnitOfWork] + [Authorize(Policy = IRaCISPolicy.CRC)] public async Task> AddOrUpdateSV(SubjectVisitCommand svCommand) { diff --git a/IRaCIS.Core.Application/Service/WorkLoad/DoctorWorkloadService.cs b/IRaCIS.Core.Application/Service/WorkLoad/DoctorWorkloadService.cs index 7b362b8f5..c36243fac 100644 --- a/IRaCIS.Core.Application/Service/WorkLoad/DoctorWorkloadService.cs +++ b/IRaCIS.Core.Application/Service/WorkLoad/DoctorWorkloadService.cs @@ -6,6 +6,8 @@ using IRaCIS.Core.Domain.Share; using System.Linq.Expressions; using IRaCIS.Core.Application.Filter; using Microsoft.AspNetCore.Mvc; +using Microsoft.AspNetCore.Authorization; +using IRaCIS.Core.Application.Auth; namespace IRaCIS.Application.Services { @@ -50,6 +52,7 @@ namespace IRaCIS.Application.Services [HttpPost("{trialId}")] [TypeFilter(typeof(TrialResourceFilter))] + [Authorize(Policy = IRaCISPolicy.PM_APM)] public async Task UploadReviewerAckSOW(Guid trialId, ReviewerAckDTO attachmentViewModel) { @@ -79,6 +82,7 @@ namespace IRaCIS.Application.Services [HttpDelete, Route("{trialId}/{doctorId}/{attachmentId}")] [TypeFilter(typeof(TrialResourceFilter))] + [Authorize(Policy = IRaCISPolicy.PM_APM)] public async Task DeleteReviewerAckSOW(Guid trialId, Guid doctorId, Guid attachmentId) { var success1 = await _attachmentRepository.BatchDeleteNoTrackingAsync(a => a.Id == attachmentId); @@ -96,6 +100,7 @@ namespace IRaCIS.Application.Services /// [HttpPost("{trialId}/{doctorId}/{type}")] [TypeFilter(typeof(TrialResourceFilter))] + [Authorize(Policy = IRaCISPolicy.PM_APM)] public async Task UpdateReviewerReadingType(Guid trialId, Guid doctorId, int type) { var success2 = await _enrollRepository.BatchUpdateNoTrackingAsync(t => t.TrialId == trialId && t.DoctorId == doctorId, u => @@ -490,6 +495,7 @@ namespace IRaCIS.Application.Services /// /// 添加或更新工作量 /// + [Authorize(Policy = IRaCISPolicy.PM_APM)] public async Task AddOrUpdateWorkload(WorkloadCommand workLoadAddOrUpdateModel, Guid userId) { diff --git a/IRaCIS.Core.Application/Service/WorkLoad/EnrollService.cs b/IRaCIS.Core.Application/Service/WorkLoad/EnrollService.cs index 17f157ad0..7c0771ab6 100644 --- a/IRaCIS.Core.Application/Service/WorkLoad/EnrollService.cs +++ b/IRaCIS.Core.Application/Service/WorkLoad/EnrollService.cs @@ -4,6 +4,8 @@ using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Application.Filter; using Microsoft.AspNetCore.Mvc; using IRaCIS.Core.Application.Service.WorkLoad.DTO; +using Microsoft.AspNetCore.Authorization; +using IRaCIS.Core.Application.Auth; namespace IRaCIS.Application.Services { @@ -124,6 +126,7 @@ namespace IRaCIS.Application.Services [HttpPost("{trialId:guid}")] [TypeFilter(typeof(TrialResourceFilter))] + [Authorize(Policy = IRaCISPolicy.PM_APM_SPM_CPM)] public async Task SelectReviewers(Guid trialId, Guid[] doctorIdArray) { var trial = await _trialRepository.FirstOrDefaultAsync(t => t.Id == trialId); @@ -177,6 +180,7 @@ namespace IRaCIS.Application.Services [HttpPost("{trialId:guid}/{commitState:int}")] [TypeFilter(typeof(TrialResourceFilter))] + [Authorize(Policy = IRaCISPolicy.PM_APM_SPM_CPM)] public async Task SubmitReviewer(Guid trialId, Guid[] doctorIdArray, int commitState) { @@ -256,6 +260,7 @@ namespace IRaCIS.Application.Services [HttpPost("{trialId:guid}/{auditState:int}")] [TypeFilter(typeof(TrialResourceFilter))] + [Authorize(Policy = IRaCISPolicy.PM_APM_SPM_CPM)] public async Task ApproveReviewer(Guid trialId, Guid[] doctorIdArray, int auditState) { @@ -341,6 +346,7 @@ namespace IRaCIS.Application.Services [HttpPost("{trialId:guid}/{confirmState:int}")] [TypeFilter(typeof(TrialResourceFilter))] + [Authorize(Policy = IRaCISPolicy.PM_APM_SPM_CPM)] public async Task ConfirmReviewer(Guid trialId, Guid[] doctorIdArray, int confirmState) { //var trial = _trialRepository.FirstOrDefault(t => t.Id == trialId); @@ -413,6 +419,7 @@ namespace IRaCIS.Application.Services /// [HttpPost("{trialId:guid}/{doctorId:guid}/{optType:int}")] [TypeFilter(typeof(TrialResourceFilter))] + [Authorize(Policy = IRaCISPolicy.PM_APM_SPM_CPM)] public async Task EnrollBackOrOut(Guid trialId, Guid doctorId, int optType, DateTime? outEnrollTime) { var intoGroupItem = await _enrollRepository.FirstOrDefaultAsync(t => t.TrialId == trialId && t.DoctorId == doctorId);