@PageResource(funcCode = "getSubRole", funcName = "getSubRole")
@RequestMapping(value = "/getSubRole")
@ResponseBody
public String getSubRole(HttpServletRequest request,String userId) {
//拿到商家子账户类型的所有角色集合rolelist
List<Object[]> rolelist = roleService.getRoleByUserType("COMMERCIAL_SUB");
//根据userId拿到该员工在auth_user_role对应的所有角色
List<Object[]> userrole = roleService.getUserRoleByUserIdAndUserType(userId, "COMMERCIAL_SUB");
String str = "";
String xs = "";
String As = "";
if(rolelist!=null&&!"".equals(rolelist)&&!rolelist.isEmpty()){
for(int i=0;i<rolelist.size();i++){
As+=i+",";
if(userrole!=null&&!"".equals(userrole)&&!userrole.isEmpty()){
for(int j=0;j<userrole.size();j++){
if(rolelist.get(i)[2].toString()==userrole.get(j)[3]||rolelist.get(i)[2].toString().equals(userrole.get(j)[3])){
str+="<input type='checkbox' checked='checked' name='roleCode' value='"+rolelist.get(i)[2].toString()+"'/>"+rolelist.get(i)[1].toString()+" ";
xs+=i+",";//把有的权限就记录下来
}
}
}else{
str=str+"<input type='checkbox' name='roleCode' value='"+rolelist.get(i)[2].toString()+"'/>"+rolelist.get(i)[1].toString()+" ";
}
}
String[] A = As.split(",");
String[] x = null;
if(xs!=null) x=xs.split(",");
List<String> listA= java.util.Arrays.asList(A);
List<String> listB= java.util.Arrays.asList(x);
Set setA = new HashSet(listA);
setA.removeAll(listB);
Iterator iterator = setA.iterator();
if(setA.size()>0){
while(iterator.hasNext()){
int ii = Integer.parseInt((String) iterator.next());
str=str+"<input type='checkbox' name='roleCode' value='"+rolelist.get(ii)[2].toString()+"'/>"+rolelist.get(ii)[1].toString()+" ";
}
}
}
return JsonUtil.toJSONString(str);
}
java 两个对象数组进行去重 java两个数组相减
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
【ArkTS】鸿蒙开发 比较两个数的大小 用户界面输入两个数并输出较大数
【HarmonyOS】 鸿蒙开发 (比较两个值大小,输出较大值)在DevEco Studio中开发,用户界面输入两个值,比较两个值大小并输出较大值。主要是练习了对TextInput属性的应用。
鸿蒙开发 TextInput属性 用户界面输入 两个值比较大小 ArkTS -
JAVA 两个类同时实现同一个接口
JAVA 两个类同时实现同一个接口
System 默认方法 静态方法