!410 将部门管理 负责人选项改为下拉框选择 从当前部门的用户列表选择一个人做绑定 后端接收用户ID #I7R8CI

* 将部门管理 负责人选项改为下拉框选择
This commit is contained in:
Lionel
2023-08-09 02:47:25 +00:00
committed by 疯狂的狮子Li
parent 743ebc77d6
commit eb16b9e6a0
12 changed files with 82 additions and 49 deletions

View File

@ -6,6 +6,7 @@ import cn.hutool.core.lang.tree.Tree;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ObjectUtil;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.constant.UserConstants;
import org.dromara.common.core.domain.R;
@ -265,4 +266,12 @@ public class SysUserController extends BaseController {
return R.ok(deptService.selectDeptTreeList(dept));
}
/**
* 获取部门下的所有用户信息
*/
@SaCheckPermission("system:user:list")
@GetMapping("/list/dept/{deptId}")
public R<List<SysUserVo>> listByDept(@PathVariable @NotNull Long deptId) {
return R.ok(userService.selectUserListByDept(deptId));
}
}

View File

@ -47,7 +47,7 @@ public class SysDept extends TenantEntity {
/**
* 负责人
*/
private String leader;
private Long leader;
/**
* 联系电话

View File

@ -50,7 +50,7 @@ public class SysDeptBo extends BaseEntity {
/**
* 负责人
*/
private String leader;
private Long leader;
/**
* 联系电话

View File

@ -61,7 +61,7 @@ public class SysDeptVo implements Serializable {
* 负责人
*/
@ExcelProperty(value = "负责人")
private String leader;
private Long leader;
/**
* 联系电话

View File

@ -94,6 +94,6 @@ public class SysUserExportVo implements Serializable {
*/
@ReverseAutoMapping(target = "leader", source = "dept.leader")
@ExcelProperty(value = "部门负责人")
private String leader;
private Long leader;
}

View File

@ -202,4 +202,11 @@ public interface ISysUserService {
*/
int deleteUserByIds(Long[] userIds);
/**
* 通过部门id查询当前部门所有用户
*
* @param deptId
* @return
*/
List<SysUserVo> selectUserListByDept(Long deptId);
}

View File

@ -132,7 +132,6 @@ public class SysTenantServiceImpl implements ISysTenantService {
SysDept dept = new SysDept();
dept.setTenantId(tenantId);
dept.setDeptName(bo.getCompanyName());
dept.setLeader(bo.getUsername());
dept.setParentId(Constants.TOP_PARENT_ID);
dept.setAncestors(Constants.TOP_PARENT_ID.toString());
deptMapper.insert(dept);
@ -152,6 +151,11 @@ public class SysTenantServiceImpl implements ISysTenantService {
user.setPassword(BCrypt.hashpw(bo.getPassword()));
user.setDeptId(deptId);
userMapper.insert(user);
//新增系统用户后,默认当前用户为部门的负责人
SysDept sd = new SysDept();
sd.setLeader(user.getUserId());
sd.setDeptId(deptId);
deptMapper.updateById(sd);
// 用户和角色关联表
SysUserRole userRole = new SysUserRole();

View File

@ -513,6 +513,19 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
return flag;
}
/**
* 通过部门id查询当前部门所有用户
*
* @param deptId
* @return
*/
@Override
public List<SysUserVo> selectUserListByDept(Long deptId) {
LambdaQueryWrapper<SysUser> lqw = Wrappers.lambdaQuery();
lqw.eq(SysUser::getDeptId, deptId);
return baseMapper.selectVoList(lqw);
}
@Cacheable(cacheNames = CacheNames.SYS_USER_NAME, key = "#userId")
@Override
public String selectUserNameById(Long userId) {