From 36c49119d6fae5b860cf58cb95e92ffa632c92f7 Mon Sep 17 00:00:00 2001 From: TanJ Date: Fri, 13 Oct 2023 15:35:44 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E9=80=9A=E7=94=A8=E6=8E=A5=E5=8F=A3):=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=80=9A=E8=BF=87=E4=BA=BA=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=9D=83=E9=99=90=E7=9A=84=E6=95=B0=E6=8D=AE=E5=AE=9A=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../axzo/tyr/client/feign/TyrSaasAuthApi.java | 29 +++++++++- .../tyr/client/model/req/IdentityAuthReq.java | 36 ++++++++++++ .../tyr/client/model/res/IdentityAuthRes.java | 58 +++++++++++++++++++ 3 files changed, 122 insertions(+), 1 deletion(-) create mode 100644 tyr-api/src/main/java/cn/axzo/tyr/client/model/req/IdentityAuthReq.java create mode 100644 tyr-api/src/main/java/cn/axzo/tyr/client/model/res/IdentityAuthRes.java diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/TyrSaasAuthApi.java b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/TyrSaasAuthApi.java index 7a1f3c90..59972bba 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/TyrSaasAuthApi.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/TyrSaasAuthApi.java @@ -12,18 +12,45 @@ import org.springframework.web.bind.annotation.RequestBody; import java.util.List; /** - * 权限集作用范围 + * 权限相关接口 */ @FeignClient(name = "tyr", url = "${axzo.service.tyr:http://tyr:8080}") public interface TyrSaasAuthApi { + /** + * + * 判断人是否拥有指定权限。 + * 不包括产品分组及标准角等,只是暂时版本切换时提供给工作台报表权限使用,20203/10/13后业务方不要调用该接口 + * @param req + * @return + */ + @Deprecated @PostMapping("/api/v1/auth/hasPermissionForIdentity") ApiResult hasPermissionForIdentity(@RequestBody CheckIdentityPermissionReq req); + + /** + * + * 查询人的权限。 + * 不包括产品分组及标准角等,只是暂时版本切换时提供给工作台报表权限使用,20203/10/13后业务方不要调用该接口 + * @param req + * @return + */ @PostMapping("/api/v1/auth/listPermissionFromIdentity") + @Deprecated ApiResult> listPermissionFromIdentity(@RequestBody ListPermissionFromIdentityReq req); + + /** + * 查询拥有权限的人。 + * 不包括产品分组及标准角等,只是暂时版本切换时提供给工作台报表权限使用,20203/10/13后业务方不要调用该接口 + * @param req + * @return + */ @PostMapping("/api/v1/auth/listPermissionFromFeature") + @Deprecated ApiResult> listPermissionFromFeature(@RequestBody ListPermissionFromFeatureReq req); + //------------------上面权限接口为2023/10月未上线前提供的接口,在此日期之后(含)的接口统一使用下面的接口--------------------------- + } diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/model/req/IdentityAuthReq.java b/tyr-api/src/main/java/cn/axzo/tyr/client/model/req/IdentityAuthReq.java new file mode 100644 index 00000000..4d5ca9af --- /dev/null +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/model/req/IdentityAuthReq.java @@ -0,0 +1,36 @@ +package cn.axzo.tyr.client.model.req; + +import cn.axzo.tyr.client.model.enums.IdentityType; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * @author tanjie@axzo.cn + * @date 2023/10/13 15:23 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class IdentityAuthReq { + + private Long identityId; + private IdentityType identityType; + private List workspaceAndOus; + private String terminal; + + + @Data + @Builder + @AllArgsConstructor + @NoArgsConstructor + static class WorkspaceAndOu { + private Long workspaceId; + private Long ouId; + } +} + diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/model/res/IdentityAuthRes.java b/tyr-api/src/main/java/cn/axzo/tyr/client/model/res/IdentityAuthRes.java new file mode 100644 index 00000000..79fb2b70 --- /dev/null +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/model/res/IdentityAuthRes.java @@ -0,0 +1,58 @@ +package cn.axzo.tyr.client.model.res; + +import cn.axzo.tyr.client.model.BaseWorkspaceModel; +import cn.axzo.tyr.client.model.enums.FeatureType; +import cn.axzo.tyr.client.model.enums.IdentityType; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * @author tanjie@axzo.cn + * @date 2023/10/13 14:44 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class IdentityAuthRes { + private Long identity; + private IdentityType identityType; + private List permissions; + + @Data + @Builder + @AllArgsConstructor + @NoArgsConstructor + static class WorkspacePermission { + + private Long workspaceId; + + private Long ouId; + + private boolean isSuperAdmin; + + private List permissionPoint; + + + } + @Data + @Builder + @AllArgsConstructor + @NoArgsConstructor + static class PermissionPoint { + private Long featureId; + + private Long featureCode; + + private FeatureType featureType; + + private String terminal; + } + + +} +