diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasPermissionGroupApi.java b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasPermissionGroupApi.java index 5ebc745e..4d80fbd5 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasPermissionGroupApi.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasPermissionGroupApi.java @@ -9,16 +9,18 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; +import java.util.List; + /** * 权限集 */ -@FeignClient(name = "tyr", url = "${axzo.service.tyr:http://tyr:8080/api/saasPermissionGoup}") +@FeignClient(name = "tyr", url = "${axzo.service.tyr:http://tyr:8080}") public interface SaasPermissionGroupApi { /** * 保存/更新 */ - @PostMapping("saveOrUpdate") + @PostMapping("/api/saasPermissionGoup/saveOrUpdate") ApiResult saveOrUpdate(@RequestBody SaasPermissionGroupVO req); /** @@ -26,19 +28,19 @@ public interface SaasPermissionGroupApi { * @param id * @return */ - @PostMapping("getById") + @PostMapping("/api/saasPermissionGoup/getById") ApiResult getById(@RequestParam("id") Long id); /** * 查询 */ - @PostMapping("query") + @PostMapping("/api/saasPermissionGoup/query") ApiPageResult query(@RequestBody QuerySaasPermissionGroupReq req); /** * 删除 */ - @PostMapping("delete") - ApiResult delete(@RequestParam(required = true) Long id); + @PostMapping("/api/saasPermissionGoup/delete") + ApiResult delete(@RequestBody List id); } diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasRoleApi.java b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasRoleApi.java index e72b2b23..47daff72 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasRoleApi.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasRoleApi.java @@ -41,6 +41,12 @@ public interface SaasRoleApi { @PostMapping("/api/saasRole/query") ApiResult> query(@RequestBody QuerySaasRoleReq req); + /** + * 删除 + */ + @PostMapping("/api/saasRole/delete") + ApiResult delete(@RequestBody List id); + /** * 根据身份id身份类型查询权限列表(批量) * @param identityType 身份类型 1:工人 2:班组长 3:从业人员 4:监管人员 5:运营人员 diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasRoleGroupApi.java b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasRoleGroupApi.java index 602b5aa7..d2a1d414 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasRoleGroupApi.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/SaasRoleGroupApi.java @@ -13,28 +13,28 @@ import java.util.List; /** * 角色分组 */ -@FeignClient(name = "tyr", url = "${axzo.service.tyr:http://tyr:8080/api/saasRoleGroup}") +@FeignClient(name = "tyr", url = "${axzo.service.tyr:http://tyr:8080}") public interface SaasRoleGroupApi { /** * 保存/更新 * @return */ - @PostMapping("save") - ApiResult saveOrUpdate(@RequestBody SaasRoleGroupVO req); + @PostMapping("/api/saasRoleGroup/save") + ApiResult saveOrUpdate(@RequestBody SaasRoleGroupVO req); /** * 获取权限分组列表 * @return */ - @PostMapping("getList") + @PostMapping("/api/saasRoleGroup/getList") ApiResult> getList(@RequestBody QuerySaasRoleGroupReq req); /** - * 删除分组 + * 删除 */ - @PostMapping("delete") - ApiResult delete(@RequestParam(required = true) Long id); + @PostMapping("/api/saasRoleGroup//api/saasPermissionGoup/delete") + ApiResult delete(@RequestBody List id); } diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/model/vo/SaasRoleGroupVO.java b/tyr-api/src/main/java/cn/axzo/tyr/client/model/vo/SaasRoleGroupVO.java index 2f44645a..fb640369 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/model/vo/SaasRoleGroupVO.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/model/vo/SaasRoleGroupVO.java @@ -1,11 +1,17 @@ package cn.axzo.tyr.client.model.vo; +import lombok.AllArgsConstructor; +import lombok.Builder; import lombok.Data; +import lombok.NoArgsConstructor; import java.util.Date; import java.util.List; @Data +@AllArgsConstructor +@NoArgsConstructor +@Builder public class SaasRoleGroupVO { private Long id; @@ -13,22 +19,12 @@ public class SaasRoleGroupVO { /** * 工作台类型字典code */ - private Long workspaceTypeCode; + private String workspaceTypeCode; /** * 单位类型字典code */ - private List ouTypeCode; - - /** - * 所属工作台id - */ - private Long workspaceId; - - /** - * 所属单位id - */ - private Long ouId; + private List ouTypeCode; /** * 名称 diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasPermissionGroupController.java b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasPermissionGroupController.java new file mode 100644 index 00000000..15b2139a --- /dev/null +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasPermissionGroupController.java @@ -0,0 +1,58 @@ +package cn.axzo.tyr.server.controller.role; + + +import cn.axzo.basics.common.constant.enums.TableIsDeleteEnum; +import cn.axzo.framework.domain.web.result.ApiPageResult; +import cn.axzo.framework.domain.web.result.ApiResult; +import cn.axzo.pokonyan.config.mybatisplus.BaseEntity; +import cn.axzo.tyr.client.feign.SaasPermissionGroupApi; +import cn.axzo.tyr.client.model.req.QuerySaasPermissionGroupReq; +import cn.axzo.tyr.client.model.vo.SaasPermissionGroupVO; +import cn.axzo.tyr.server.repository.service.SaasPermissionGroupDao; +import cn.axzo.tyr.server.repository.service.SaasPermissionGroupScopeDao; +import cn.axzo.tyr.server.repository.service.SaasPgroupPermissionRelationDao; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + + +@Slf4j +@RestController +@RequiredArgsConstructor +public class SaasPermissionGroupController implements SaasPermissionGroupApi { + + private final SaasPermissionGroupDao permissionGroupDao; + private final SaasPgroupPermissionRelationDao pgroupPermissionRelationDao; + private final SaasPermissionGroupScopeDao permissionGroupScopeDao; + + @Override + public ApiResult saveOrUpdate(SaasPermissionGroupVO req) { + return null; + } + + @Override + public ApiResult getById(Long id) { + return null; + } + + @Override + public ApiPageResult query(QuerySaasPermissionGroupReq req) { + return null; + } + + @Transactional + @Override + public ApiResult delete(List id) { + // 删除权限集 + permissionGroupDao.delete(id); + // 删除权限集权限关联关系 + pgroupPermissionRelationDao.deleteByPGroupId(id); + // 删除权限集作用范围 + permissionGroupScopeDao.deleteByPGroupId(id); + return ApiResult.ok(); + } + +} diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasRoleController.java b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasRoleController.java index 79f018e9..9aa2250c 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasRoleController.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasRoleController.java @@ -53,6 +53,11 @@ public class SaasRoleController implements SaasRoleApi { return ApiResult.ok(roleService.query(req)); } + @Override + public ApiResult delete(List id) { + return null; + } + @Override public ApiResult> queryByIdentityIdType(Long identityId, Integer identityType,Long workspaceId,Long ouId) { return ApiResult.ok(roleService.queryByIdentityIdType(identityId, identityType,workspaceId,ouId)); diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasRoleGroupController.java b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasRoleGroupController.java index c78b9a9c..4971b46d 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasRoleGroupController.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/role/SaasRoleGroupController.java @@ -15,11 +15,13 @@ import java.util.List; @RestController @RequiredArgsConstructor public class SaasRoleGroupController implements SaasRoleGroupApi { + private final SaasRoleGroupService saasRoleGroupService; @Override - public ApiResult saveOrUpdate(SaasRoleGroupVO req) { - return null; + public ApiResult saveOrUpdate(SaasRoleGroupVO req) { + saasRoleGroupService.saveOrUpdate(req); + return ApiResult.ok(); } @Override @@ -28,7 +30,8 @@ public class SaasRoleGroupController implements SaasRoleGroupApi { } @Override - public ApiResult delete(Long id) { - return null; + public ApiResult delete(List id) { + + return ApiResult.ok(); } } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/entity/SaasPermissionGroupScope.java b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/entity/SaasPermissionGroupScope.java index 32ebafaa..808a1725 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/entity/SaasPermissionGroupScope.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/entity/SaasPermissionGroupScope.java @@ -23,6 +23,12 @@ public class SaasPermissionGroupScope extends BaseEntity { + public void delete(List id) { + lambdaUpdate() + .in(BaseEntity::getId,id) + .set(BaseEntity::getIsDelete,id) + .update(); + } } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPermissionGroupScopeDao.java b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPermissionGroupScopeDao.java index 00587ebd..17ee34a8 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPermissionGroupScopeDao.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPermissionGroupScopeDao.java @@ -1,5 +1,7 @@ package cn.axzo.tyr.server.repository.service; +import cn.axzo.basics.common.constant.enums.TableIsDeleteEnum; +import cn.axzo.pokonyan.config.mybatisplus.BaseEntity; import cn.axzo.tyr.server.repository.entity.SaasPermissionGroup; import cn.axzo.tyr.server.repository.entity.SaasPermissionGroupScope; import cn.axzo.tyr.server.repository.mapper.SaasPermissionGroupMapper; @@ -7,8 +9,16 @@ import cn.axzo.tyr.server.repository.mapper.SaasPermissionGroupScopeMapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Repository; +import java.util.List; + @Repository public class SaasPermissionGroupScopeDao extends ServiceImpl { + public void deleteByPGroupId(List pgroupId) { + lambdaUpdate() + .in(SaasPermissionGroupScope::getPgroupId,pgroupId) + .set(BaseEntity::getIsDelete, TableIsDeleteEnum.DELETE.value) + .update(); + } } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPgroupPermissionRelationDao.java b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPgroupPermissionRelationDao.java index f0c9efb9..f7317bd7 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPgroupPermissionRelationDao.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPgroupPermissionRelationDao.java @@ -1,5 +1,7 @@ package cn.axzo.tyr.server.repository.service; +import cn.axzo.basics.common.constant.enums.TableIsDeleteEnum; +import cn.axzo.pokonyan.config.mybatisplus.BaseEntity; import cn.axzo.tyr.server.repository.entity.SaasPgroupPermissionRelation; import cn.axzo.tyr.server.repository.entity.SaasRole; import cn.axzo.tyr.server.repository.mapper.SaasPgroupPermissionRelationMapper; @@ -17,5 +19,13 @@ public class SaasPgroupPermissionRelationDao extends ServiceImpl() .in(SaasPgroupPermissionRelation::getFeatureId, permissionPointIds)); } + + public void deleteByPGroupId(List pgroupId) { + lambdaUpdate() + .in(SaasPgroupPermissionRelation::getGroupId,pgroupId) + .set(BaseEntity::getIsDelete, TableIsDeleteEnum.DELETE.value) + .update(); + } + } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPgroupRoleRelationDao.java b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPgroupRoleRelationDao.java index 624e7e5d..27057033 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPgroupRoleRelationDao.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasPgroupRoleRelationDao.java @@ -1,5 +1,7 @@ package cn.axzo.tyr.server.repository.service; +import cn.axzo.basics.common.constant.enums.TableIsDeleteEnum; +import cn.axzo.pokonyan.config.mybatisplus.BaseEntity; import cn.axzo.tyr.server.repository.entity.SaasPermissionGroup; import cn.axzo.tyr.server.repository.entity.SaasPgroupRoleRelation; import cn.axzo.tyr.server.repository.mapper.SaasPermissionGroupMapper; @@ -7,8 +9,17 @@ import cn.axzo.tyr.server.repository.mapper.SaasPgroupRoleRelationMapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Repository; +import java.util.List; + @Repository public class SaasPgroupRoleRelationDao extends ServiceImpl { + public void deleteByRoleId(List roleId) { + lambdaUpdate() + .in(SaasPgroupRoleRelation::getRoleId,roleId) + .set(BaseEntity::getIsDelete, TableIsDeleteEnum.DELETE.value) + .update(); + } + } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleDao.java b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleDao.java index 3d413049..68234eda 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleDao.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleDao.java @@ -1,5 +1,6 @@ package cn.axzo.tyr.server.repository.service; +import cn.axzo.pokonyan.config.mybatisplus.BaseEntity; import cn.axzo.tyr.server.repository.entity.SaasRole; import cn.axzo.tyr.server.repository.entity.SaasRoleGroup; import cn.axzo.tyr.server.repository.mapper.SaasRoleGroupMapper; @@ -7,8 +8,17 @@ import cn.axzo.tyr.server.repository.mapper.SaasRoleMapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Repository; +import java.util.List; + @Repository public class SaasRoleDao extends ServiceImpl { + public void delete(List id) { + lambdaUpdate() + .in(BaseEntity::getId,id) + .set(BaseEntity::getIsDelete,id) + .update(); + } + } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleGroupDao.java b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleGroupDao.java index 5fdc2ffb..6900378d 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleGroupDao.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleGroupDao.java @@ -45,5 +45,12 @@ public class SaasRoleGroupDao extends ServiceImpl id) { + lambdaUpdate() + .in(BaseEntity::getId,id) + .set(BaseEntity::getIsDelete,id) + .update(); + } + } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleGroupRelationDao.java b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleGroupRelationDao.java index f8a24f9f..05eba429 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleGroupRelationDao.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleGroupRelationDao.java @@ -1,5 +1,7 @@ package cn.axzo.tyr.server.repository.service; +import cn.axzo.basics.common.constant.enums.TableIsDeleteEnum; +import cn.axzo.pokonyan.config.mybatisplus.BaseEntity; import cn.axzo.tyr.server.repository.entity.SaasRoleGroup; import cn.axzo.tyr.server.repository.entity.SaasRoleGroupRelation; import cn.axzo.tyr.server.repository.mapper.SaasRoleGroupMapper; @@ -7,8 +9,17 @@ import cn.axzo.tyr.server.repository.mapper.SaasRoleGroupRelationMapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Repository; +import java.util.List; + @Repository public class SaasRoleGroupRelationDao extends ServiceImpl { + public void deleteByRoleGroupId(List roleGroupId) { + lambdaUpdate() + .in(SaasRoleGroupRelation::getSaasRoleGroupId, roleGroupId) + .set(BaseEntity::getIsDelete, TableIsDeleteEnum.DELETE.value) + .update(); + } + } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleUserRelationDao.java b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleUserRelationDao.java index 3866cbf8..fde44b5f 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleUserRelationDao.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/service/SaasRoleUserRelationDao.java @@ -21,5 +21,13 @@ public class SaasRoleUserRelationDao extends ServiceImpl roleId) { + lambdaUpdate() + .in(SaasRoleUserRelation::getRoleId,roleId) + .set(BaseEntity::getIsDelete,TableIsDeleteEnum.DELETE.value) + .update(); + } + } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/SaasRoleGroupService.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/SaasRoleGroupService.java index d50e03d2..456d2f59 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/SaasRoleGroupService.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/SaasRoleGroupService.java @@ -7,4 +7,8 @@ import java.util.List; public interface SaasRoleGroupService { List getList(QuerySaasRoleGroupReq req); + + void saveOrUpdate(SaasRoleGroupVO req); + + void delete(Long id); } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasRoleGroupServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasRoleGroupServiceImpl.java index d7dfa8c2..a2a5cac6 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasRoleGroupServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasRoleGroupServiceImpl.java @@ -1,12 +1,13 @@ package cn.axzo.tyr.server.service.impl; +import java.util.Date; import cn.axzo.basics.common.constant.enums.TableIsDeleteEnum; import cn.axzo.tyr.client.model.req.QuerySaasRoleGroupReq; import cn.axzo.tyr.client.model.vo.SaasRoleGroupVO; +import cn.axzo.tyr.server.repository.entity.SaasPgroupRoleRelation; import cn.axzo.tyr.server.repository.entity.SaasRoleGroup; import cn.axzo.tyr.server.repository.entity.SaasRoleGroupRelation; -import cn.axzo.tyr.server.repository.service.SaasRoleGroupDao; -import cn.axzo.tyr.server.repository.service.SaasRoleGroupRelationDao; +import cn.axzo.tyr.server.repository.service.*; import cn.axzo.tyr.server.service.SaasRoleGroupService; import cn.hutool.core.bean.BeanUtil; import lombok.RequiredArgsConstructor; @@ -27,6 +28,11 @@ import java.util.stream.Collectors; public class SaasRoleGroupServiceImpl implements SaasRoleGroupService { private final SaasRoleGroupDao saasRoleGroupDao; private final SaasRoleGroupRelationDao saasRoleGroupRelationDao; + private final SaasRoleDao roleDao; + private final SaasPgroupRoleRelationDao pgroupRoleRelationDao; + private final SaasPermissionGroupDao permissionGroupDao; + private final SaasPgroupPermissionRelationDao pgroupPermissionRelationDao; + private final SaasRoleUserRelationDao roleUserRelationDao; @Override public List getList(QuerySaasRoleGroupReq req) { @@ -57,7 +63,7 @@ public class SaasRoleGroupServiceImpl implements SaasRoleGroupService { .map(e -> { SaasRoleGroupVO target = BeanUtil.copyProperties(e, SaasRoleGroupVO.class); if (StringUtils.isNotBlank(e.getOuTypeCode())) { - target.setOuTypeCode(Arrays.stream(e.getOuTypeCode().split(",")).filter(StringUtils::isNotBlank).map(s -> Long.parseLong(s.trim())).collect(Collectors.toList())); + target.setOuTypeCode(Arrays.stream(e.getOuTypeCode().split(",")).filter(StringUtils::isNotBlank).map(s -> s.trim()).collect(Collectors.toList())); } target.setRoleIds(groupRoleMap.get(e.getId())); return target; @@ -65,4 +71,35 @@ public class SaasRoleGroupServiceImpl implements SaasRoleGroupService { return results; } + + @Override + public void saveOrUpdate(SaasRoleGroupVO req) { + // 拼接ouTypeCode字符串 + String ouTypeCodeStr = null; + if (CollectionUtils.isNotEmpty(req.getOuTypeCode())) { + ouTypeCodeStr = StringUtils.join(req.getOuTypeCode(),","); + } + SaasRoleGroup saasRoleGroup = new SaasRoleGroup(); + saasRoleGroup.setId(req.getId()); + saasRoleGroup.setWorkspaceTypeCode(req.getWorkspaceTypeCode()); + saasRoleGroup.setOuTypeCode(ouTypeCodeStr); + saasRoleGroup.setName(req.getName()); + saasRoleGroup.setSort(req.getSort()); + saasRoleGroupDao.saveOrUpdate(saasRoleGroup); + } + + @Override + public void delete(Long id) { + // 删除分组 + + // 删除角色分组关联关系 + + // + + + // 删除权限分组关联关系 + // 删除权限 + // 删除权限集关联关系 + // 删除权限集 + } }