StringBuffer sb = new StringBuffer();
Map<String,Object> param = new HashMap<String,Object>();
List<Company>companyList = companyService.getAllCompany();
int n = 0;
for(Company company:companyList){
n++;
String companyCode = company.getCompanyCode();
String name = company.getName();
String companyCodeN="";
List<Company>companyCodeList = companyService.companyCodeList(company);
Map<String, Object> map = new HashMap<String, Object>();
map.put("companyCode", companyCode);
Company companyOfParent = this.companyService.getModel(map);
String companyId = companyOfParent.getId();
param.put("companyId", companyId);
List<SysDepartment> list = this.sysDepartmentService.listSysDepartment(param);
if(companyOfParent.getParentCode()!=null){
for(Company companyNew:companyCodeList){
String companyCodeNew = companyOfParent.getCompanyCode();
String companyParentCode = companyOfParent.getParentCode();
String nameNew = companyNew.getName();
sb.append(",{ id:\'"+companyCodeNew+"\', pId:\'"+companyParentCode+"\', name:\""+nameNew+"\"}");
sb.append(",{ id:\'"+n+"\', pId:\'"+companyCodeNew+"\', name:\"部门\"}");
if(list.size()>0){
for(SysDepartment sysDepartment:list){
String deptmentName = sysDepartment.getDepartmentName();
String deptmentCode = sysDepartment.getDepartmentCode();
String parentCode = sysDepartment.getParentCode();
if("0".equals(parentCode))
parentCode = "-1";
sb.append(",{ id:\'"+deptmentCode+"02\', pId:\'"+n+"\', name:\""+deptmentName+"\"," +
"click:\"listStaffFormServer(\'"+deptmentCode+"\')\"}");
}
}
companyCodeN=companyCodeNew;
}
}else{
sb.append(",{ id:\'"+companyCode+"\', pId:0, name:\""+name+"\"}");
sb.append(",{ id:\'"+n+"\', pId:\'"+companyCode+"\', name:\"部门\"}");
if(list.size()>0){
for(SysDepartment sysDepartment:list){
String deptmentName = sysDepartment.getDepartmentName();
String deptmentCode = sysDepartment.getDepartmentCode();
String parentCode = sysDepartment.getParentCode();
if("0".equals(parentCode))
parentCode = "-1";
sb.append(",{ id:\'"+deptmentCode+"02\', pId:\'"+n+"\', name:\""+deptmentName+"\"," +
"click:\"listStaffFormServer(\'"+deptmentCode+"\')\"}");
}
}
}
}
String menuTreeStr="";
if(sb.length()>0){
menuTreeStr = "["+sb.substring(1).toString()+"]";
}else{
menuTreeStr = "[]";
}
model.put("sb", menuTreeStr);
param.put("roleId", roleId);
List<Map<String,Object>> userList = this.sysRoleUserService.listSysRoleUser(param);
model.put("userList", userList);
model.put("roleId", roleId);
return "sys/roleUser/sys_role_user_add";