- 開発が遭遇する単一のマルチユーザー、マルチロール権限の問題を、我々割り当て権限が再グループに行うために、そうでない場合は、ログイン後に繰り返し、メニューやボタンがあるだろう
レンダリング:
実装コード:
- HashSetの重複排除プロセスは、ここで私は完全な権限グループのアプローチを貼り付けます。
//查询用户角色对应的系统 用于登录时权限分配
public List<Map<String, Object>> findBankRoleSys(List<Map<String, Object>> list, String bankId){
if(list != null ) {
StringBuilder builer = new StringBuilder(); //保存一次处理后的字符串
Set<String> sets=new HashSet<>(); //去重处理
String auths = null; //保存处理完的字符串
list.forEach((temp)->{
sets.addAll(Arrays.asList(temp.get("role_auths").toString().split(",")));
});
for(String hs : sets) {
if(hs.length() == 3) {
builer.append("'"+hs+"',"); //过滤掉code为三(系统)的数据
}
}
if(builer != null && builer.length() >0) {
auths = builer.substring(0,builer.length()-1);
}
String sql = "SELECT * FROM t_bank_sys_menu where `status`=0 AND statuz =0 AND bank_id = '"+bankId+"' AND menu_code IN ("+auths+")";
List<Map<String, Object>> menuslist = jt.queryForList(sql);
return menuslist;
}
return null;
}