|
@@ -387,6 +387,25 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|
|
}
|
|
|
return pageResult;
|
|
|
}
|
|
|
+ @Override
|
|
|
+ public List<AdminUserDO> selectGraduateStudentList(UserPageReqVO reqVO){
|
|
|
+ Long loginId = SecurityFrameworkUtils.getLoginUserId();
|
|
|
+ Set<Long> roleIds = permissionService.getUserRoleIdListByUserId(loginId);
|
|
|
+ List<AdminUserDO> ResultList = userMapper.selectGraduateStudentList(reqVO, getDeptCondition(reqVO.getDeptId()),roleIds,loginId);
|
|
|
+ // 循环处理每个毕业生
|
|
|
+ for (AdminUserDO student :ResultList) {
|
|
|
+ // 根据 supervisorId 查询导师信息
|
|
|
+ if (student.getSupervisorId() != null) {
|
|
|
+ AdminUserDO supervisorUser = getUser(student.getSupervisorId());
|
|
|
+ String supervisor = supervisorUser.getNickname();
|
|
|
+ String mobile = supervisorUser.getMobile();
|
|
|
+ // 赋值给 对应 字段
|
|
|
+ student.setSupervisor(supervisor);
|
|
|
+ student.setSupervisorMobile(mobile);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return ResultList;
|
|
|
+ }
|
|
|
|
|
|
//查询所有导师
|
|
|
@Override
|
|
@@ -656,7 +675,7 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|
|
String transformUserType =TransformUserType(importUser.getUserType());// 转换学生类型
|
|
|
if (existUser == null) {
|
|
|
|
|
|
- AdminUserDO newUser = BeanUtils.toBean(importUser, AdminUserDO.class)
|
|
|
+ UserSaveReqVO newUser = BeanUtils.toBean(importUser, UserSaveReqVO.class)
|
|
|
.setPassword(encodePassword(importUser.getPassword()))
|
|
|
.setPostIds(new HashSet<>()); // 设置默认密码及空岗位编号数组
|
|
|
|
|
@@ -664,27 +683,22 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|
|
newUser.setSupervisorId(userMapper.getUserByNickName(importUser.getSupervisor()).getId());
|
|
|
}// 导师名称转id
|
|
|
newUser.setUserType(transformUserType); // 插入学生类型
|
|
|
- newUser.setTenantId(1L);//设置租户编号
|
|
|
+// newUser.setTenantId(1L);//设置租户编号
|
|
|
newUser.setDeptId(deptId);//设置工作间id
|
|
|
|
|
|
- Long insertUserId = userMapper.insertAndGetId(newUser); // 执行插入用户数据
|
|
|
+ Long userId = createUser(newUser); // 执行插入用户数据
|
|
|
|
|
|
Set<Long> roleIds = new HashSet<>();
|
|
|
//赋予用户角色
|
|
|
if (transformUserType.equals("1") ||transformUserType.equals("2")){//在校生和毕业生
|
|
|
roleIds.add(112L);//学生权限
|
|
|
- permissionService.assignUserRole(insertUserId,roleIds);
|
|
|
+ permissionService.assignUserRole(userId,roleIds);
|
|
|
}else if (transformUserType.equals("3")){
|
|
|
- //设置为负责人
|
|
|
- DeptDO dept = deptService.getDept(deptId);
|
|
|
- DeptSaveReqVO newDept =BeanUtils.toBean(dept,DeptSaveReqVO.class);
|
|
|
- newDept.getLeaderUserId().add(insertUserId);
|
|
|
- deptService.updateDept(newDept);
|
|
|
roleIds.add(113L);//导师权限
|
|
|
- permissionService.assignUserRole(insertUserId,roleIds);
|
|
|
+ permissionService.assignUserRole(userId,roleIds);
|
|
|
}else if (transformUserType.equals("4")){
|
|
|
roleIds.add(114L);//学院权限
|
|
|
- permissionService.assignUserRole(insertUserId,roleIds);
|
|
|
+ permissionService.assignUserRole(userId,roleIds);
|
|
|
}
|
|
|
respVO.getCreateUsernames().add(importUser.getUsername());
|
|
|
return;
|
|
@@ -695,20 +709,20 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|
|
respVO.getFailureUsernames().put(importUser.getUsername(), USER_USERNAME_EXISTS.getMsg());
|
|
|
return;
|
|
|
}
|
|
|
- AdminUserDO updateUser = BeanUtils.toBean(importUser, AdminUserDO.class);
|
|
|
+ UserSaveReqVO updateUser = BeanUtils.toBean(importUser, UserSaveReqVO.class);
|
|
|
updateUser.setId(existUser.getId());
|
|
|
updateUser.setDeptId(deptId);//更新工作间
|
|
|
updateUser.setUserType(transformUserType);//更新学生类型
|
|
|
if (importUser.getSupervisor()!=null) {
|
|
|
updateUser.setSupervisorId(userMapper.getUserByNickName(importUser.getSupervisor()).getId());
|
|
|
}// 导师名称转id
|
|
|
- userMapper.updateById(updateUser);
|
|
|
+ updateUser(updateUser);
|
|
|
respVO.getUpdateUsernames().add(importUser.getUsername());
|
|
|
});
|
|
|
return respVO;
|
|
|
}
|
|
|
-//导师
|
|
|
|
|
|
+//导师
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class) // 添加事务,异常则回滚所有导入
|
|
|
public UserImportRespVO importTeacherList(List<teacherImportExcelVO> importUsers, boolean isUpdateSupport) {
|
|
@@ -774,6 +788,8 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class) // 添加事务,异常则回滚所有导入
|
|
|
public UserImportRespVO importGraduateList(List<graduateStudentImportExcelVO> importUsers, boolean isUpdateSupport) {
|
|
|
+
|
|
|
+
|
|
|
// 1.1 参数校验
|
|
|
if (CollUtil.isEmpty(importUsers)) {
|
|
|
throw exception(USER_IMPORT_LIST_IS_EMPTY);
|
|
@@ -790,21 +806,29 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|
|
respVO.getFailureUsernames().put(importUser.getUsername(), ex.getMessage());
|
|
|
return;
|
|
|
}
|
|
|
+
|
|
|
+ Long loginId = SecurityFrameworkUtils.getLoginUserId();
|
|
|
+ Set<Long> UserRoleIds = permissionService.getUserRoleIdListByUserId(loginId);//获取登录人的权限
|
|
|
+
|
|
|
importUser.setUserType("2");//确定是毕业生
|
|
|
// 2.2.1 判断如果不存在,在进行插入
|
|
|
AdminUserDO existUser = userMapper.selectByUsername(importUser.getUsername());
|
|
|
if (existUser == null) {
|
|
|
UserSaveReqVO newUser = BeanUtils.toBean(importUser, UserSaveReqVO.class);
|
|
|
if (importUser.getPassword()==null){
|
|
|
- newUser.setPassword(encodePassword("123456"));
|
|
|
- }else {
|
|
|
- newUser.setPassword(encodePassword(importUser.getPassword()));
|
|
|
+ newUser.setPassword(encodePassword("123456"));//设置毕业生密码
|
|
|
}
|
|
|
- if (importUser.getSupervisor()!=null) {
|
|
|
+ if (importUser.getUsername()==null){
|
|
|
+ newUser.setUsername(String.valueOf((int) (Math.random() * 900000000) + 100000000));//设置毕业生账号
|
|
|
+ }
|
|
|
+
|
|
|
+ if (UserRoleIds.contains(113L)){//是导师
|
|
|
+ newUser.setSupervisorId(loginId);
|
|
|
+ } else if (UserRoleIds.contains(114L) &&importUser.getSupervisor()!=null){//是学院
|
|
|
newUser.setSupervisorId(userMapper.getUserByNickName(importUser.getSupervisor()).getId());
|
|
|
- }// 导师名称转id
|
|
|
+ }
|
|
|
|
|
|
- Long userId = createUser(newUser); // 执行插入用户数据
|
|
|
+ Long userId = createUser(newUser); // 执行插入用户数据
|
|
|
|
|
|
Set<Long> roleIds = new HashSet<>();
|
|
|
//赋予学生角色
|
|
@@ -822,9 +846,11 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|
|
}
|
|
|
UserSaveReqVO updateUser = BeanUtils.toBean(importUser, UserSaveReqVO.class);
|
|
|
updateUser.setId(existUser.getId());
|
|
|
- if (importUser.getSupervisor()!=null) {
|
|
|
+ if (UserRoleIds.contains(113L)){//是导师
|
|
|
+ updateUser.setSupervisorId(loginId);
|
|
|
+ } else if (UserRoleIds.contains(114L) &&importUser.getSupervisor()!=null){//是学院
|
|
|
updateUser.setSupervisorId(userMapper.getUserByNickName(importUser.getSupervisor()).getId());
|
|
|
- }// 导师名称转id
|
|
|
+ }
|
|
|
updateUser(updateUser);
|
|
|
respVO.getUpdateUsernames().add(importUser.getUsername());
|
|
|
});
|