Commit a2aa9418 authored by cq990612's avatar cq990612

优化代码结构

parent bb4660b1
...@@ -138,7 +138,7 @@ ...@@ -138,7 +138,7 @@
</select> </select>
<select id="getManagerProjectsDto" resultType="cn.wisenergy.model.dto.ManagerProjectsDto"> <select id="getManagerProjectsDto" resultType="cn.wisenergy.model.dto.ManagerProjectsDto">
select select
p.id,p.oa_project_id,p.project_name,p.manager_id,lu.manager_name,p.dept_id,p.modify_time,p.type,p.create_time,p.is_conclusion, p.id,p.oa_project_id,p.project_name,p.business_id,p.business_name,p.manager_id,d.dept_name,lu.manager_name,p.dept_id,p.modify_time,p.type,p.create_time,p.is_conclusion,
GROUP_CONCAT(DISTINCT(u.name)) as 'participants',p.cost_budget,p.work_time,p.start_time,p.end_time, GROUP_CONCAT(DISTINCT(u.name)) as 'participants',p.cost_budget,p.work_time,p.start_time,p.end_time,
if(cost is NULL,0,0 + cast(cost as char)) as 'currentLaborCost',if(total_time is NULL,0,0 + cast(total_time as if(cost is NULL,0,0 + cast(cost as char)) as 'currentLaborCost',if(total_time is NULL,0,0 + cast(total_time as
char)) as 'totalCurrentWorkingHours', char)) as 'totalCurrentWorkingHours',
...@@ -148,6 +148,7 @@ ...@@ -148,6 +148,7 @@
FROM work_project_time_cost FROM work_project_time_cost
GROUP BY project_id) o on p.id = o.project_id GROUP BY project_id) o on p.id = o.project_id
LEFT JOIN (select id,`name` as 'manager_name'from work_user) lu on p.manager_id=lu.id LEFT JOIN (select id,`name` as 'manager_name'from work_user) lu on p.manager_id=lu.id
LEFT JOIN work_dept d on p.dept_id=d.id
LEFT JOIN work_user_project up ON p.id = up.project_id LEFT JOIN work_user_project up ON p.id = up.project_id
LEFT JOIN work_user u on u.id = up.user_id LEFT JOIN work_user u on u.id = up.user_id
<where> <where>
......
...@@ -49,6 +49,9 @@ public class ManagerProjectsDto implements Serializable { ...@@ -49,6 +49,9 @@ public class ManagerProjectsDto implements Serializable {
@ApiModelProperty(name = "deptId",value = "部门id") @ApiModelProperty(name = "deptId",value = "部门id")
private Integer deptId; private Integer deptId;
@ApiModelProperty(name = "deptName",value = "部门名称")
private String deptName;
@ApiModelProperty(name = "workTime",value = "工时预算") @ApiModelProperty(name = "workTime",value = "工时预算")
private Integer workTime; private Integer workTime;
......
...@@ -20,7 +20,7 @@ public class ModifyProjectVo { ...@@ -20,7 +20,7 @@ public class ModifyProjectVo {
private Integer managerId; private Integer managerId;
private String manageIdReason; private String managerIdReason;
private Integer projectId; private Integer projectId;
......
...@@ -331,14 +331,14 @@ public class WorkProjectServiceImpl implements WorkProjectService { ...@@ -331,14 +331,14 @@ public class WorkProjectServiceImpl implements WorkProjectService {
workProjectChange.setReason(modifyProjectVo.getDeptIdReason()); workProjectChange.setReason(modifyProjectVo.getDeptIdReason());
workProjectChanges.add(workProjectChange); workProjectChanges.add(workProjectChange);
} }
if (!StringUtils.isBlank(modifyProjectVo.getManageIdReason())) { if (!StringUtils.isBlank(modifyProjectVo.getManagerIdReason())) {
WorkProjectChange workProjectChange = new WorkProjectChange(); WorkProjectChange workProjectChange = new WorkProjectChange();
workProjectChange.setProjectId(modifyProjectVo.getProjectId()); workProjectChange.setProjectId(modifyProjectVo.getProjectId());
workProjectChange.setModifyTime(new Date()); workProjectChange.setModifyTime(new Date());
workProjectChange.setChangeType(5); workProjectChange.setChangeType(5);
workProjectChange.setModifyBefore(workUserService.getById(workProject.getManagerId()).getName()); workProjectChange.setModifyBefore(workUserService.getById(workProject.getManagerId()).getName());
workProjectChange.setModifyAfter(workUserService.getById(modifyProjectVo.getManagerId()).getName()); workProjectChange.setModifyAfter(workUserService.getById(modifyProjectVo.getManagerId()).getName());
workProjectChange.setReason(modifyProjectVo.getManageIdReason()); workProjectChange.setReason(modifyProjectVo.getManagerIdReason());
workProjectChanges.add(workProjectChange); workProjectChanges.add(workProjectChange);
} }
if (!StringUtils.isBlank(modifyProjectVo.getStartTimeReason())) { if (!StringUtils.isBlank(modifyProjectVo.getStartTimeReason())) {
...@@ -458,10 +458,6 @@ public class WorkProjectServiceImpl implements WorkProjectService { ...@@ -458,10 +458,6 @@ public class WorkProjectServiceImpl implements WorkProjectService {
* 判断更变内容是否等于原内容 * 判断更变内容是否等于原内容
*/ */
private void verificationItem(ModifyProjectVo modifyProjectVo, WorkProject workProject, List<Integer> userIds) { private void verificationItem(ModifyProjectVo modifyProjectVo, WorkProject workProject, List<Integer> userIds) {
// 校验商机编号/商机名称(只有项目才能编辑)
if (1 != workProject.getType() && (!StringUtils.isBlank(modifyProjectVo.getBusinessId()) || !StringUtils.isBlank(modifyProjectVo.getBusinessName()))) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.NON_PROJECT_OPPORTUNITYNUMBERNAME_ISEMPTY);
}
// 校验部门 // 校验部门
if (!workProject.getDeptId().equals(modifyProjectVo.getDeptId())) { if (!workProject.getDeptId().equals(modifyProjectVo.getDeptId())) {
...@@ -488,6 +484,7 @@ public class WorkProjectServiceImpl implements WorkProjectService { ...@@ -488,6 +484,7 @@ public class WorkProjectServiceImpl implements WorkProjectService {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.theNewContent_IsEqual_ToTheOriginal_Content); throw new BaseCustomException(BASE_RESP_CODE_ENUM.theNewContent_IsEqual_ToTheOriginal_Content);
} }
} }
// 校验结束时间 // 校验结束时间
if (null != modifyProjectVo.getEndTime()) { if (null != modifyProjectVo.getEndTime()) {
if (StringUtils.isBlank(modifyProjectVo.getEndTimeReason())) { if (StringUtils.isBlank(modifyProjectVo.getEndTimeReason())) {
...@@ -530,9 +527,10 @@ public class WorkProjectServiceImpl implements WorkProjectService { ...@@ -530,9 +527,10 @@ public class WorkProjectServiceImpl implements WorkProjectService {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.theNewContent_IsEqual_ToTheOriginal_Content); throw new BaseCustomException(BASE_RESP_CODE_ENUM.theNewContent_IsEqual_ToTheOriginal_Content);
} }
} }
// 校验负责人 // 校验负责人
if (!workProject.getManagerId().equals(modifyProjectVo.getManagerId())) { if (!workProject.getManagerId().equals(modifyProjectVo.getManagerId())) {
if (StringUtils.isBlank(modifyProjectVo.getManageIdReason())) { if (StringUtils.isBlank(modifyProjectVo.getManagerIdReason())) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.REASON_CANNOT_BE_EMPTY); throw new BaseCustomException(BASE_RESP_CODE_ENUM.REASON_CANNOT_BE_EMPTY);
} }
List<Integer> roles = UserRoleLevelUtils.getRole(modifyProjectVo.getManagerId()); List<Integer> roles = UserRoleLevelUtils.getRole(modifyProjectVo.getManagerId());
...@@ -547,6 +545,7 @@ public class WorkProjectServiceImpl implements WorkProjectService { ...@@ -547,6 +545,7 @@ public class WorkProjectServiceImpl implements WorkProjectService {
} }
} }
/*if (null == modifyProjectVo.getStartTime() && null == modifyProjectVo.getEndTime() && null == modifyProjectVo.getCostBudget() && null == modifyProjectVo.getWorkTime() && workProject.getDeptId().equals(modifyProjectVo.getDeptId()) && workProject.getManagerId().equals(modifyProjectVo.getManagerId()) ) { /*if (null == modifyProjectVo.getStartTime() && null == modifyProjectVo.getEndTime() && null == modifyProjectVo.getCostBudget() && null == modifyProjectVo.getWorkTime() && workProject.getDeptId().equals(modifyProjectVo.getDeptId()) && workProject.getManagerId().equals(modifyProjectVo.getManagerId()) ) {
if (userIds.containsAll(modifyProjectVo.getUserIds()) && if (userIds.containsAll(modifyProjectVo.getUserIds()) &&
......
...@@ -28,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -28,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import java.util.*; import java.util.*;
import static java.util.Collections.*; import static java.util.Collections.*;
...@@ -210,6 +211,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -210,6 +211,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
int totalTime = 0; int totalTime = 0;
List<WorkTimeOrder> addList = new ArrayList<>(); List<WorkTimeOrder> addList = new ArrayList<>();
List<Integer> typeIds = workTypeService.getIdByReviewer(1); List<Integer> typeIds = workTypeService.getIdByReviewer(1);
List<WorkType> workTypes = workTypeService.getAll(null);
for (WorkTimeOrderDto dto : workTimeOrders) { for (WorkTimeOrderDto dto : workTimeOrders) {
// 3.判断工单是否合法 // 3.判断工单是否合法
isEmpty(dto); isEmpty(dto);
...@@ -217,7 +219,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -217,7 +219,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
// 获取用户名和类型名 // 获取用户名和类型名
Integer type = dto.getType(); Integer type = dto.getType();
dto.setUserName(workUserService.getById(dto.getUserId()).getName()); dto.setUserName(workUserService.getById(dto.getUserId()).getName());
dto.setTypeName(getTypeName(type)); dto.setTypeName(getTypeName(type, workTypes));
if (!CollectionUtils.isEmpty(typeIds)) { if (!CollectionUtils.isEmpty(typeIds)) {
if (typeIds.contains(type)) { if (typeIds.contains(type)) {
dto.setProjectName(workProjectService.getById(dto.getProjectId()).getProjectName()); dto.setProjectName(workProjectService.getById(dto.getProjectId()).getProjectName());
...@@ -411,6 +413,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -411,6 +413,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
System.out.println(workTimeOrder); System.out.println(workTimeOrder);
} }
List<Integer> typeIds = workTypeService.getIdByReviewer(1); List<Integer> typeIds = workTypeService.getIdByReviewer(1);
List<WorkType> workTypes = workTypeService.getAll(null);
for (AppletsPendApprovalDto approvalDto : appletsPendApprovalDtos) { for (AppletsPendApprovalDto approvalDto : appletsPendApprovalDtos) {
List<WorkTimeOrderDto> workTimeOrderList = new ArrayList<>(); List<WorkTimeOrderDto> workTimeOrderList = new ArrayList<>();
for (WorkTimeOrder workTimeOrder : workTimeOrders) { for (WorkTimeOrder workTimeOrder : workTimeOrders) {
...@@ -426,7 +429,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -426,7 +429,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
workTimeOrderDto.setManagerName(workUserService.getById(workProjectService.getById(workTimeOrderDto.getProjectId()).getManagerId()).getName()); workTimeOrderDto.setManagerName(workUserService.getById(workProjectService.getById(workTimeOrderDto.getProjectId()).getManagerId()).getName());
} }
} }
workTimeOrderDto.setTypeName(getTypeName(workTimeOrderDto.getType())); workTimeOrderDto.setTypeName(getTypeName(workTimeOrderDto.getType(), workTypes));
workTimeOrderList.add(workTimeOrderDto); workTimeOrderList.add(workTimeOrderDto);
} }
} }
...@@ -549,15 +552,24 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -549,15 +552,24 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
// 2.获取可填报的项目 // 2.获取可填报的项目
projectsDto.setProjectInfoDto(getProjectInfoDto(userId)); projectsDto.setProjectInfoDto(getProjectInfoDto(userId));
// 3.获取可审批的项目 // 3.获取可审批的项目
List<UserRoleLevelDto> roleUserLevel = UserRoleLevelUtils.getRoleUserLevel(userId); List<ProjectManagerDto> projectManagerDto = getProjectManagerDto(user, workTypes);
if (CollectionUtils.isEmpty(roleUserLevel)) { if (!CollectionUtils.isEmpty(projectManagerDto)) {
projectsDto.setProjectManagerDto(projectManagerDto);
return projectsDto;
}
return projectsDto; return projectsDto;
} }
public List<ProjectManagerDto> getProjectManagerDto(WorkUser user,List<WorkType> workTypes) {
List<UserRoleLevelDto> roleUserLevel = UserRoleLevelUtils.getRoleUserLevel(user.getId());
if (CollectionUtils.isEmpty(roleUserLevel)) {
return null;
}
for (UserRoleLevelDto userRoleLevelDto : roleUserLevel) { for (UserRoleLevelDto userRoleLevelDto : roleUserLevel) {
// 如果有审批权限 // 如果有审批权限
if (LevelEnum.EXAMINE.getLevelName().equals(userRoleLevelDto.getLevelName())) { if (LevelEnum.EXAMINE.getLevelName().equals(userRoleLevelDto.getLevelName())) {
List<ProjectManagerDto> projectManagerDtos = new ArrayList<>(); List<ProjectManagerDto> projectManagerDtos = new ArrayList<>();
List<ProjectDto> projectDtos = workProjectService.getByManagerId(userId, 1); List<ProjectDto> projectDtos = workProjectService.getByManagerId(user.getId(), 1);
if (!CollectionUtils.isEmpty(projectDtos)) { if (!CollectionUtils.isEmpty(projectDtos)) {
QueryWrapper<WorkTimeOrder> wrapper = new QueryWrapper<>(); QueryWrapper<WorkTimeOrder> wrapper = new QueryWrapper<>();
List<Integer> projectIds = new ArrayList<>(); List<Integer> projectIds = new ArrayList<>();
...@@ -615,12 +627,11 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -615,12 +627,11 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
} }
} }
sort(projectManagerDtos); sort(projectManagerDtos);
projectsDto.setProjectManagerDto(projectManagerDtos); return projectManagerDtos;
return projectsDto;
}
} }
return projectsDto;
} }
return null;
}
// 获取可以填报的数据 // 获取可以填报的数据
private List<ProjectInfoDto> getProjectInfoDto(Integer userId) { private List<ProjectInfoDto> getProjectInfoDto(Integer userId) {
...@@ -670,6 +681,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -670,6 +681,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
List<WorkTimeOrderDto> dtos = new ArrayList<>(); List<WorkTimeOrderDto> dtos = new ArrayList<>();
WorkUser user = workUserService.getById(workTimeOrders.get(0).getUserId()); WorkUser user = workUserService.getById(workTimeOrders.get(0).getUserId());
List<Integer> typeIds = workTypeService.getIdByReviewer(1); List<Integer> typeIds = workTypeService.getIdByReviewer(1);
List<WorkType> workTypes = workTypeService.getAll(null);
for (WorkTimeOrder workTimeOrder : workTimeOrders) { for (WorkTimeOrder workTimeOrder : workTimeOrders) {
WorkTimeOrderDto dto = new WorkTimeOrderDto(); WorkTimeOrderDto dto = new WorkTimeOrderDto();
BeanUtils.copyProperties(workTimeOrder, dto); BeanUtils.copyProperties(workTimeOrder, dto);
...@@ -682,7 +694,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -682,7 +694,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
dto.setManagerName(getManagerNameByOrder(workTimeOrder)); dto.setManagerName(getManagerNameByOrder(workTimeOrder));
} }
} }
dto.setTypeName(getTypeName(dto.getType())); dto.setTypeName(getTypeName(dto.getType(), workTypes));
dtos.add(dto); dtos.add(dto);
} }
return dtos; return dtos;
...@@ -777,8 +789,9 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -777,8 +789,9 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
log.info("WorkOrderServiceImpl[]pageExamine[]input.param.user:{},projectId:{},type:{},page:{},pageSize:{},status:{}" + user, projectId, type, page, pageSize, status); log.info("WorkOrderServiceImpl[]pageExamine[]input.param.user:{},projectId:{},type:{},page:{},pageSize:{},status:{}" + user, projectId, type, page, pageSize, status);
page = page == null ? 1 : page; page = page == null ? 1 : page;
pageSize = pageSize == null ? 10 : pageSize; pageSize = pageSize == null ? 10 : pageSize;
List<WorkType> workTypes = workTypeService.getAll(1);
if (null == projectId && null == type) { if (null == projectId && null == type) {
List<ProjectManagerDto> projectManagerDto = getProjectDto(user.getId()).getProjectManagerDto(); List<ProjectManagerDto> projectManagerDto = getProjectManagerDto(user, workTypes);
projectId = projectManagerDto.get(0).getId(); projectId = projectManagerDto.get(0).getId();
type = projectManagerDto.get(0).getType(); type = projectManagerDto.get(0).getType();
} }
...@@ -793,6 +806,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -793,6 +806,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
List<WorkUser> workUsers = workUserMapper.selectList(new QueryWrapper<>()); List<WorkUser> workUsers = workUserMapper.selectList(new QueryWrapper<>());
List<WorkProject> workProjects = workProjectMapper.selectList(new QueryWrapper<>()); List<WorkProject> workProjects = workProjectMapper.selectList(new QueryWrapper<>());
for (WorkTimeOrder workTimeOrder : workTimeOrders) { for (WorkTimeOrder workTimeOrder : workTimeOrders) {
WorkTimeOrderDto workTimeOrderDto = new WorkTimeOrderDto(); WorkTimeOrderDto workTimeOrderDto = new WorkTimeOrderDto();
BeanUtils.copyProperties(workTimeOrder, workTimeOrderDto); BeanUtils.copyProperties(workTimeOrder, workTimeOrderDto);
...@@ -806,7 +820,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -806,7 +820,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
workTimeOrderDto.setProjectName(workProject.getProjectName()); workTimeOrderDto.setProjectName(workProject.getProjectName());
} }
} }
workTimeOrderDto.setTypeName(getTypeName(workTimeOrderDto.getType())); workTimeOrderDto.setTypeName(getTypeName(workTimeOrderDto.getType(), workTypes));
workTimeOrderDtos.add(workTimeOrderDto); workTimeOrderDtos.add(workTimeOrderDto);
} }
PageInfo<WorkTimeOrderDto> pageInfo = pageHelper.toPageInfo(); PageInfo<WorkTimeOrderDto> pageInfo = pageHelper.toPageInfo();
...@@ -843,8 +857,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -843,8 +857,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
} }
} }
private String getTypeName(Integer type) { private String getTypeName(Integer type, List<WorkType> workTypes) {
List<WorkType> workTypes = workTypeService.getAll(null);
if (!CollectionUtils.isEmpty(workTypes)) { if (!CollectionUtils.isEmpty(workTypes)) {
for (WorkType value : workTypes) { for (WorkType value : workTypes) {
if (value.getId().equals(type)) { if (value.getId().equals(type)) {
......
...@@ -103,6 +103,7 @@ public class WorkTimeOrderController extends BaseController { ...@@ -103,6 +103,7 @@ public class WorkTimeOrderController extends BaseController {
if (null == userId) { if (null == userId) {
throw new CustomException(RESP_CODE_ENUM.INPUT_PARAM_IS_NULL); throw new CustomException(RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
} }
ProjectsDto projectDto = workTimeOrderService.getProjectDto(userId); ProjectsDto projectDto = workTimeOrderService.getProjectDto(userId);
return getResult(projectDto); return getResult(projectDto);
} }
......
...@@ -73,7 +73,6 @@ public class WorkUserController extends BaseController { ...@@ -73,7 +73,6 @@ public class WorkUserController extends BaseController {
return getResult(resultUser); return getResult(resultUser);
} }
@ApiOperation(value = "组织架构", notes = "组织架构", httpMethod = "GET") @ApiOperation(value = "组织架构", notes = "组织架构", httpMethod = "GET")
@GetMapping(value = "/getOrganizationStructureDto") @GetMapping(value = "/getOrganizationStructureDto")
public Result<OrganizationDto> getOrganizationStructureDto(){ public Result<OrganizationDto> getOrganizationStructureDto(){
......
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