|
...
|
...
|
@@ -9,6 +9,7 @@ import com.tianbo.warehouse.annotation.cache.annotation.RedisCacheable; |
|
|
|
import com.tianbo.warehouse.dao.PERMISSIONMapper;
|
|
|
|
import com.tianbo.warehouse.model.PERMISSION;
|
|
|
|
import com.tianbo.warehouse.service.PermissionService;
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
...
|
...
|
@@ -18,6 +19,7 @@ import java.util.List; |
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
@Service("PermissionService")
|
|
|
|
@Slf4j
|
|
|
|
public class PermissionServiceImp implements PermissionService {
|
|
|
|
|
|
|
|
@Resource
|
|
...
|
...
|
@@ -83,32 +85,13 @@ public class PermissionServiceImp implements PermissionService { |
|
|
|
public Map<String, Object> getUserMenus(Integer userId) {
|
|
|
|
Map<String, Object> data = new HashMap<String, Object>();
|
|
|
|
try {
|
|
|
|
//查询所有菜单
|
|
|
|
List<PERMISSION> allMenu = permissionMapper.findByUserId(userId);
|
|
|
|
// //根节点
|
|
|
|
// List<PERMISSION> rootMenu = new ArrayList<PERMISSION>();
|
|
|
|
// for (PERMISSION nav : allMenu) {
|
|
|
|
// if (nav.getParentId() == 0) {//父节点是0的,为根节点。
|
|
|
|
// rootMenu.add(nav);
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
|
|
|
|
/* 根据Menu类的order排序 */
|
|
|
|
// Collections.sort(rootMenu, order());
|
|
|
|
//为根菜单设置子菜单,getClild是递归调用的
|
|
|
|
// for (PERMISSION nav : rootMenu) {
|
|
|
|
// /* 获取根节点下的所有子节点 使用getChild方法*/
|
|
|
|
// List<PERMISSION> childList = getChild(nav.getPermissionId(), allMenu);
|
|
|
|
// nav.setChildren(childList);//给根节点设置子节点
|
|
|
|
// }
|
|
|
|
/**
|
|
|
|
* 输出构建好的菜单数据。
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
//一次查出用户有权限的全部层级菜单(带 RBAC 权限过滤),再在 Java 层组树,避免递归查库
|
|
|
|
List<PERMISSION> allMenu = permissionMapper.findByUserIdWithLogin(userId);
|
|
|
|
data.put("success", "true");
|
|
|
|
data.put("list", allMenu);
|
|
|
|
data.put("list", getPermissionList(allMenu, 0));
|
|
|
|
return data;
|
|
|
|
} catch (Exception e) {
|
|
|
|
log.error("获取用户菜单树失败,userId:" + userId, e);
|
|
|
|
data.put("success", "false");
|
|
|
|
data.put("list", new ArrayList());
|
|
|
|
return data;
|
|
...
|
...
|
@@ -119,32 +102,13 @@ public class PermissionServiceImp implements PermissionService { |
|
|
|
public Map<String, Object> getUserMenusKako(String userId) {
|
|
|
|
Map<String, Object> data = new HashMap<String, Object>();
|
|
|
|
try {
|
|
|
|
//查询所有菜单
|
|
|
|
List<PERMISSION> allMenu = permissionMapper.findByUserIdKako(userId);
|
|
|
|
// //根节点
|
|
|
|
// List<PERMISSION> rootMenu = new ArrayList<PERMISSION>();
|
|
|
|
// for (PERMISSION nav : allMenu) {
|
|
|
|
// if (nav.getParentId() == 0) {//父节点是0的,为根节点。
|
|
|
|
// rootMenu.add(nav);
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
|
|
|
|
/* 根据Menu类的order排序 */
|
|
|
|
// Collections.sort(rootMenu, order());
|
|
|
|
//为根菜单设置子菜单,getClild是递归调用的
|
|
|
|
// for (PERMISSION nav : rootMenu) {
|
|
|
|
// /* 获取根节点下的所有子节点 使用getChild方法*/
|
|
|
|
// List<PERMISSION> childList = getChild(nav.getPermissionId(), allMenu);
|
|
|
|
// nav.setChildren(childList);//给根节点设置子节点
|
|
|
|
// }
|
|
|
|
/**
|
|
|
|
* 输出构建好的菜单数据。
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
//一次查出用户有权限的全部层级菜单(带 RBAC 权限过滤),再在 Java 层组树,避免递归查库
|
|
|
|
List<PERMISSION> allMenu = permissionMapper.findByUserIdWithLoginKako(userId);
|
|
|
|
data.put("success", "true");
|
|
|
|
data.put("list", allMenu);
|
|
|
|
data.put("list", getPermissionList(allMenu, 0));
|
|
|
|
return data;
|
|
|
|
} catch (Exception e) {
|
|
|
|
log.error("获取卡口用户菜单树失败,userId:" + userId, e);
|
|
|
|
data.put("success", "false");
|
|
|
|
data.put("list", new ArrayList());
|
|
|
|
return data;
|
...
|
...
|
|