Commit e04b6a84 authored by cq990612's avatar cq990612

优化代码结构

parent ec6186ac
...@@ -2,7 +2,6 @@ package cn.wisenergy.mapper; ...@@ -2,7 +2,6 @@ package cn.wisenergy.mapper;
import cn.wisenergy.model.app.WorkTimeOrder; import cn.wisenergy.model.app.WorkTimeOrder;
import cn.wisenergy.model.dto.*; import cn.wisenergy.model.dto.*;
import cn.wisenergy.model.vo.OrderChangeManagerVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -109,5 +108,5 @@ public interface WorkTimeOrderMapper extends BaseMapper<WorkTimeOrder> { ...@@ -109,5 +108,5 @@ public interface WorkTimeOrderMapper extends BaseMapper<WorkTimeOrder> {
List<DeptUserCollectDto> getDeptNotOrderInfo(@Param("userId") Integer userId,@Param("depts") List<Integer> depts,@Param("startDate") Date startDate, @Param("endDate") Date endDate); List<DeptUserCollectDto> getDeptNotOrderInfo(@Param("userId") Integer userId,@Param("depts") List<Integer> depts,@Param("startDate") Date startDate, @Param("endDate") Date endDate);
List<OrderChangePageDto> getOrderChangePage(OrderChangeManagerVo vo); List<OrderChangePageDto> getOrderChangePage(OrderChangeLogMapperDto mapperDto);
} }
...@@ -106,7 +106,7 @@ select d.id 'dept_id',d.dept_name,p.id 'project_id',p.project_name ...@@ -106,7 +106,7 @@ select d.id 'dept_id',d.dept_name,p.id 'project_id',p.project_name
from work_dept d LEFT JOIN work_project p on d.id = p.dept_id from work_dept d LEFT JOIN work_project p on d.id = p.dept_id
<where> <where>
<if test="userId !=null"> <if test="userId !=null">
AND p.manager_id = #{userId} p.manager_id = #{userId}
</if> </if>
<if test="deptId !=null"> <if test="deptId !=null">
OR p.dept_id = #{deptId} OR p.dept_id = #{deptId}
......
...@@ -457,9 +457,12 @@ ...@@ -457,9 +457,12 @@
LEFT JOIN work_user u on o.user_id = u.id LEFT JOIN work_user u on o.user_id = u.id
LEFT JOIN work_project p on o.project_id = p.id LEFT JOIN work_project p on o.project_id = p.id
<where> <where>
<if test="projectId !=null"> <if test="projectIds !=null and projectIds.size()>0">
AND o.project_id = #{projectId} AND o.project_id IN
</if> <foreach collection="projectIds" item="projectId" open="(" close=")" separator=",">
#{projectId}
</foreach>
<if test="startDate !=null"> <if test="startDate !=null">
AND o.work_day >= #{startDate} AND o.work_day >= #{startDate}
</if> </if>
...@@ -469,10 +472,15 @@ ...@@ -469,10 +472,15 @@
<if test="userName !=null"> <if test="userName !=null">
AND u.name like concat('%',#{userName},'%') AND u.name like concat('%',#{userName},'%')
</if> </if>
<if test="type !=null and type>2 "> </if>
AND o.type = #{type} <if test="types !=null and types.size()>0 ">
<if test="deptId !=null"> OR (o.type IN <foreach collection="types" item="type" open="(" close=")" separator=",">
AND o.dept_id = #{deptId} #{type}
</foreach>
<if test="deptIds !=null and deptIds.size()>0">
AND o.dept_id IN<foreach collection="deptIds" item="deptId" open="(" close=")" separator=",">
#{deptId}
</foreach>
</if> </if>
<if test="startDate !=null"> <if test="startDate !=null">
AND o.work_day >= #{startDate} AND o.work_day >= #{startDate}
...@@ -481,8 +489,9 @@ ...@@ -481,8 +489,9 @@
AND o.work_day &lt;= #{endDate} AND o.work_day &lt;= #{endDate}
</if> </if>
<if test="userName !=null"> <if test="userName !=null">
AND u.name like concat('%',#{userName},'%') AND u.name like concat('%',#{userName},'%')
</if> </if>
)
</if> </if>
</where> </where>
......
package cn.wisenergy.service; package cn.wisenergy.service;
import cn.wisenergy.model.dto.DeptOfProjectAndOrderType;
import cn.wisenergy.model.dto.OrderChangeLogMapperDto;
import cn.wisenergy.model.vo.OrderChangeLogVo; import cn.wisenergy.model.vo.OrderChangeLogVo;
import cn.wisenergy.model.vo.OrderChangeManagerVo;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import java.util.List;
/** /**
* @Authotr:陈奇 * @Authotr:陈奇
* @QQ1799796883 * @QQ1799796883
...@@ -10,4 +15,6 @@ import com.github.pagehelper.PageInfo; ...@@ -10,4 +15,6 @@ import com.github.pagehelper.PageInfo;
public interface WorkOrderChangeService { public interface WorkOrderChangeService {
PageInfo getOrderChangeLogPage(OrderChangeLogVo vo); PageInfo getOrderChangeLogPage(OrderChangeLogVo vo);
OrderChangeLogMapperDto getMapperOrderChangeMapperDto(OrderChangeLogVo vo, List<DeptOfProjectAndOrderType> projectsAndTypes, OrderChangeManagerVo vo1);
} }
...@@ -9,6 +9,7 @@ import cn.wisenergy.model.dto.ProjectManagerDto; ...@@ -9,6 +9,7 @@ import cn.wisenergy.model.dto.ProjectManagerDto;
import cn.wisenergy.model.dto.WorkOrderChangeLogDto; import cn.wisenergy.model.dto.WorkOrderChangeLogDto;
import cn.wisenergy.model.enums.LevelEnum; import cn.wisenergy.model.enums.LevelEnum;
import cn.wisenergy.model.vo.OrderChangeLogVo; import cn.wisenergy.model.vo.OrderChangeLogVo;
import cn.wisenergy.model.vo.OrderChangeManagerVo;
import cn.wisenergy.service.WorkOrderChangeService; import cn.wisenergy.service.WorkOrderChangeService;
import cn.wisenergy.service.WorkProjectService; import cn.wisenergy.service.WorkProjectService;
import cn.wisenergy.service.utils.UserRoleLevelUtils; import cn.wisenergy.service.utils.UserRoleLevelUtils;
...@@ -51,11 +52,33 @@ public class WorkOrderChangeImpl implements WorkOrderChangeService { ...@@ -51,11 +52,33 @@ public class WorkOrderChangeImpl implements WorkOrderChangeService {
List<Integer> projectIds = new ArrayList<>(); List<Integer> projectIds = new ArrayList<>();
Set<Integer> deptIds = new HashSet<>(); Set<Integer> deptIds = new HashSet<>();
Set<Integer> types = new HashSet<>(); Set<Integer> types = new HashSet<>();
OrderChangeLogMapperDto mapperDto = new OrderChangeLogMapperDto();
List<DeptOfProjectAndOrderType> projectsAndTypes = workProjectService.getProjectOfFind(vo.getUserId()); List<DeptOfProjectAndOrderType> projectsAndTypes = workProjectService.getProjectOfFind(vo.getUserId());
if (CollectionUtils.isEmpty(projectsAndTypes)) { if (CollectionUtils.isEmpty(projectsAndTypes)) {
return null; return null;
} }
OrderChangeLogMapperDto mapperDto = getMapperOrderChangeMapperDto(vo, projectsAndTypes,null);
PageHelper.startPage(vo.getPage(), vo.getPageSize());
List<WorkOrderChangeLogDto> workOrderChangeLogDto = workOrderChangeMapper.getWorkOrderChangeLogDto(mapperDto);
PageInfo<WorkOrderChangeLogDto> pageInfo = new PageInfo<>(workOrderChangeLogDto);
pageInfo.setList(workOrderChangeLogDto);
return pageInfo;
}
@Override
public OrderChangeLogMapperDto getMapperOrderChangeMapperDto(OrderChangeLogVo vo2, List<DeptOfProjectAndOrderType> projectsAndTypes, OrderChangeManagerVo vo1) {
List<Integer> projectIds = new ArrayList<>();
Set<Integer> deptIds = new HashSet<>();
Set<Integer> types = new HashSet<>();
OrderChangeLogMapperDto mapperDto = new OrderChangeLogMapperDto();
if (CollectionUtils.isEmpty(projectsAndTypes)) {
return null;
}
OrderChangeLogVo vo = new OrderChangeLogVo();
if (null == vo2) {
BeanUtils.copyProperties(vo1,vo);
}else{
vo = vo2;
}
if (null == vo.getDeptId()) { if (null == vo.getDeptId()) {
for (DeptOfProjectAndOrderType projectsAndType : projectsAndTypes) { for (DeptOfProjectAndOrderType projectsAndType : projectsAndTypes) {
if (!CollectionUtils.isEmpty(projectsAndType.getProjectManagerDtos())) { if (!CollectionUtils.isEmpty(projectsAndType.getProjectManagerDtos())) {
...@@ -97,10 +120,6 @@ public class WorkOrderChangeImpl implements WorkOrderChangeService { ...@@ -97,10 +120,6 @@ public class WorkOrderChangeImpl implements WorkOrderChangeService {
mapperDto.setProjectIds(projectIds); mapperDto.setProjectIds(projectIds);
mapperDto.setDeptIds(new ArrayList<>(deptIds)); mapperDto.setDeptIds(new ArrayList<>(deptIds));
mapperDto.setTypes(new ArrayList<>(types)); mapperDto.setTypes(new ArrayList<>(types));
PageHelper.startPage(vo.getPage(), vo.getPageSize()); return mapperDto;
List<WorkOrderChangeLogDto> workOrderChangeLogDto = workOrderChangeMapper.getWorkOrderChangeLogDto(mapperDto);
PageInfo<WorkOrderChangeLogDto> pageInfo = new PageInfo<>(workOrderChangeLogDto);
pageInfo.setList(workOrderChangeLogDto);
return pageInfo;
} }
} }
...@@ -53,6 +53,9 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -53,6 +53,9 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
@Autowired @Autowired
private WorkUserMapper workUserMapper; private WorkUserMapper workUserMapper;
@Autowired
private WorkOrderChangeService workOrderChangeService;
@Autowired @Autowired
private WorkTypeService workTypeService; private WorkTypeService workTypeService;
...@@ -1100,16 +1103,20 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -1100,16 +1103,20 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if (null == vo || null == vo.getUserId()) { if (null == vo || null == vo.getUserId()) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL); throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
} }
if (null == vo.getProjectId() && null == vo.getType()) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.PLEASESELECTANITEM);
}
if (!UserRoleLevelUtils.isManagerLevel(vo.getUserId(), LevelEnum.WORKORDER_CHANGEMANAGEMENT.getLevelName())) { if (!UserRoleLevelUtils.isManagerLevel(vo.getUserId(), LevelEnum.WORKORDER_CHANGEMANAGEMENT.getLevelName())) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN); throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN);
} }
List<DeptOfProjectAndOrderType> projectAndOrderTypes = workProjectService.getProjectAndOrderTypeAndDept(vo.getUserId()).getProjectAndOrderTypes();
if (CollectionUtils.isEmpty(projectAndOrderTypes)) {
return null;
}
OrderChangeLogMapperDto mapperDto = workOrderChangeService.getMapperOrderChangeMapperDto(null, projectAndOrderTypes, vo);
System.out.println("mapperDto = " + mapperDto);
vo.setPage(null == vo.getPage() ? 1 : vo.getPage()); vo.setPage(null == vo.getPage() ? 1 : vo.getPage());
vo.setPageSize(null == vo.getPageSize() ? 10 : vo.getPageSize()); vo.setPageSize(null == vo.getPageSize() ? 10 : vo.getPageSize());
PageHelper.startPage(vo.getPage(), vo.getPageSize()); PageHelper.startPage(vo.getPage(), vo.getPageSize());
List<OrderChangePageDto> orderChangePage = workTimeOrderMapper.getOrderChangePage(vo); List<OrderChangePageDto> orderChangePage = workTimeOrderMapper.getOrderChangePage(mapperDto);
if (!CollectionUtils.isEmpty(orderChangePage)) { if (!CollectionUtils.isEmpty(orderChangePage)) {
for (OrderChangePageDto orderChangePageDto : orderChangePage) { for (OrderChangePageDto orderChangePageDto : orderChangePage) {
for (StatusEnum value : StatusEnum.values()) { for (StatusEnum value : StatusEnum.values()) {
...@@ -1336,7 +1343,6 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -1336,7 +1343,6 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if (!UserRoleLevelUtils.isManagerLevel(vo.getOperatorId(), LevelEnum.WORKORDER_CHANGEMANAGEMENT.getLevelName())) { if (!UserRoleLevelUtils.isManagerLevel(vo.getOperatorId(), LevelEnum.WORKORDER_CHANGEMANAGEMENT.getLevelName())) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN); throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN);
} }
System.out.println("1111111");
if (workIdIsNeed) { if (workIdIsNeed) {
if (null == vo.getWorkId()) { if (null == vo.getWorkId()) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL); throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
...@@ -1344,7 +1350,6 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -1344,7 +1350,6 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
} else if (null == vo.getUserId() ||(null == vo.getProjectId() && null == vo.getType())) { } else if (null == vo.getUserId() ||(null == vo.getProjectId() && null == vo.getType())) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL); throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
} }
System.out.println("22222222");
Date workDay = vo.getWorkDay(); Date workDay = vo.getWorkDay();
Date date = new Date(); Date date = new Date();
if (workDay.compareTo(date) > 0) { if (workDay.compareTo(date) > 0) {
......
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