From 60b7f72655e640aa1e6a4fb3e7ee83845d590078 Mon Sep 17 00:00:00 2001 From: zhansihu Date: Mon, 11 Sep 2023 15:24:26 +0800 Subject: [PATCH] =?UTF-8?q?refactor(=E6=9D=83=E9=99=90=E7=82=B9):=E4=BF=9D?= =?UTF-8?q?=E5=AD=98=E6=8E=A5=E5=8F=A3=E5=A2=9E=E5=8A=A0=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E5=BD=93=E5=89=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tyr/client/feign/PermissionPointApi.java | 2 +- .../model/permission/PermissionPointDTO.java | 3 +++ .../PermissionPointTreeQueryReq.java | 3 +++ .../permission/PermissionPointController.java | 2 +- .../service/PermissionPointService.java | 2 +- .../impl/PermissionPointServiceImpl.java | 22 +++++++++++-------- 6 files changed, 22 insertions(+), 12 deletions(-) diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/PermissionPointApi.java b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/PermissionPointApi.java index cffb233d..096719ce 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/feign/PermissionPointApi.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/feign/PermissionPointApi.java @@ -38,7 +38,7 @@ public interface PermissionPointApi { /** 保存权限点 - 新增或更新 **/ @PostMapping(value = "/api/v1/permissionPoint/save") - ApiResult savePermissionPoint(@RequestBody PermissionPointDTO dto); + ApiResult savePermissionPoint(@RequestBody PermissionPointDTO dto); /** 删除权限点 - 直接删除 **/ @PostMapping(value = "/api/v1/permissionPoint/delete/{permissionId}") diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/model/permission/PermissionPointDTO.java b/tyr-api/src/main/java/cn/axzo/tyr/client/model/permission/PermissionPointDTO.java index 2d2071c5..55513756 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/model/permission/PermissionPointDTO.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/model/permission/PermissionPointDTO.java @@ -156,4 +156,7 @@ public class PermissionPointDTO { */ private Integer delegatedType; + /** 业务编码 **/ + private String businessNo; + } diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/model/permission/PermissionPointTreeQueryReq.java b/tyr-api/src/main/java/cn/axzo/tyr/client/model/permission/PermissionPointTreeQueryReq.java index 0a0b5f5e..fb93b1ae 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/model/permission/PermissionPointTreeQueryReq.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/model/permission/PermissionPointTreeQueryReq.java @@ -25,4 +25,7 @@ public class PermissionPointTreeQueryReq { /** 权限点所属工作台 **/ private List terminalList; + + /** 权限点ID列表 **/ + private List ids; } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/permission/PermissionPointController.java b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/permission/PermissionPointController.java index 4c622c62..d999b2a6 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/controller/permission/PermissionPointController.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/controller/permission/PermissionPointController.java @@ -46,7 +46,7 @@ public class PermissionPointController implements PermissionPointApi { } @Override - public ApiResult savePermissionPoint(PermissionPointDTO dto) { + public ApiResult savePermissionPoint(PermissionPointDTO dto) { permissionPointService.save(dto); return ApiResult.ok(); } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/PermissionPointService.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/PermissionPointService.java index f60ea5aa..70e71451 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/PermissionPointService.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/PermissionPointService.java @@ -33,7 +33,7 @@ public interface PermissionPointService { PermissionPointVO getDetail(Long permissionId); /** 保存权限点 **/ - void save(PermissionPointDTO dto); + PermissionPointDTO save(PermissionPointDTO dto); /** 删除权限点 **/ void delete(Long permissionId); diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/PermissionPointServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/PermissionPointServiceImpl.java index 78a66aca..8e45a05a 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/PermissionPointServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/PermissionPointServiceImpl.java @@ -4,7 +4,6 @@ import cn.axzo.basics.common.BeanMapper; import cn.axzo.basics.common.util.TreeUtil; import cn.axzo.framework.domain.web.BizException; import cn.axzo.framework.domain.web.code.BaseCode; -import cn.axzo.pokonyan.config.mybatisplus.BaseEntity; import cn.axzo.tyr.client.model.enums.FeatureType; import cn.axzo.tyr.client.model.permission.PermissionPointDTO; import cn.axzo.tyr.client.model.permission.PermissionPointTreeNode; @@ -158,7 +157,7 @@ public class PermissionPointServiceImpl implements PermissionPointService { vo.setPathName(pathName); return vo; } - //所有父级处理 + //查询所有父级 List split = StrUtil.split(vo.getPath(), FEATURE_PATH_DELIMITER, true, true); List ids = split.stream() .filter(x -> !StrUtil.equals(FEATURE_NO_PARENT, x)) @@ -167,6 +166,7 @@ public class PermissionPointServiceImpl implements PermissionPointService { Map parentsMapping = this.saasFeatureDao.listByIds(ids) .stream() .collect(Collectors.toMap(SaasFeature::getId, Function.identity())); + //填充层级父级名称 直接父级信息 for (Long parentId : ids) { pathName.add(parentsMapping.get(parentId).getFeatureName()); } @@ -180,16 +180,14 @@ public class PermissionPointServiceImpl implements PermissionPointService { } @Override - public void save(PermissionPointDTO dto) { + public PermissionPointDTO save(PermissionPointDTO dto) { if (dto.getId() == null) { - doInsert(dto); - } else { - doUpdate(dto); + return doInsert(dto); } - + return doUpdate(dto); } - private void doUpdate(PermissionPointDTO dto) { + private PermissionPointDTO doUpdate(PermissionPointDTO dto) { SaasFeature feature = getAndCheck(dto.getId()); SaasFeature saasFeature = BeanMapper.copyBean(dto, SaasFeature.class); //清理不可更新的数据 @@ -198,7 +196,10 @@ public class PermissionPointServiceImpl implements PermissionPointService { saasFeature.setPath(null); saasFeature.setSort(null); saasFeature.setTerminal(null); + saasFeature.setBusinessNo(null); this.saasFeatureDao.updateById(saasFeature); + dto.setBusinessNo(feature.getBusinessNo()); + return dto; } private SaasFeature getAndCheck(Long permissionId) { @@ -210,7 +211,7 @@ public class PermissionPointServiceImpl implements PermissionPointService { return feature; } - private void doInsert(PermissionPointDTO dto) { + private PermissionPointDTO doInsert(PermissionPointDTO dto) { SaasFeature saasFeature = BeanMapper.copyBean(dto, SaasFeature.class); SaasFeature parent; if (dto.getParentId() == null || dto.getParentId() < 1) { @@ -225,6 +226,9 @@ public class PermissionPointServiceImpl implements PermissionPointService { saasFeature.setParentBusinessNo(parent.getBusinessNo()); saasFeature.setPath(parent.getPath() + parent.getId() + FEATURE_PATH_DELIMITER); this.saasFeatureDao.save(saasFeature); + dto.setId(saasFeature.getId()); + dto.setBusinessNo(saasFeature.getBusinessNo()); + return dto; } @Transactional(rollbackFor = Throwable.class)