From c60ab31978ac2ed64f68cc52294c521035cf832c Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期四, 21 十二月 2023 14:58:14 +0800
Subject: [PATCH] 参照分页问题
---
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/RoleServiceImpl.java | 32 ++++++++++++++++++++++++++++++++
1 files changed, 32 insertions(+), 0 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/RoleServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/RoleServiceImpl.java
index d90ff86..77a94c9 100644
--- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/RoleServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/RoleServiceImpl.java
@@ -16,29 +16,34 @@
*/
package com.vci.ubcs.system.service.impl;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vci.ubcs.system.mapper.RoleMapper;
+import com.vci.ubcs.system.service.IMenuService;
import com.vci.ubcs.system.service.IRoleMenuService;
import com.vci.ubcs.system.service.IRoleScopeService;
import com.vci.ubcs.system.service.IRoleService;
import com.vci.ubcs.system.vo.DeptVO;
import com.vci.ubcs.system.wrapper.RoleWrapper;
import lombok.AllArgsConstructor;
+import org.springblade.core.log.annotation.GrantLog;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.constant.RoleConstant;
import org.springblade.core.tool.node.ForestNodeMerger;
+import org.springblade.core.tool.node.TreeNode;
import org.springblade.core.tool.utils.CollectionUtil;
import org.springblade.core.tool.utils.Func;
import com.vci.ubcs.system.entity.Role;
import com.vci.ubcs.system.entity.RoleMenu;
import com.vci.ubcs.system.entity.RoleScope;
import com.vci.ubcs.system.vo.RoleVO;
+import org.springblade.core.tool.utils.StringUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
@@ -64,6 +69,7 @@
private final IRoleMenuService roleMenuService;
private final IRoleScopeService roleScopeService;
+ private final IMenuService menuService;
@Override
public IPage<RoleVO> selectRolePage(IPage<RoleVO> page, RoleVO role) {
@@ -93,6 +99,32 @@
return grantRoleMenu(roleIds, menuIds) && grantDataScope(roleIds, dataScopeIds) && grantApiScope(roleIds, apiScopeIds);
}
+ /**
+ * 瑙掕壊鏉冮檺閰嶇疆鏃ュ織璁板綍
+ * @param roleRes
+ * @return
+ */
+ @Override
+ @GrantLog("grantRole")
+ public boolean grantLog(String roleRes, boolean isException) {
+
+ return false;
+ }
+
+ /**
+ * 鑾峰彇瑙掕壊鎺堟潈鏃ュ織鐨勪俊鎭�
+ * @param roleId
+ * @return
+ */
+ @Override
+ public String getGrantRoleResString(List<Long> roleId) {
+ // 鑾峰彇鍒拌彍鍗曚俊鎭紝鍐嶈幏鍙栧埌瑙掕壊淇℃伅锛岃繘琛屾嫾鎺�
+ List<TreeNode> menuTree = menuService.grantTreeByRoleIds(roleId);
+ List<String> roleNames = this.baseMapper.getRoleNames(new Long[]{roleId.get(0)});
+ String res = roleNames.get(0) + "鎺堟潈涓�:{" + JSON.toJSONString(menuTree)+"}";
+ return res;
+ }
+
private boolean grantRoleMenu(List<Long> roleIds, List<Long> menuIds) {
// 闃叉瓒婃潈閰嶇疆瓒呯瑙掕壊
Long administratorCount = baseMapper.selectCount(Wrappers.<Role>query().lambda().eq(Role::getRoleAlias, RoleConstant.ADMINISTRATOR).in(Role::getId, roleIds));
--
Gitblit v1.9.3