Commit 5b9e7c85 by 王祖波

写死过滤菜单权限

parent 025d1eab
...@@ -27,6 +27,7 @@ import com.gic.haoban.manage.service.service.content.adaptor.EnterpriseAdaptor; ...@@ -27,6 +27,7 @@ import com.gic.haoban.manage.service.service.content.adaptor.EnterpriseAdaptor;
import com.gic.haoban.manage.service.service.role.HaobanMenuService; import com.gic.haoban.manage.service.service.role.HaobanMenuService;
import com.gic.haoban.manage.service.service.role.HaobanRoleMenuService; import com.gic.haoban.manage.service.service.role.HaobanRoleMenuService;
import com.gic.haoban.manage.service.service.role.HaobanRoleService; import com.gic.haoban.manage.service.service.role.HaobanRoleService;
import com.gic.haoban.manage.service.util.ApolloUtils;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
...@@ -287,10 +288,26 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService { ...@@ -287,10 +288,26 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService {
haobanMenuList.add(bo) ; haobanMenuList.add(bo) ;
} }
} }
haobanMenuList = filterHaobanMenu(enterpriseId, haobanMenuList);
retBO.setMenuList(EntityUtil.changeEntityListNew(HaobanMenuDTO.class, haobanMenuList)); retBO.setMenuList(EntityUtil.changeEntityListNew(HaobanMenuDTO.class, haobanMenuList));
return ServiceResponse.success(EntityUtil.changeEntityNew(HaobanRoleDTO.class, retBO)); return ServiceResponse.success(EntityUtil.changeEntityNew(HaobanRoleDTO.class, retBO));
} }
private List<HaobanMenuBO> filterHaobanMenu(String enterpriseId,List<HaobanMenuBO> allMenuList) {
if (CollectionUtils.isEmpty(allMenuList)) {
return allMenuList;
}
boolean filterEid = ApolloUtils.filterEid(enterpriseId);
if (!filterEid) {
return allMenuList;
}
List<String> list = ApolloUtils.filterMenuCode();
if (CollectionUtils.isEmpty(list)) {
return allMenuList;
}
return allMenuList.stream().filter(menu -> !list.contains(menu.getMenuCode())).collect(Collectors.toList());
}
private List<String> listRoleMenuCode(List<HaobanMenuBO> allMenuList , String wxEnterpriseId , Long roleId) { private List<String> listRoleMenuCode(List<HaobanMenuBO> allMenuList , String wxEnterpriseId , Long roleId) {
List<String> menuCodes = haobanRoleMenuService.getByWxEnterpriseIdAndRoleId(wxEnterpriseId, roleId); List<String> menuCodes = haobanRoleMenuService.getByWxEnterpriseIdAndRoleId(wxEnterpriseId, roleId);
// 添加关联的权限 // 添加关联的权限
......
...@@ -7,7 +7,11 @@ import org.apache.commons.lang3.StringUtils; ...@@ -7,7 +7,11 @@ import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
public class ApolloUtils { public class ApolloUtils {
...@@ -103,4 +107,22 @@ public class ApolloUtils { ...@@ -103,4 +107,22 @@ public class ApolloUtils {
String connectionMaxIdleMs = config.getProperty(HoloDataSource.HOLO_CONNECTIONMAXIDLEMS, "9000"); String connectionMaxIdleMs = config.getProperty(HoloDataSource.HOLO_CONNECTIONMAXIDLEMS, "9000");
return Integer.parseInt(connectionMaxIdleMs); return Integer.parseInt(connectionMaxIdleMs);
} }
public static boolean filterEid(String eid) {
Config config = ConfigService.getAppConfig();
String filterEid = config.getProperty("filterEid", "");
if (StringUtils.isBlank(filterEid)) {
return false;
}
return filterEid.contains(eid);
}
public static List<String> filterMenuCode() {
Config config = ConfigService.getAppConfig();
String filterMenuCode = config.getProperty("filterMenuCode", "");
if (StringUtils.isBlank(filterMenuCode)) {
return new ArrayList<>();
}
return Arrays.stream(filterMenuCode.split(",")).collect(Collectors.toList());
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment