Commit ffe40306 authored by cq990612's avatar cq990612

优化代码结构

parent fc65ac4c
package cn.wisenergy.mapper; package cn.wisenergy.mapper;
import cn.wisenergy.model.app.WorkUser;
import cn.wisenergy.model.app.WorkUserRole; import cn.wisenergy.model.app.WorkUserRole;
import cn.wisenergy.model.dto.UserRoleLevelDto; import cn.wisenergy.model.dto.UserRoleLevelDto;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
...@@ -17,4 +18,6 @@ public interface WorkUserRoleMapper extends BaseMapper<WorkUserRole> { ...@@ -17,4 +18,6 @@ public interface WorkUserRoleMapper extends BaseMapper<WorkUserRole> {
int insertBatch(@Param("userId") Integer userId,@Param("roleIds") List<Integer> roleIds); int insertBatch(@Param("userId") Integer userId,@Param("roleIds") List<Integer> roleIds);
List<UserRoleLevelDto> getRoleUserLevel(Integer userId); List<UserRoleLevelDto> getRoleUserLevel(Integer userId);
List<WorkUser> getUserRoleDeptDtoByRoleId(Integer role);
} }
...@@ -32,5 +32,16 @@ WHERE ur.user_id = #{userId} ...@@ -32,5 +32,16 @@ WHERE ur.user_id = #{userId}
ORDER BY rank desc ORDER BY rank desc
</select>
<select id="getUserRoleDeptDtoByRoleId" resultType="cn.wisenergy.model.app.WorkUser">
select u.id,u.name,u.dept_id
from work_user_role r left JOIN work_user u on r.user_id = u.id
<where>
<if test="null != roleId">
r.role_id = #{roleId}
</if>
group by r.user_id
</where>
</select> </select>
</mapper> </mapper>
\ No newline at end of file
...@@ -72,4 +72,6 @@ public class WorkTimeOrder implements Serializable { ...@@ -72,4 +72,6 @@ public class WorkTimeOrder implements Serializable {
@ApiModelProperty(name = "rejectTime",value = "驳回时间") @ApiModelProperty(name = "rejectTime",value = "驳回时间")
private Date rejectTime; private Date rejectTime;
} }
...@@ -21,5 +21,4 @@ public class WorkUserRole { ...@@ -21,5 +21,4 @@ public class WorkUserRole {
@ApiModelProperty(name = "roleId",value = "角色id") @ApiModelProperty(name = "roleId",value = "角色id")
private Integer roleId; private Integer roleId;
} }
...@@ -15,5 +15,5 @@ public class DeptUserDto { ...@@ -15,5 +15,5 @@ public class DeptUserDto {
private String deptName; private String deptName;
private List<ResultUser> resultUsers; private List<UserDto> userDtos;
} }
package cn.wisenergy.model.dto;
import lombok.Data;
import java.util.List;
/**
* @Authotr:陈奇
* @QQ1799796883
*/
@Data
public class OrganizationDto {
List<OrganizationStructureDto> organizationStructureDtos;
List<OrganizationStructureDto> organizationDtos;
}
package cn.wisenergy.model.dto;
import lombok.Data;
/**
* @Authotr:陈奇
* @QQ1799796883
*/
@Data
public class UserDto {
private Integer id;
private String name;
}
...@@ -2,7 +2,7 @@ package cn.wisenergy.service; ...@@ -2,7 +2,7 @@ package cn.wisenergy.service;
import cn.wisenergy.model.app.WorkUser; import cn.wisenergy.model.app.WorkUser;
import cn.wisenergy.model.dto.AllRoleAndUserRoleDto; import cn.wisenergy.model.dto.AllRoleAndUserRoleDto;
import cn.wisenergy.model.dto.OrganizationStructureDto; import cn.wisenergy.model.dto.OrganizationDto;
import cn.wisenergy.model.dto.ResultUser; import cn.wisenergy.model.dto.ResultUser;
import java.util.List; import java.util.List;
...@@ -53,7 +53,7 @@ public interface WorkUserService { ...@@ -53,7 +53,7 @@ public interface WorkUserService {
* 获取组织架构 * 获取组织架构
* @return * @return
*/ */
List<OrganizationStructureDto> getOrganizationStructure(); OrganizationDto getOrganizationStructure();
AllRoleAndUserRoleDto getUserRoleDto(Integer userId,Integer page, Integer pageSize,Integer status,String key); AllRoleAndUserRoleDto getUserRoleDto(Integer userId,Integer page, Integer pageSize,Integer status,String key);
......
...@@ -509,8 +509,14 @@ public class WorkProjectServiceImpl implements WorkProjectService { ...@@ -509,8 +509,14 @@ public class WorkProjectServiceImpl implements WorkProjectService {
} }
} }
if (null != modifyProjectVo.getManagerId()) { if (null != modifyProjectVo.getManagerId()) {
List<Integer> role = UserRoleLevelUtils.getRole(modifyProjectVo.getManagerId()); List<Integer> roles = UserRoleLevelUtils.getRole(modifyProjectVo.getManagerId());
if (1 == role.size() && role.get(0).equals(0)) { int index = 0;
for (Integer role : roles) {
if (role == 1) {
index++;
}
}
if (index == 0) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.NOADMIN_ISTRATIVE_RIGHTS); throw new BaseCustomException(BASE_RESP_CODE_ENUM.NOADMIN_ISTRATIVE_RIGHTS);
} }
} }
......
...@@ -120,8 +120,9 @@ public class WorkUserServiceImpl implements WorkUserService { ...@@ -120,8 +120,9 @@ public class WorkUserServiceImpl implements WorkUserService {
} }
@Override @Override
public List<OrganizationStructureDto> getOrganizationStructure() { public OrganizationDto getOrganizationStructure() {
log.info("WorkUserServiceImpl[]getOrganizationStructure[]"); log.info("WorkUserServiceImpl[]getOrganizationStructure[]");
OrganizationDto organizationDto = new OrganizationDto();
PageHelper.clearPage(); PageHelper.clearPage();
List<OrganizationStructureDto> allDeptByAllCentreId = workDeptService.getAllDeptByAllCentreId(); List<OrganizationStructureDto> allDeptByAllCentreId = workDeptService.getAllDeptByAllCentreId();
QueryWrapper<WorkUser> wrapper = new QueryWrapper<>(); QueryWrapper<WorkUser> wrapper = new QueryWrapper<>();
...@@ -131,22 +132,46 @@ public class WorkUserServiceImpl implements WorkUserService { ...@@ -131,22 +132,46 @@ public class WorkUserServiceImpl implements WorkUserService {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.DEPT_NOT_HAVE_USER); throw new BaseCustomException(BASE_RESP_CODE_ENUM.DEPT_NOT_HAVE_USER);
} }
ResultUser resultUser; UserDto userDto;
for (OrganizationStructureDto organizationStructureDto : allDeptByAllCentreId) { for (OrganizationStructureDto organizationStructureDto : allDeptByAllCentreId) {
List<DeptUserDto> deptUserDtos = organizationStructureDto.getDeptUserDtos(); List<DeptUserDto> deptUserDtos = organizationStructureDto.getDeptUserDtos();
for (DeptUserDto deptUserDto : deptUserDtos) { for (DeptUserDto deptUserDto : deptUserDtos) {
List<ResultUser> ResultUsers = new ArrayList<>(); List<UserDto> userDtos = new ArrayList<>();
for (WorkUser workUser : workUsers) { for (WorkUser workUser : workUsers) {
if (workUser.getDeptId().equals(deptUserDto.getDeptId())) { if (workUser.getDeptId().equals(deptUserDto.getDeptId())) {
resultUser = getResultUser(workUser); userDto = getUserDto(workUser);
ResultUsers.add(resultUser); userDtos.add(userDto);
} }
} }
deptUserDto.setResultUsers(ResultUsers); deptUserDto.setUserDtos(userDtos);
} }
} }
return allDeptByAllCentreId; organizationDto.setOrganizationStructureDtos(allDeptByAllCentreId);
List<WorkUser> users = workUserRoleMapper.getUserRoleDeptDtoByRoleId(1);
if (!CollectionUtils.isEmpty(users)) {
List<OrganizationStructureDto> allDeptByAllCentre = workDeptService.getAllDeptByAllCentreId();
UserDto userDto1 ;
for (OrganizationStructureDto organizationStructureDto : allDeptByAllCentre) {
List<DeptUserDto> deptUserDtos = organizationStructureDto.getDeptUserDtos();
for (DeptUserDto deptUserDto : deptUserDtos) {
List<UserDto> UserDtos1 = new ArrayList<>();
for (WorkUser user : users) {
if (user.getDeptId().equals(deptUserDto.getDeptId())) {
userDto1 = getUserDto(user);
UserDtos1.add(userDto1);
}
}
deptUserDto.setUserDtos(UserDtos1);
} }
}
organizationDto.setOrganizationDtos(allDeptByAllCentre);
}
return organizationDto;
}
@Override @Override
public AllRoleAndUserRoleDto getUserRoleDto(Integer userId, Integer page, Integer pageSize,Integer status,String key) { public AllRoleAndUserRoleDto getUserRoleDto(Integer userId, Integer page, Integer pageSize,Integer status,String key) {
...@@ -325,4 +350,16 @@ public class WorkUserServiceImpl implements WorkUserService { ...@@ -325,4 +350,16 @@ public class WorkUserServiceImpl implements WorkUserService {
} }
return resultUser; return resultUser;
} }
private UserDto getUserDto(WorkUser workUser) {
log.info("WorkUSerServiceImpl[]getUserDto[]input.method");
UserDto userDto = new UserDto();
try {
BeanUtils.copyProperties(userDto, workUser);
} catch (Exception e) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.QUERY_USER_INFO_FAIL);
}
return userDto;
}
} }
package cn.wisenergy.web.admin.controller.app; package cn.wisenergy.web.admin.controller.app;
import cn.wisenergy.common.utils.exception.*; import cn.wisenergy.common.utils.exception.*;
import cn.wisenergy.model.dto.OrganizationStructureDto; import cn.wisenergy.model.dto.OrganizationDto;
import cn.wisenergy.model.dto.ResultUser; import cn.wisenergy.model.dto.ResultUser;
import cn.wisenergy.service.WorkUserService; import cn.wisenergy.service.WorkUserService;
import cn.wisenergy.web.admin.controller.common.BaseController; import cn.wisenergy.web.admin.controller.common.BaseController;
...@@ -16,8 +16,6 @@ import org.springframework.web.bind.annotation.GetMapping; ...@@ -16,8 +16,6 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* @description: * @description:
* @author: nh * @author: nh
...@@ -78,10 +76,10 @@ public class WorkUserController extends BaseController { ...@@ -78,10 +76,10 @@ public class WorkUserController extends BaseController {
@ApiOperation(value = "组织架构", notes = "组织架构", httpMethod = "GET") @ApiOperation(value = "组织架构", notes = "组织架构", httpMethod = "GET")
@GetMapping(value = "/getOrganizationStructureDto") @GetMapping(value = "/getOrganizationStructureDto")
public Result<List<OrganizationStructureDto>> getOrganizationStructureDto(){ public Result<OrganizationDto> getOrganizationStructureDto(){
log.info("WorkUserController[]getOrganizationStructureDto[]"); log.info("WorkUserController[]getOrganizationStructureDto[]");
List<OrganizationStructureDto> organizationStructure = workUserService.getOrganizationStructure(); OrganizationDto organizationDto = workUserService.getOrganizationStructure();
return getResult(organizationStructure); return getResult(organizationDto);
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment