From 047ffe7fa7e12fb8f9ecefc5f5dd398df88ea957 Mon Sep 17 00:00:00 2001 From: yangqicheng Date: Thu, 27 Jun 2024 14:23:13 +0800 Subject: [PATCH] =?UTF-8?q?REQ-2633-=E6=B7=BB=E5=8A=A0=E6=A0=B9=E6=8D=AEid?= =?UTF-8?q?=E6=9B=B4=E6=96=B0saas=5Frole=5Fuser=E6=95=B0=E6=8D=AE=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tyr/client/feign/TyrSaasRoleUserApi.java | 9 ++++++++ .../model/roleuser/RoleUserUpdateReq.java | 22 +++++++++++++++++++ .../model/roleuser/dto/SaasRoleUserV2DTO.java | 2 ++ .../roleuser/RoleUserController.java | 6 +++++ .../server/service/SaasRoleUserService.java | 8 +++++++ .../server/service/impl/RoleUserService.java | 11 ++++++++++ .../impl/SaasRoleUserRelationServiceImpl.java | 1 + 7 files changed, 59 insertions(+) create mode 100644 tyr-api/src/main/java/cn/axzo/tyr/client/model/roleuser/RoleUserUpdateReq.java diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/TyrSaasRoleUserApi.java b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/TyrSaasRoleUserApi.java index f64a3283..8302a169 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/TyrSaasRoleUserApi.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/TyrSaasRoleUserApi.java @@ -2,6 +2,7 @@ package cn.axzo.tyr.client.feign; import cn.axzo.framework.domain.web.result.ApiPageResult; import cn.axzo.framework.domain.web.result.ApiResult; +import cn.axzo.tyr.client.model.roleuser.RoleUserUpdateReq; import cn.axzo.tyr.client.model.roleuser.dto.GetUserAutoOwnRoleResp; import cn.axzo.tyr.client.model.roleuser.dto.GetUserFeatureResourceIdsResp; import cn.axzo.tyr.client.model.roleuser.dto.SaasRoleUserDTO; @@ -127,4 +128,12 @@ public interface TyrSaasRoleUserApi { */ @PostMapping("/api/saas-role-user/get-user-feature-resource-ids") ApiResult getUserFeatureResourceIds(@RequestBody @Valid GetUserFeatureResourceIdsReq req); + + /** + * 根据id更新数据 + * @param roleUserUpdateReqs 参数列表 + * @return + */ + @PostMapping("/api/saas-role-user/batch-update-by-id") + ApiResult batchUpdateById(List roleUserUpdateReqs); } diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/model/roleuser/RoleUserUpdateReq.java b/tyr-api/src/main/java/cn/axzo/tyr/client/model/roleuser/RoleUserUpdateReq.java new file mode 100644 index 00000000..eef8bd70 --- /dev/null +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/model/roleuser/RoleUserUpdateReq.java @@ -0,0 +1,22 @@ +package cn.axzo.tyr.client.model.roleuser; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.Min; +import javax.validation.constraints.NotNull; + +@AllArgsConstructor +@NoArgsConstructor +@Data +@Builder +public class RoleUserUpdateReq { + + @NotNull(message = "id不能为空") + @Min(value = 0L) + private Long id; + + private Long identityId; +} diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/model/roleuser/dto/SaasRoleUserV2DTO.java b/tyr-api/src/main/java/cn/axzo/tyr/client/model/roleuser/dto/SaasRoleUserV2DTO.java index bb63b56a..fb790438 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/model/roleuser/dto/SaasRoleUserV2DTO.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/model/roleuser/dto/SaasRoleUserV2DTO.java @@ -11,6 +11,8 @@ import lombok.NoArgsConstructor; @NoArgsConstructor public class SaasRoleUserV2DTO { + private Long id; + /** * 角色Id */ diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/roleuser/RoleUserController.java b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/roleuser/RoleUserController.java index 0a6d618c..fe4919da 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/roleuser/RoleUserController.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/roleuser/RoleUserController.java @@ -6,6 +6,7 @@ import cn.axzo.framework.domain.web.result.ApiResult; import cn.axzo.pokonyan.config.mybatisplus.BaseEntity; import cn.axzo.tyr.client.feign.TyrSaasRoleUserApi; import cn.axzo.tyr.client.model.enums.IdentityType; +import cn.axzo.tyr.client.model.roleuser.RoleUserUpdateReq; import cn.axzo.tyr.client.model.roleuser.dto.GetUserAutoOwnRoleResp; import cn.axzo.tyr.client.model.roleuser.dto.GetUserFeatureResourceIdsResp; import cn.axzo.tyr.client.model.roleuser.dto.SaasRoleUserDTO; @@ -174,4 +175,9 @@ public class RoleUserController implements TyrSaasRoleUserApi { public ApiResult getUserFeatureResourceIds(GetUserFeatureResourceIdsReq req) { return ApiResult.ok(saasRoleUserService.getUserFeatureResourceIds(req)); } + + @Override + public ApiResult batchUpdateById(List roleUserUpdateReqs) { + return ApiResult.ok(saasRoleUserService.batchUpdateById(roleUserUpdateReqs)); + } } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/SaasRoleUserService.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/SaasRoleUserService.java index 36321eee..1c2d3cc1 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/SaasRoleUserService.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/SaasRoleUserService.java @@ -1,6 +1,7 @@ package cn.axzo.tyr.server.service; import cn.axzo.tyr.client.model.enums.IdentityType; +import cn.axzo.tyr.client.model.roleuser.RoleUserUpdateReq; import cn.axzo.tyr.client.model.roleuser.dto.GetUserAutoOwnRoleResp; import cn.axzo.tyr.client.model.roleuser.dto.GetUserFeatureResourceIdsResp; import cn.axzo.tyr.client.model.roleuser.dto.SuperAminInfoResp; @@ -106,4 +107,11 @@ public interface SaasRoleUserService { * @return */ GetUserFeatureResourceIdsResp getUserFeatureResourceIds(GetUserFeatureResourceIdsReq req); + + /** + * 根据id更新saas_role_user_relation数据 + * @param roleUserUpdateReqs 请求参数 + * @return + */ + Boolean batchUpdateById(List roleUserUpdateReqs); } \ No newline at end of file diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/RoleUserService.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/RoleUserService.java index b2aa6bec..9953557e 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/RoleUserService.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/RoleUserService.java @@ -1,5 +1,6 @@ package cn.axzo.tyr.server.service.impl; +import cn.axzo.basics.common.BeanMapper; import cn.axzo.basics.common.constant.enums.TableIsDeleteEnum; import cn.axzo.basics.common.exception.ServiceException; import cn.axzo.basics.common.util.AssertUtil; @@ -11,6 +12,7 @@ import cn.axzo.tyr.client.model.BaseWorkspaceModel; import cn.axzo.tyr.client.model.enums.DictWorkSpaceTypeEnum; import cn.axzo.tyr.client.model.enums.IdentityType; import cn.axzo.tyr.client.model.enums.WorkerLeaderRoleEnum; +import cn.axzo.tyr.client.model.roleuser.RoleUserUpdateReq; import cn.axzo.tyr.client.model.roleuser.dto.GetUserAutoOwnRoleResp; import cn.axzo.tyr.client.model.roleuser.dto.GetUserFeatureResourceIdsResp; import cn.axzo.tyr.client.model.roleuser.dto.IdentityInfo; @@ -638,4 +640,13 @@ public class RoleUserService implements SaasRoleUserService { } return existsPgroupPermissionRelations.stream().filter(e -> !featureIds.contains(e.getFeatureId())).map(SaasPgroupPermissionRelation::getId).collect(Collectors.toSet()); } + + @Override + public Boolean batchUpdateById(List roleUserUpdateReqs) { + if (CollectionUtils.isEmpty(roleUserUpdateReqs)) { + return false; + } + List saasRoleUserDTOList = BeanMapper.copyList(roleUserUpdateReqs, SaasRoleUserRelation.class); + return roleUserRelationDao.updateBatchById(saasRoleUserDTOList); + } } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasRoleUserRelationServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasRoleUserRelationServiceImpl.java index 885f7bbd..3db1814c 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasRoleUserRelationServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasRoleUserRelationServiceImpl.java @@ -185,6 +185,7 @@ public class SaasRoleUserRelationServiceImpl extends ServiceImpl saasRoleUsers) { return SaasRoleUserV2DTO.builder() + .id(saasRoleUserRelation.getId()) .roleId(saasRoleUserRelation.getRoleId()) .saasRoleUser(saasRoleUsers.get(saasRoleUserRelation.getNaturalPersonId())) .build();