|
|
@@ -1,4 +1,5 @@
|
|
|
package com.sckw.system.service;
|
|
|
+
|
|
|
import java.util.*;
|
|
|
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
@@ -22,6 +23,7 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
/**
|
|
|
* 菜单service接口
|
|
|
+ *
|
|
|
* @author zk
|
|
|
* @date 2023-05-31
|
|
|
*/
|
|
|
@@ -45,6 +47,7 @@ public class KwsMenuService {
|
|
|
|
|
|
/**
|
|
|
* 添加新纪录
|
|
|
+ *
|
|
|
* @param params
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
@@ -58,13 +61,14 @@ public class KwsMenuService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (kwsMenuDao.insert(params) <=0 ) {
|
|
|
+ if (kwsMenuDao.insert(params) <= 0) {
|
|
|
throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 删除记录-根据主键
|
|
|
+ *
|
|
|
* @param ids
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
@@ -93,6 +97,7 @@ public class KwsMenuService {
|
|
|
|
|
|
/**
|
|
|
* 更新记录
|
|
|
+ *
|
|
|
* @param params
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
@@ -107,6 +112,7 @@ public class KwsMenuService {
|
|
|
|
|
|
/**
|
|
|
* 根据主键查询
|
|
|
+ *
|
|
|
* @param key
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
@@ -117,6 +123,7 @@ public class KwsMenuService {
|
|
|
|
|
|
/**
|
|
|
* 分页查询
|
|
|
+ *
|
|
|
* @param reqVo
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
@@ -162,25 +169,16 @@ public class KwsMenuService {
|
|
|
throw new SystemException(HttpStatus.QUERY_FAIL_CODE, HttpStatus.ACCOUNT_NOT_EXISTS);
|
|
|
}
|
|
|
|
|
|
- //管理员查所有的,普通用户通过企业查
|
|
|
- if (kwsUser.getIsMain() == Global.YES) {
|
|
|
- KwsEnterprise kwsEnterprise = kwsEnterpriseDao.findByUserId(userId);
|
|
|
- if (Objects.isNull(kwsEnterprise)) {
|
|
|
- throw new SystemException(HttpStatus.QUERY_FAIL_CODE, HttpStatus.ENT_NOT_EXISTS);
|
|
|
- }
|
|
|
- findMenuTreePojo.setEntId(kwsEnterprise.getId());
|
|
|
- } else {
|
|
|
- List<KwsUserRole> allByUserId = kwsUserRoleDao.findAllByUserId(userId);
|
|
|
- if (CollectionUtils.isEmpty(allByUserId)) {
|
|
|
- throw new SystemException(HttpStatus.QUERY_FAIL_CODE, HttpStatus.ROLE_NOT_EXISTS);
|
|
|
- }
|
|
|
- List<Long> longs = allByUserId.stream().map(KwsUserRole::getRoleId).toList();
|
|
|
- findMenuTreePojo.setRoleIds(longs);
|
|
|
+ List<KwsUserRole> allByUserId = kwsUserRoleDao.findAllByUserId(userId);
|
|
|
+ if (CollectionUtils.isEmpty(allByUserId)) {
|
|
|
+ throw new SystemException(HttpStatus.QUERY_FAIL_CODE, HttpStatus.ROLE_NOT_EXISTS);
|
|
|
}
|
|
|
+ findMenuTreePojo.setRoleIds(allByUserId.stream().map(KwsUserRole::getRoleId).toList());
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 递归获取下级菜单
|
|
|
+ *
|
|
|
* @param parentId 父级机构id
|
|
|
* @param deptList 所有机构
|
|
|
* @return
|
|
|
@@ -188,7 +186,7 @@ public class KwsMenuService {
|
|
|
public List<KwsMenuResVo> getChild(Long parentId, List<KwsMenuResVo> deptList) {
|
|
|
List<KwsMenuResVo> childList = new ArrayList();
|
|
|
for (KwsMenuResVo kwsMenu : deptList) {
|
|
|
- if(parentId.equals(kwsMenu.getParentId())){
|
|
|
+ if (parentId.equals(kwsMenu.getParentId())) {
|
|
|
//获取当前菜单id的所有子列表
|
|
|
childList.add(kwsMenu);
|
|
|
}
|
|
|
@@ -198,15 +196,15 @@ public class KwsMenuService {
|
|
|
List<KwsMenuResVo> child = getChild(kwsMenu.getId(), deptList);
|
|
|
kwsMenu.setChildren(child);
|
|
|
}
|
|
|
- if(childList.size()==0){
|
|
|
+ if (childList.size() == 0) {
|
|
|
//子菜单的长度为0,返回null,null不会被阿里的FastJson包解析
|
|
|
- return null;
|
|
|
+ return null;
|
|
|
}
|
|
|
- return childList;
|
|
|
+ return childList;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * @param reqVo 菜单ID多个用","隔开
|
|
|
+ * @param reqVo 菜单ID多个用","隔开
|
|
|
* @desc: 角色分配菜单
|
|
|
* @author: czh
|
|
|
* @date: 2023/6/13
|