소스 검색

fix: CRM 管理员数据权限 bug

puhui999 1 년 전
부모
커밋
0808bdaa41
1개의 변경된 파일4개의 추가작업 그리고 2개의 파일을 삭제
  1. 4 2
      yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/util/CrmPermissionUtils.java

+ 4 - 2
yudao-module-crm/yudao-module-crm-biz/src/main/java/cn/iocoder/yudao/module/crm/util/CrmPermissionUtils.java

@@ -64,8 +64,10 @@ public class CrmPermissionUtils {
         }
         // 2.2 场景二:我参与的数据
         if (CrmSceneTypeEnum.isInvolved(sceneType)) {
-            query.ne(ownerUserIdField, userId)
-                    .in(CrmPermissionDO::getLevel, CrmPermissionLevelEnum.READ.getLevel(), CrmPermissionLevelEnum.WRITE.getLevel());
+            query.innerJoin(CrmPermissionDO.class, on -> on.eq(CrmPermissionDO::getBizType, bizType)
+                    .eq(CrmPermissionDO::getBizId, bizId)
+                    .in(CrmPermissionDO::getLevel, CrmPermissionLevelEnum.READ.getLevel(), CrmPermissionLevelEnum.WRITE.getLevel()));
+            query.ne(ownerUserIdField, userId);
         }
         // 2.3 场景三:下属负责的数据
         if (CrmSceneTypeEnum.isSubordinate(sceneType)) {