From 2a9e09f2001972ee36c6798db95bd6fa69244c4b Mon Sep 17 00:00:00 2001 From: jiajia Date: Fri, 19 Jul 2024 12:02:23 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=93=E5=8D=B0=E6=A8=A1=E7=89=88=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E7=B3=BB=E7=BB=9F=E5=8F=8A=E4=B8=9A=E5=8A=A1=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/api/iservice/busi/ISysMenuService.java | 3 +++ .../controller/base/WhiteController.java | 15 ++++++++++++++ .../serviceimpl/busi/SysMenuService.java | 23 ++++++++++++++++++++++ .../serviceimpl/busi/SysRoleService.java | 4 ++-- 4 files changed, 43 insertions(+), 2 deletions(-) diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysMenuService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysMenuService.java index ff3cb84..f0509b9 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysMenuService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysMenuService.java @@ -70,4 +70,7 @@ public interface ISysMenuService extends ICrudService { @ApiOperation(value = "根据菜单ID删除菜单信息") void deleteSysMenuById(Long id); + + @ApiOperation(value = "根据菜单中的配置查询系统,查询impp下面一层的数据") + List querySysMenuSoftType(); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java index 5d31f51..acf29ee 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/WhiteController.java @@ -180,6 +180,9 @@ public class WhiteController extends CoreBaseController { @Autowired private ISysOrderNoRuleService sysOrderNoRuleService; + @Autowired + private ISysMenuService sysMenuService; + @Value(value = "${filter.ding.menu.parent.id}") private Long filterDingPmcParentMenuId; @@ -1557,6 +1560,18 @@ public class WhiteController extends CoreBaseController { } } + @GetMapping(value = "/query-sys-menu-softType") + @ApiOperation(value = "菜单中查询系统,其实就是父级为impp的") + public ResultBean querySysMenuSoftType() { + try { + return ResultBean.success("操作成功").setResultList(sysMenuService.querySysMenuSoftType()).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + /** * 获取登录用户功能权限信息 * diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMenuService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMenuService.java index 13dd6b9..4f782b1 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMenuService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysMenuService.java @@ -42,6 +42,10 @@ public class SysMenuService extends CrudService implements ISysMenuServ public static final Logger LOGGER = LoggerFactory.getLogger(SysMenuService.class); + private static int menuType = 1; + + private static Long parentId = 100000000L; + /** * 功能权限国际化 */ @@ -340,6 +344,25 @@ public class SysMenuService extends CrudService implements ISysMenuServ } } + + @Override + public List querySysMenuSoftType() { + // todo 临时这么写,需要优化 + DdlPackBean packBean = DdlPackBean.getDdlPackBean(); + DdlPreparedPack.getNumEqualPack(menuType,"menuType",packBean); + DdlPreparedPack.getNumEqualPack(parentId,"parentId",packBean); + List sysMenus = sysMenuRDao.findByHqlWhere(packBean); + if (CollectionUtils.isEmpty(sysMenus)) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION_DATA_ERROR.getCode()) + .setErrorDetail("未查到菜单中的系统") + .setErrorSolution("请确认数据维护是否正确menuType:1;partentId:100000000") + .build(); + } + return sysMenus; + } + private List getIdList(Long id,List idList){ List sysMenuTwoList = sysMenuRDao.findByProperty("parentId",id); if(CollectionUtils.isEmpty(sysMenuTwoList)){ diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java index 8927e83..b14492d 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java @@ -246,7 +246,7 @@ public class SysRoleService extends CrudService implements ISysRoleServ String menuTreeName = ""; List newAuthoritys = new ArrayList<>(); getParentName(id, newAuthoritys); - if (!newAuthoritys.get(0).isEmpty()) { + if (!CollectionUtils.isEmpty(newAuthoritys) && !newAuthoritys.get(0).isEmpty()) { menuTreeName = newAuthoritys.get(0).substring(1); } newAuthority.append(menuTreeName).append("\n"); @@ -255,7 +255,7 @@ public class SysRoleService extends CrudService implements ISysRoleServ List delAuthoritys = new ArrayList<>(); String menuTreeName = ""; getParentName(id, delAuthoritys); - if (!delAuthoritys.get(0).isEmpty()) { + if (!CollectionUtils.isEmpty(delAuthoritys) && !delAuthoritys.get(0).isEmpty()) { menuTreeName = delAuthoritys.get(0).substring(1); } delAuthority.append(menuTreeName).append("\n");