package com.zy.crm.manager.utils;
|
|
import com.baomidou.mybatisplus.mapper.EntityWrapper;
|
import com.core.common.Cools;
|
import com.core.common.SpringUtils;
|
import com.zy.crm.manager.entity.param.UserChildrenParam;
|
import com.zy.crm.system.entity.Dept;
|
import com.zy.crm.system.entity.Host;
|
import com.zy.crm.system.entity.User;
|
import com.zy.crm.system.service.DeptService;
|
import com.zy.crm.system.service.HostService;
|
import com.zy.crm.system.service.UserService;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Map;
|
|
public class UserChildrenParamUtils {
|
private static Long id = 0L;
|
|
public static UserChildrenParam getUserChildrenParamList(User user) {
|
id = 1L;
|
switch (user.getRoleId().intValue()){
|
case 1:
|
case 2:
|
return getUserChildrenParamListDept(user.getDeptId());
|
case 3:
|
return getUserChildrenParam(user);
|
default:
|
return null;
|
}
|
}
|
|
public static UserChildrenParam getUserChildrenParamListDept(Long deptId) {
|
DeptService deptService = SpringUtils.getBean(DeptService.class);
|
Dept dept = deptService.selectById(deptId);
|
if (Cools.isEmpty(dept) || Cools.isEmpty(dept.getName())){
|
return null;
|
}
|
|
UserService userService = SpringUtils.getBean(UserService.class);
|
List<User> users = userService.selectList(new EntityWrapper<User>().eq("dept_id", dept.getId()));
|
|
List<UserChildrenParam> list = new ArrayList<>();
|
|
for (User userNow:users){
|
id++;
|
UserChildrenParam userChildrenParam = getUserChildrenParam(userNow);
|
list.add(userChildrenParam);
|
}
|
if (dept.getLevel()!=2){
|
List<Dept> deptList = deptService.selectList(new EntityWrapper<Dept>().eq("parent_id", dept.getId()));
|
for (Dept dept1:deptList){
|
UserChildrenParam userChildrenParamListDept = getUserChildrenParamListDept(dept1.getId());
|
list.add(userChildrenParamListDept);
|
}
|
}
|
id++;
|
UserChildrenParam userChildrenParam = new UserChildrenParam(id,0L,dept.getId(),dept.getName(),list);
|
return userChildrenParam;
|
}
|
|
public static UserChildrenParam getUserChildrenParam(User user) {
|
UserChildrenParam userChildrenParam = new UserChildrenParam();
|
userChildrenParam.setId(id);
|
userChildrenParam.setUserId(user.getId());
|
userChildrenParam.setDeptId(user.getDeptId());
|
userChildrenParam.setLabel(user.getNickname());
|
return userChildrenParam;
|
}
|
|
}
|