From 671d43a3f85cea2ee77549238c7c4139a391245b Mon Sep 17 00:00:00 2001 From: hongawen <83944980@qq.com> Date: Tue, 30 Jun 2026 15:57:54 +0800 Subject: [PATCH] =?UTF-8?q?refactor(permission):=20=E7=AE=80=E5=8C=96?= =?UTF-8?q?=E5=AF=B9=E8=B1=A1=E6=9D=83=E9=99=90=E6=A3=80=E6=9F=A5=E9=85=8D?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除产品需求查询权限常量定义 - 移除项目需求查询权限常量定义 - 将权限检查注解从具体权限改为通用可访问性检查 - 统一所有查询方法的权限验证方式 - 简化权限检查逻辑,提高代码可维护性 - 减少权限常量定义,降低配置复杂度 --- .../ProductRequirementServiceImpl.java | 28 ++++++------------- .../ProjectRequirementServiceImpl.java | 19 ++++--------- .../ProjectStatusBoardServiceImpl.java | 9 ++---- .../ProjectExecutionAssigneeServiceImpl.java | 6 ++-- .../ProjectExecutionServiceImpl.java | 9 ++---- .../task/ProjectTaskAggregateServiceImpl.java | 12 +++----- .../project/task/ProjectTaskServiceImpl.java | 9 ++---- .../assignee/TaskAssigneeServiceImpl.java | 6 ++-- .../task/worklog/TaskWorklogServiceImpl.java | 3 +- .../review/RequirementReviewServiceImpl.java | 6 ++-- 10 files changed, 35 insertions(+), 72 deletions(-) diff --git a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/product/ProductRequirementServiceImpl.java b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/product/ProductRequirementServiceImpl.java index 088176b..eec296a 100644 --- a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/product/ProductRequirementServiceImpl.java +++ b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/product/ProductRequirementServiceImpl.java @@ -82,7 +82,6 @@ public class ProductRequirementServiceImpl implements ProductRequirementService // 权限常量 private static final String PRODUCT_CREATE_PERMISSION = "project:product:requirement:create"; - private static final String PRODUCT_QUERY_PERMISSION = "project:product:requirement:query"; private static final String PRODUCT_UPDATE_PERMISSION = "project:product:requirement:update"; private static final String PRODUCT_STATUS_PERMISSION = "project:product:requirement:status"; private static final String PRODUCT_REVIEW_PERMISSION = "project:product:requirement:review"; @@ -243,16 +242,14 @@ public class ProductRequirementServiceImpl implements ProductRequirementService } @Override - @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#productId", - permission = PRODUCT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#productId", accessible = true) public ProductRequirementRespVO getRequirement(Long id, Long productId) { ProductRequirementDO requirement = validateRequirementExists(id); return buildRequirementRespVO(requirement); } @Override - @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#pageReqVO.productId", - permission = PRODUCT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#pageReqVO.productId", accessible = true) public PageResult getRequirementPage(ProductRequirementPageReqVO pageReqVO) { // 处理模块ID条件:支持递归查询子模块 if (pageReqVO.getModuleId() != null) { @@ -275,8 +272,7 @@ public class ProductRequirementServiceImpl implements ProductRequirementService } @Override - @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#pageReqVO.productId", - permission = PRODUCT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#pageReqVO.productId", accessible = true) public PageResult getRequirementTree(ProductRequirementPageReqVO pageReqVO) { Long moduleId = pageReqVO.getModuleId(); Long productId = pageReqVO.getProductId(); @@ -340,8 +336,7 @@ public class ProductRequirementServiceImpl implements ProductRequirementService } @Override - @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#productId", - permission = PRODUCT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#productId", accessible = true) public ProductRequirementDashboardRespVO getRequirementDashboard(Long productId) { List requirements = requirementMapper.selectListByProductId(productId); Map statusModelMap = getStatusModelMap(); @@ -1038,8 +1033,7 @@ public class ProductRequirementServiceImpl implements ProductRequirementService } @Override - @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#productId", - permission = PRODUCT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#productId", accessible = true) public List getAllowedTransitions(Long requirementId, Long productId) { ProductRequirementDO requirement = validateRequirementExists(requirementId); // 当产品需求已指派并生成项目需求后,产品需求端不再返回动作按钮 @@ -1071,8 +1065,7 @@ public class ProductRequirementServiceImpl implements ProductRequirementService } @Override - @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#reqVO.productId", - permission = PRODUCT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#reqVO.productId", accessible = true) public List getAllowedTransitionsBatch(ProductRequirementBatchReqVO reqVO) { List requirements = getBatchRequirements(reqVO.getRequirementIds(), reqVO.getProductId()); Set dispatchedRequirementIds = getDispatchedProductRequirementIds(requirements); @@ -1093,16 +1086,14 @@ public class ProductRequirementServiceImpl implements ProductRequirementService } @Override - @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#productId", - permission = PRODUCT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#productId", accessible = true) public boolean hasDispatchedProjectRequirement(Long requirementId, Long productId) { ProductRequirementDO requirement = validateRequirementExists(requirementId); return hasDispatchedProjectRequirement(requirement); } @Override - @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#reqVO.productId", - permission = PRODUCT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#reqVO.productId", accessible = true) public List hasDispatchedProjectRequirementBatch(ProductRequirementBatchReqVO reqVO) { List requirements = getBatchRequirements(reqVO.getRequirementIds(), reqVO.getProductId()); Set dispatchedRequirementIds = getDispatchedProductRequirementIds(requirements); @@ -1443,8 +1434,7 @@ public class ProductRequirementServiceImpl implements ProductRequirementService } @Override - @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#productId", - permission = PRODUCT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PRODUCT_OBJECT_TYPE, objectId = "#productId", accessible = true) public List getRequirementModuleTree(Long productId) { List modules = moduleMapper.selectListByProductId(productId); return buildModuleTree(modules, 0L); diff --git a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/ProjectRequirementServiceImpl.java b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/ProjectRequirementServiceImpl.java index b564cc5..4d3fc84 100644 --- a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/ProjectRequirementServiceImpl.java +++ b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/ProjectRequirementServiceImpl.java @@ -94,7 +94,6 @@ public class ProjectRequirementServiceImpl implements ProjectRequirementService STATUS_REJECTED, STATUS_CANCELLED); private static final String PROJECT_CREATE_PERMISSION = "project:project:requirement:create"; - private static final String PROJECT_QUERY_PERMISSION = "project:project:requirement:query"; private static final String PROJECT_UPDATE_PERMISSION = "project:project:requirement:update"; private static final String PROJECT_STATUS_PERMISSION = "project:project:requirement:status"; private static final String PROJECT_REVIEW_PERMISSION = "project:project:requirement:review"; @@ -245,8 +244,7 @@ public class ProjectRequirementServiceImpl implements ProjectRequirementService } @Override - @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#projectId", - permission = PROJECT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#projectId", accessible = true) public ProjectRequirementRespVO getRequirement(Long id, Long projectId) { ProjectRequirementDO requirement = validateRequirementExists(id); validateRequirementBelongsToProject(requirement, projectId); @@ -255,8 +253,7 @@ public class ProjectRequirementServiceImpl implements ProjectRequirementService } @Override - @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#pageReqVO.projectId", - permission = PROJECT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#pageReqVO.projectId", accessible = true) public PageResult getRequirementPage(ProjectRequirementPageReqVO pageReqVO) { if (pageReqVO.getModuleId() != null) { if (isAllRequirementsModule(pageReqVO.getModuleId())) { @@ -276,8 +273,7 @@ public class ProjectRequirementServiceImpl implements ProjectRequirementService } @Override - @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#pageReqVO.projectId", - permission = PROJECT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#pageReqVO.projectId", accessible = true) public PageResult getRequirementTree(ProjectRequirementPageReqVO pageReqVO) { Long moduleId = pageReqVO.getModuleId(); Long projectId = pageReqVO.getProjectId(); @@ -542,8 +538,7 @@ public class ProjectRequirementServiceImpl implements ProjectRequirementService } @Override - @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#projectId", - permission = PROJECT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#projectId", accessible = true) public List getAllowedTransitions(Long requirementId, Long projectId) { ProjectRequirementDO requirement = validateRequirementExists(requirementId); validateRequirementBelongsToProject(requirement, projectId); @@ -569,8 +564,7 @@ public class ProjectRequirementServiceImpl implements ProjectRequirementService } @Override - @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#reqVO.projectId", - permission = PROJECT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#reqVO.projectId", accessible = true) public List getAllowedTransitionsBatch(ProjectRequirementBatchReqVO reqVO) { List requirements = getBatchRequirements(reqVO.getRequirementIds(), reqVO.getProjectId()); Map> transitionsByStatus = getTransitionsByStatus(requirements); @@ -644,8 +638,7 @@ public class ProjectRequirementServiceImpl implements ProjectRequirementService } @Override - @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#projectId", - permission = PROJECT_QUERY_PERMISSION) + @CheckObjectPermission(objectType = PROJECT_OBJECT_TYPE, objectId = "#projectId", accessible = true) public List getRequirementModuleTree(Long projectId) { List modules = moduleMapper.selectListByProjectId(projectId); return buildModuleTree(modules, 0L); diff --git a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/ProjectStatusBoardServiceImpl.java b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/ProjectStatusBoardServiceImpl.java index 580a370..45ee1ff 100644 --- a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/ProjectStatusBoardServiceImpl.java +++ b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/ProjectStatusBoardServiceImpl.java @@ -45,24 +45,21 @@ public class ProjectStatusBoardServiceImpl implements ProjectStatusBoardService private ProjectTaskService projectTaskService; @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectExecutionConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public ProjectExecutionStatusBoardRespVO getExecutionStatusBoard(Long projectId, ProjectExecutionStatusBoardReqVO reqVO) { List statusModels = objectStatusModelMapper.selectListByObjectTypeEnabled(ProjectExecutionConstants.OBJECT_TYPE); return buildExecutionStatusBoard(projectId, reqVO, statusModels); } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public ProjectTaskStatusBoardRespVO getTaskStatusBoard(Long projectId, Long executionId, ProjectTaskStatusBoardReqVO reqVO) { List statusModels = objectStatusModelMapper.selectListByObjectTypeEnabled(ProjectTaskConstants.OBJECT_TYPE); return buildTaskStatusBoard(projectId, executionId, reqVO, statusModels); } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public ProjectTaskBoardPageRespVO getTaskBoardPage(Long projectId, Long executionId, ProjectTaskBoardPageReqVO reqVO) { List statusModels = objectStatusModelMapper .selectListByObjectTypeEnabled(ProjectTaskConstants.OBJECT_TYPE); diff --git a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/execution/ProjectExecutionAssigneeServiceImpl.java b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/execution/ProjectExecutionAssigneeServiceImpl.java index 8e6db3a..4e0a106 100644 --- a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/execution/ProjectExecutionAssigneeServiceImpl.java +++ b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/execution/ProjectExecutionAssigneeServiceImpl.java @@ -78,8 +78,7 @@ public class ProjectExecutionAssigneeServiceImpl implements ProjectExecutionAssi private AdminUserApi adminUserApi; @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectExecutionConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public List getExecutionAssigneeList(Long projectId, Long executionId) { validateProjectExists(projectId); validateExecutionExists(projectId, executionId); @@ -152,8 +151,7 @@ public class ProjectExecutionAssigneeServiceImpl implements ProjectExecutionAssi } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectExecutionConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public PageResult getExecutionAssigneeLogPage(Long projectId, Long executionId, ExecutionAssigneeLogPageReqVO reqVO) { validateProjectExists(projectId); diff --git a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/execution/ProjectExecutionServiceImpl.java b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/execution/ProjectExecutionServiceImpl.java index 868a814..a7fced6 100644 --- a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/execution/ProjectExecutionServiceImpl.java +++ b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/execution/ProjectExecutionServiceImpl.java @@ -239,8 +239,7 @@ public class ProjectExecutionServiceImpl implements ProjectExecutionService { } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectExecutionConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public PageResult getExecutionPage(Long projectId, ProjectExecutionPageReqVO reqVO) { validateProjectExists(projectId); // "我参与 / 所有"视角完全由前端发不发 reqVO.involveUserId 决定。 @@ -254,8 +253,7 @@ public class ProjectExecutionServiceImpl implements ProjectExecutionService { } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectExecutionConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public ProjectExecutionRespVO getExecutionRespVO(Long projectId, Long executionId) { ProjectExecutionDO execution = getExecution(projectId, executionId); ProjectExecutionRespVO respVO = BeanUtils.toBean(execution, ProjectExecutionRespVO.class); @@ -268,8 +266,7 @@ public class ProjectExecutionServiceImpl implements ProjectExecutionService { } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectExecutionConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public PageResult getExecutionRespVOPage(Long projectId, ProjectExecutionPageReqVO reqVO) { PageResult pageResult = getExecutionPage(projectId, reqVO); PageResult voPageResult = BeanUtils.toBean(pageResult, ProjectExecutionRespVO.class); diff --git a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/ProjectTaskAggregateServiceImpl.java b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/ProjectTaskAggregateServiceImpl.java index c7a6372..68628f3 100644 --- a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/ProjectTaskAggregateServiceImpl.java +++ b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/ProjectTaskAggregateServiceImpl.java @@ -67,8 +67,7 @@ public class ProjectTaskAggregateServiceImpl implements ProjectTaskAggregateServ // ========= page ========= @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public PageResult getAggregateTaskPage(Long projectId, ProjectTaskAggregatePageReqVO reqVO) { // 空数组语义短路:前端明确"按 0 个执行状态/执行 id 过滤" → 返空集合,不让 MyBatis 退化成"不过滤" if ((reqVO.getExecutionStatusCodes() != null && reqVO.getExecutionStatusCodes().isEmpty()) @@ -90,8 +89,7 @@ public class ProjectTaskAggregateServiceImpl implements ProjectTaskAggregateServ // ========= status-board ========= @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public ProjectTaskStatusBoardRespVO getAggregateTaskStatusBoard(Long projectId, ProjectTaskAggregateStatusBoardReqVO reqVO) { // 空数组语义短路:跳过 SQL,但保留状态列骨架(前端看板依赖全列表渲染),count 全部 0 if ((reqVO.getExecutionStatusCodes() != null && reqVO.getExecutionStatusCodes().isEmpty()) @@ -147,8 +145,7 @@ public class ProjectTaskAggregateServiceImpl implements ProjectTaskAggregateServ // ========= board-page ========= @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public ProjectTaskBoardPageRespVO getAggregateTaskBoardPage(Long projectId, ProjectTaskAggregateBoardPageReqVO reqVO) { // 空数组语义短路:executionStatusCodes 或 executionIds 为空数组 → 该范围明确为空,跳过 SQL,保留列骨架(每列 list=[] / total=0) boolean emptyExecScope = (reqVO.getExecutionStatusCodes() != null && reqVO.getExecutionStatusCodes().isEmpty()) @@ -237,8 +234,7 @@ public class ProjectTaskAggregateServiceImpl implements ProjectTaskAggregateServ // ========= summary ========= @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public ProjectTaskSummaryRespVO getAggregateTaskSummary(Long projectId, ProjectTaskSummaryReqVO reqVO) { LocalDate today = today(); LocalDate weekStart = weekStart(today); diff --git a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/ProjectTaskServiceImpl.java b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/ProjectTaskServiceImpl.java index 9f4fd5b..e8cf554 100644 --- a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/ProjectTaskServiceImpl.java +++ b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/ProjectTaskServiceImpl.java @@ -475,8 +475,7 @@ public class ProjectTaskServiceImpl implements ProjectTaskService { } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public PageResult getTaskPage(Long projectId, Long executionId, ProjectTaskPageReqVO reqVO) { validateExecutionExists(projectId, executionId); // 进得来 = 看执行下全部任务,"我参与 / 所有"由前端发不发 reqVO.ownerId / involveUserId 决定。 @@ -486,8 +485,7 @@ public class ProjectTaskServiceImpl implements ProjectTaskService { } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public ProjectTaskRespVO getTaskRespVO(Long projectId, Long executionId, Long taskId) { // 内联 validate,便于接住 execution 供前端 executionOwnerId 字段使用 ProjectExecutionDO execution = validateExecutionExists(projectId, executionId); @@ -510,8 +508,7 @@ public class ProjectTaskServiceImpl implements ProjectTaskService { } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public PageResult getTaskRespVOPage(Long projectId, Long executionId, ProjectTaskPageReqVO reqVO) { PageResult pageResult = getTaskPage(projectId, executionId, reqVO); return assembleTaskRespVOPage(projectId, executionId, pageResult); diff --git a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/assignee/TaskAssigneeServiceImpl.java b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/assignee/TaskAssigneeServiceImpl.java index 909da28..47e1fa9 100644 --- a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/assignee/TaskAssigneeServiceImpl.java +++ b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/assignee/TaskAssigneeServiceImpl.java @@ -69,8 +69,7 @@ public class TaskAssigneeServiceImpl implements TaskAssigneeService { private AdminUserApi adminUserApi; @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public List getAssigneeList(Long projectId, Long executionId, Long taskId) { validateExecutionAndTaskExists(projectId, executionId, taskId); List activeList = taskAssigneeMapper.selectActiveListByTaskId(taskId); @@ -123,8 +122,7 @@ public class TaskAssigneeServiceImpl implements TaskAssigneeService { } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public PageResult getAssigneeLogPage(Long projectId, Long executionId, Long taskId, TaskAssigneeLogPageReqVO reqVO) { validateExecutionAndTaskExists(projectId, executionId, taskId); diff --git a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/worklog/TaskWorklogServiceImpl.java b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/worklog/TaskWorklogServiceImpl.java index ed120f7..235e0ff 100644 --- a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/worklog/TaskWorklogServiceImpl.java +++ b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/project/task/worklog/TaskWorklogServiceImpl.java @@ -79,8 +79,7 @@ public class TaskWorklogServiceImpl implements TaskWorklogService { private ProjectTaskService projectTaskService; @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectTaskConstants.PERMISSION_QUERY, visibilityFallback = true) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public PageResult getWorklogPage(Long projectId, Long executionId, Long taskId, TaskWorklogPageReqVO reqVO) { validateExecutionAndTaskExists(projectId, executionId, taskId); diff --git a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/review/RequirementReviewServiceImpl.java b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/review/RequirementReviewServiceImpl.java index 6848d20..ecaf455 100644 --- a/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/review/RequirementReviewServiceImpl.java +++ b/rdms-project/rdms-project-boot/src/main/java/com/njcn/rdms/module/project/service/review/RequirementReviewServiceImpl.java @@ -78,8 +78,7 @@ public class RequirementReviewServiceImpl implements RequirementReviewService { } @Override - @CheckObjectPermission(objectType = ProductObjectConstants.OBJECT_TYPE, objectId = "#productId", - permission = ProductObjectConstants.PERMISSION_QUERY) + @CheckObjectPermission(objectType = ProductObjectConstants.OBJECT_TYPE, objectId = "#productId", accessible = true) public RequirementReviewRespVO getProductRequirementReview(Long productId, Long requirementId) { ProductRequirementDO requirement = productRequirementMapper.selectById(requirementId); if (requirement == null || !Objects.equals(requirement.getProductId(), productId)) { @@ -116,8 +115,7 @@ public class RequirementReviewServiceImpl implements RequirementReviewService { } @Override - @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", - permission = ProjectObjectConstants.PERMISSION_QUERY) + @CheckObjectPermission(objectType = ProjectObjectConstants.OBJECT_TYPE, objectId = "#projectId", accessible = true) public RequirementReviewRespVO getProjectRequirementReview(Long projectId, Long requirementId) { ProjectRequirementDO requirement = projectRequirementMapper.selectById(requirementId); if (requirement == null || !Objects.equals(requirement.getProjectId(), projectId)) {