Commit 82c188ac authored by cq990612's avatar cq990612

优化代码结构

parent c632f362
package cn.wisenergy.model.enums; package cn.wisenergy.model.enums;
public enum ProjectTypeEnum { public enum ProjectTypeEnum {
PROJECT(1, "项目"), PROJECT(1, "项目", 1),
BUSINESS_OPPORTUNITY(2,"商机"); BUSINESS_OPPORTUNITY(2, "商机", 1),
LEAVE(3, "请假", 2),
COMPENSATORY_LEAVE(4, "调休", 2),
EXTERNAL_BUSINESS(5, "外部商务与技术交流", 3),
INTERNAL_TRAINING(6, "内部培训、技术准备、管理", 3),
OTHER_NON_PROJECTS(7, "其他非项目/商机工作", 3),
private Integer code;
private String msg;
ProjectTypeEnum(Integer code, String msg){ ;
this.code = code;
this.msg = msg; private Integer type;
private String typeName;
// 1:项目经理 2:自动审批 3:其他管理员
private Integer reviewer;
ProjectTypeEnum(Integer type, String typeName, Integer reviewer) {
this.reviewer = reviewer;
this.type = type;
this.typeName = typeName;
}
public Integer getType() {
return type;
} }
public Integer getCode(){ public String getTypeName() {
return code; return typeName;
} }
public String getMsg(){ public Integer getReviewer() {
return msg; return reviewer;
} }
} }
package cn.wisenergy.model.enums;
/**
* @Authotr:陈奇
* @QQ1799796883
*/
public enum StatusEnum {
COMPLETED(1,"已填报"),
APPROVED(2, "已审批"),
REJECTED(3, "被驳回"),
RE_SUBMIT(4,"重新填报"),
AUTOMATIC_AUDIT(5,"自动审批")
;
private Integer status;
private String msg;
StatusEnum(Integer status, String msg){
this.status = status;
this.msg = msg;
}
public Integer getCode(){
return status;
}
public String getMsg(){
return msg;
}
}
...@@ -6,6 +6,8 @@ import cn.wisenergy.common.utils.exception.BaseCustomException; ...@@ -6,6 +6,8 @@ import cn.wisenergy.common.utils.exception.BaseCustomException;
import cn.wisenergy.mapper.WorkTimeOrderMapper; import cn.wisenergy.mapper.WorkTimeOrderMapper;
import cn.wisenergy.model.app.*; import cn.wisenergy.model.app.*;
import cn.wisenergy.model.dto.*; import cn.wisenergy.model.dto.*;
import cn.wisenergy.model.enums.ProjectTypeEnum;
import cn.wisenergy.model.enums.StatusEnum;
import cn.wisenergy.service.*; import cn.wisenergy.service.*;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
...@@ -63,6 +65,20 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -63,6 +65,20 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
@Autowired @Autowired
private WorkTypeService workTypeService; private WorkTypeService workTypeService;
//填报类型
private final static Integer PROJECT = ProjectTypeEnum.PROJECT.getType();
private final static Integer BUSINESS_OPPORTUNITY = ProjectTypeEnum.BUSINESS_OPPORTUNITY.getType();
private final static Integer LEAVE = ProjectTypeEnum.LEAVE.getType();
private final static Integer COMPENSATORY_LEAVE = ProjectTypeEnum.COMPENSATORY_LEAVE.getType();
private final static Integer EXTERNAL_BUSINESS = ProjectTypeEnum.EXTERNAL_BUSINESS.getType();
private final static Integer INTERNAL_TRAINING = ProjectTypeEnum.INTERNAL_TRAINING.getType();
private final static Integer OTHER_NON_PROJECTS = ProjectTypeEnum.OTHER_NON_PROJECTS.getType();
// 工单状态
private final static Integer COMPLETED = StatusEnum.COMPLETED.getCode();
private final static Integer APPROVED = StatusEnum.APPROVED.getCode();
private final static Integer REJECTED = StatusEnum.REJECTED.getCode();
private final static Integer RE_SUBMIT = StatusEnum.RE_SUBMIT.getCode();
private final static Integer AUTOMATIC_AUDIT = StatusEnum.AUTOMATIC_AUDIT.getCode();
/** /**
* 功能; 获取某日填报情况 * 功能; 获取某日填报情况
...@@ -72,6 +88,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -72,6 +88,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
* @return 工单集合 * @return 工单集合
*/ */
@Override @Override
public List<WorkTimeOrder> getByDay(Integer userId, Date workDay) { public List<WorkTimeOrder> getByDay(Integer userId, Date workDay) {
log.info("WorkTimeOrderServiceImpl[]getByDay[]input.param.userId:{},workDay:{}" + userId, workDay); log.info("WorkTimeOrderServiceImpl[]getByDay[]input.param.userId:{},workDay:{}" + userId, workDay);
...@@ -82,6 +99,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -82,6 +99,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if (CollectionUtils.isEmpty(workTimeOrders)) { if (CollectionUtils.isEmpty(workTimeOrders)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_ORDER_INFO_IS_NULL); throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_ORDER_INFO_IS_NULL);
} }
return workTimeOrders; return workTimeOrders;
} }
...@@ -117,7 +135,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -117,7 +135,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if (null != wto.getReason()) { if (null != wto.getReason()) {
reason = workProjectService.getById(wto.getProjectId()).getProjectName() + ":" + wto.getReason() + ";"; reason = workProjectService.getById(wto.getProjectId()).getProjectName() + ":" + wto.getReason() + ";";
} }
if (3 == wto.getStatus()) { if (REJECTED.equals(wto.getStatus())) {
rejectMonth += 1; rejectMonth += 1;
} }
} }
...@@ -171,8 +189,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -171,8 +189,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
/** /**
* 功能:测试添加 * 功能:测试添加
* *
* @param createWorkOrderDto * @param createWorkOrderDto dto
* @return * @return dto
*/ */
@Transactional @Transactional
@Override @Override
...@@ -204,27 +222,28 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -204,27 +222,28 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if (date.getTime() - dto.getWorkDay().getTime() > submitTime * 24 * 60 * 60 * 1000) { if (date.getTime() - dto.getWorkDay().getTime() > submitTime * 24 * 60 * 60 * 1000) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_DAY_THAN_DATE); throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_DAY_THAN_DATE);
} }
// 获取某些数据 // 获取某些数据
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));
if (1 == type || 2 == type) { if (PROJECT.equals(type) || BUSINESS_OPPORTUNITY.equals(type)) {
dto.setProjectName(workProjectService.getById(dto.getProjectId()).getProjectName()); dto.setProjectName(workProjectService.getById(dto.getProjectId()).getProjectName());
dto.setManagerName(workUserService.getById(workProjectService.getById(dto.getProjectId()).getManagerId()).getName()); dto.setManagerName(workUserService.getById(workProjectService.getById(dto.getProjectId()).getManagerId()).getName());
} }
if (1 != type && 2 != type) { if (!PROJECT.equals(type) && !BUSINESS_OPPORTUNITY.equals(type)) {
dto.setManagerName(workUserService.getById(workTypeService.getByDeptId(workUserService.getById(dto.getUserId()).getDeptId()).get(0).getManagerId()).getName()); dto.setManagerName(workUserService.getById(workTypeService.getByDeptId(workUserService.getById(dto.getUserId()).getDeptId()).get(0).getManagerId()).getName());
} }
if (null == dto.getStatus() || 0 == dto.getStatus()) { if (null == dto.getStatus() || 0 == dto.getStatus()) {
dto.setStatus(1); dto.setStatus(COMPLETED);
} }
if (3 == type || 4 == type) { if (LEAVE.equals(type) || COMPENSATORY_LEAVE.equals(type)) {
dto.setStatus(2); dto.setStatus(APPROVED);
} }
if (null != dto.getStatus() && 3 == dto.getStatus()) { if (null != dto.getStatus() && REJECTED.equals(dto.getStatus())) {
dto.setStatus(4); dto.setStatus(RE_SUBMIT);
} }
dto.setIsOvertime(0); dto.setIsOvertime(0);
...@@ -312,7 +331,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -312,7 +331,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
} }
// 填报和数据库的类型相同 // 填报和数据库的类型相同
if (workTimeOrder.getType().equals(orderDto.getType())) { if (workTimeOrder.getType().equals(orderDto.getType())) {
if (1 == workTimeOrder.getType() || 2 == workTimeOrder.getType()) if (PROJECT.equals(workTimeOrder.getType()) || BUSINESS_OPPORTUNITY.equals(workTimeOrder.getType()))
if (workTimeOrder.getProjectId().equals(orderDto.getProjectId())) { if (workTimeOrder.getProjectId().equals(orderDto.getProjectId())) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_ORDER_ALREADY_COMMIT); throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_ORDER_ALREADY_COMMIT);
} }
...@@ -385,7 +404,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -385,7 +404,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
* @param userId 用户id * @param userId 用户id
* @param projectId 项目Id * @param projectId 项目Id
* @param type 类型 * @param type 类型
* @return * @return dto
*/ */
@Override @Override
public List<AppletsPendApprovalDto> getExamineApplets(Integer userId, Integer projectId, Integer type) { public List<AppletsPendApprovalDto> getExamineApplets(Integer userId, Integer projectId, Integer type) {
...@@ -397,7 +416,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -397,7 +416,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
QueryWrapper<WorkTimeOrder> wrapper = new QueryWrapper<>(); QueryWrapper<WorkTimeOrder> wrapper = new QueryWrapper<>();
projectId = projectId == null ? workProjectService.getByManagerId(userId).get(0).getId() : projectId; projectId = projectId == null ? workProjectService.getByManagerId(userId).get(0).getId() : projectId;
// wrapper.eq("dept_id", user.getDeptId()); // wrapper.eq("dept_id", user.getDeptId());
wrapper.in("status", 1, 4); wrapper.in("status", COMPLETED, RE_SUBMIT);
wrapper.eq("project_id", projectId); wrapper.eq("project_id", projectId);
wrapper.orderByDesc("work_day"); wrapper.orderByDesc("work_day");
List<WorkTimeOrder> workTimeOrders = workTimeOrderMapper.selectList(wrapper); List<WorkTimeOrder> workTimeOrders = workTimeOrderMapper.selectList(wrapper);
...@@ -413,7 +432,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -413,7 +432,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
Integer deptId = user.getDeptId(); Integer deptId = user.getDeptId();
QueryWrapper<WorkTimeOrder> wrapper = new QueryWrapper<>(); QueryWrapper<WorkTimeOrder> wrapper = new QueryWrapper<>();
wrapper.eq("dept_id", deptId); wrapper.eq("dept_id", deptId);
wrapper.in("status", 1, 4); wrapper.in("status", COMPLETED, RE_SUBMIT);
wrapper.eq("type", type); wrapper.eq("type", type);
List<WorkTimeOrder> workTimeOrders = workTimeOrderMapper.selectList(wrapper); List<WorkTimeOrder> workTimeOrders = workTimeOrderMapper.selectList(wrapper);
if (CollectionUtils.isEmpty(workTimeOrders)) { if (CollectionUtils.isEmpty(workTimeOrders)) {
...@@ -450,7 +469,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -450,7 +469,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
BeanUtils.copyProperties(workTimeOrder, workTimeOrderDto); BeanUtils.copyProperties(workTimeOrder, workTimeOrderDto);
workTimeOrderDto.setManagerName(workUserService.getById(workTypeService.getByDeptId(workTimeOrder.getDeptId()).get(0).getManagerId()).getName()); workTimeOrderDto.setManagerName(workUserService.getById(workTypeService.getByDeptId(workTimeOrder.getDeptId()).get(0).getManagerId()).getName());
workTimeOrderDto.setUserName(workUserService.getById(workTimeOrderDto.getUserId()).getName()); workTimeOrderDto.setUserName(workUserService.getById(workTimeOrderDto.getUserId()).getName());
if (1 == workTimeOrder.getType() || 2 == workTimeOrder.getType()) { if (PROJECT.equals(workTimeOrder.getType()) || BUSINESS_OPPORTUNITY.equals(workTimeOrder.getType())) {
workTimeOrderDto.setProjectName(workProjectService.getById(workTimeOrderDto.getProjectId()).getProjectName()); workTimeOrderDto.setProjectName(workProjectService.getById(workTimeOrderDto.getProjectId()).getProjectName());
workTimeOrderDto.setManagerName(workUserService.getById(workProjectService.getById(workTimeOrderDto.getProjectId()).getManagerId()).getName()); workTimeOrderDto.setManagerName(workUserService.getById(workProjectService.getById(workTimeOrderDto.getProjectId()).getManagerId()).getName());
} }
...@@ -527,7 +546,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -527,7 +546,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if (null == workCollect) { if (null == workCollect) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_ORDER_INFO_IS_NULL); throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_ORDER_INFO_IS_NULL);
} }
workCollect.setStatus(3); workCollect.setStatus(REJECTED);
return workCollectService.update(workCollect); return workCollectService.update(workCollect);
} }
...@@ -544,7 +563,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -544,7 +563,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
isManager(userId); isManager(userId);
QueryWrapper<WorkTimeOrder> wrapper = new QueryWrapper<>(); QueryWrapper<WorkTimeOrder> wrapper = new QueryWrapper<>();
wrapper.eq("reviewer_id", userId); wrapper.eq("reviewer_id", userId);
wrapper.eq("status", 3); wrapper.eq("status", REJECTED);
List<WorkTimeOrder> workTimeOrders = workTimeOrderMapper.selectList(wrapper); List<WorkTimeOrder> workTimeOrders = workTimeOrderMapper.selectList(wrapper);
if (CollectionUtils.isEmpty(workTimeOrders)) { if (CollectionUtils.isEmpty(workTimeOrders)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_ORDER_INFO_IS_NULL); throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_ORDER_INFO_IS_NULL);
...@@ -556,8 +575,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -556,8 +575,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
/** /**
* 功能:获取用户参与的项目 * 功能:获取用户参与的项目
* *
* @param userId * @param userId 用户id
* @return * @return dto
*/ */
@Override @Override
public ProjectsDto getProjectDto(Integer userId) { public ProjectsDto getProjectDto(Integer userId) {
...@@ -606,18 +625,18 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -606,18 +625,18 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
String deptManagerName = workUserService.getById(workDeptService.getById(deptId).getDeptManagerId()).getName(); String deptManagerName = workUserService.getById(workDeptService.getById(deptId).getDeptManagerId()).getName();
// 2.获取可填报的类型 // 2.获取可填报的类型
List<ProjectInfoDto> projectList = new ArrayList<>(); List<ProjectInfoDto> projectList = new ArrayList<>();
ProjectInfoDto projectInfoDto1 = new ProjectInfoDto().setType(1).setTypeName(getTypeName(1)).setManagerName(deptManagerName); ProjectInfoDto projectInfoDto1 = new ProjectInfoDto().setType(PROJECT).setTypeName(getTypeName(PROJECT)).setManagerName(deptManagerName);
ProjectInfoDto projectInfoDto2 = new ProjectInfoDto().setType(2).setTypeName(getTypeName(2)).setManagerName(deptManagerName); ProjectInfoDto projectInfoDto2 = new ProjectInfoDto().setType(BUSINESS_OPPORTUNITY).setTypeName(getTypeName(BUSINESS_OPPORTUNITY)).setManagerName(deptManagerName);
if (!CollectionUtils.isEmpty(projectIds)) { if (!CollectionUtils.isEmpty(projectIds)) {
List<ProjectDto> projectDto1 = new ArrayList<>(); List<ProjectDto> projectDto1 = new ArrayList<>();
List<ProjectDto> projectDto2 = new ArrayList<>(); List<ProjectDto> projectDto2 = new ArrayList<>();
WorkProject workProject; WorkProject workProject;
for (Integer projectId : projectIds) { for (Integer projectId : projectIds) {
workProject = workProjectService.getById(projectId); workProject = workProjectService.getById(projectId);
if (1 == workProject.getType()) { if (PROJECT.equals(workProject.getType())) {
projectDto1.add(projectToProjectDto(workProject)); projectDto1.add(projectToProjectDto(workProject));
} }
if (2 == workProject.getType()) { if (BUSINESS_OPPORTUNITY.equals(workProject.getType())) {
projectDto2.add(projectToProjectDto(workProject)); projectDto2.add(projectToProjectDto(workProject));
} }
} }
...@@ -628,13 +647,12 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -628,13 +647,12 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
} }
projectList.add(projectInfoDto1); projectList.add(projectInfoDto1);
projectList.add(projectInfoDto2); projectList.add(projectInfoDto2);
projectList.add(new ProjectInfoDto().setType(3).setTypeName(getTypeName(3)).setManagerName(deptManagerName)); projectList.add(new ProjectInfoDto().setType(LEAVE).setTypeName(getTypeName(LEAVE)).setManagerName(deptManagerName));
projectList.add(new ProjectInfoDto().setType(4).setTypeName(getTypeName(4)).setManagerName(deptManagerName)); projectList.add(new ProjectInfoDto().setType(COMPENSATORY_LEAVE).setTypeName(getTypeName(COMPENSATORY_LEAVE)).setManagerName(deptManagerName));
List<WorkType> workTypes = workTypeService.getByDeptId(deptId); List<WorkType> workTypes = workTypeService.getByDeptId(deptId);
for (WorkType workType : workTypes) { for (WorkType workType : workTypes) {
projectList.add(new ProjectInfoDto().setType(workType.getType()).setTypeName(workType.getName()).setManagerName(workUserService.getById(workType.getManagerId()).getName())); projectList.add(new ProjectInfoDto().setType(workType.getType()).setTypeName(workType.getName()).setManagerName(workUserService.getById(workType.getManagerId()).getName()));
} }
return projectList; return projectList;
} }
...@@ -655,7 +673,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -655,7 +673,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
BeanUtils.copyProperties(workTimeOrder, dto); BeanUtils.copyProperties(workTimeOrder, dto);
dto.setUserName(workUserService.getById(workTimeOrder.getUserId()).getName()); dto.setUserName(workUserService.getById(workTimeOrder.getUserId()).getName());
dto.setManagerName(workUserService.getById(workTypeService.getByDeptId(workTimeOrder.getDeptId()).get(0).getManagerId()).getName()); dto.setManagerName(workUserService.getById(workTypeService.getByDeptId(workTimeOrder.getDeptId()).get(0).getManagerId()).getName());
if (1 == workTimeOrder.getType() || 2 == workTimeOrder.getType()) { if (PROJECT.equals(workTimeOrder.getType()) || BUSINESS_OPPORTUNITY.equals(workTimeOrder.getType())) {
dto.setProjectName(workProjectService.getById(workTimeOrder.getProjectId()).getProjectName()); dto.setProjectName(workProjectService.getById(workTimeOrder.getProjectId()).getProjectName());
dto.setManagerName(getManagerNameByOrder(workTimeOrder)); dto.setManagerName(getManagerNameByOrder(workTimeOrder));
} }
...@@ -666,29 +684,6 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -666,29 +684,6 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
} }
private List<ExamineGroupbyProjectDto> getExamineGroupByProjectDto(Integer projectId) {
QueryWrapper<WorkTimeOrder> wrapper = new QueryWrapper<>();
wrapper.eq("project_id", projectId);
wrapper.in("status", 1, 4);
wrapper.orderByDesc("work_day");
List<WorkTimeOrder> workTimeOrders = workTimeOrderMapper.selectList(wrapper);
return WorkTimeOrderTOEGPD(workTimeOrders);
}
private List<ExamineGroupbyProjectDto> WorkTimeOrderTOEGPD(List<WorkTimeOrder> workTimeOrders) {
if (CollectionUtils.isEmpty(workTimeOrders)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_ORDER_END);
}
List<ExamineGroupbyProjectDto> egpds = new ArrayList<>();
for (WorkTimeOrder workTimeOrder : workTimeOrders) {
ExamineGroupbyProjectDto dto = new ExamineGroupbyProjectDto();
BeanUtils.copyProperties(workTimeOrder, dto);
egpds.add(dto);
}
return egpds;
}
private void checkWorkOrderInfo(List<WorkTimeOrderDto> list) { private void checkWorkOrderInfo(List<WorkTimeOrderDto> list) {
log.info("WorkOrderServiceImpl[]checkWorkOrderInfo[]input.method"); log.info("WorkOrderServiceImpl[]checkWorkOrderInfo[]input.method");
// 1、工单时间不能大于当前天 // 1、工单时间不能大于当前天
...@@ -773,14 +768,14 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -773,14 +768,14 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if (new Date().getTime() - DateUtil.getStartOfDay(modifyTime).getTime() > submitTime * 24 * 60 * 60 * 1000) { if (new Date().getTime() - DateUtil.getStartOfDay(modifyTime).getTime() > submitTime * 24 * 60 * 60 * 1000) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_DAY_THAN_DATE); throw new BaseCustomException(BASE_RESP_CODE_ENUM.WORK_DAY_THAN_DATE);
} }
workTimeOrderDto.setStatus(4); workTimeOrderDto.setStatus(RE_SUBMIT);
WorkTimeOrder workTimeOrder = new WorkTimeOrder(); WorkTimeOrder workTimeOrder = new WorkTimeOrder();
BeanUtils.copyProperties(workTimeOrderDto, workTimeOrder); BeanUtils.copyProperties(workTimeOrderDto, workTimeOrder);
// 获取用户名 // 获取用户名
workTimeOrderDto.setUserName(workUserService.getById(workTimeOrder.getUserId()).getName()); workTimeOrderDto.setUserName(workUserService.getById(workTimeOrder.getUserId()).getName());
// 获取项目名 // 获取项目名
if (1 == workTimeOrder.getType() || 2 == workTimeOrder.getType()) { if (PROJECT.equals(workTimeOrder.getType()) || BUSINESS_OPPORTUNITY.equals(workTimeOrder.getType())) {
workTimeOrderDto.setProjectName(workProjectService.getById(workTimeOrder.getProjectId()).getProjectName()); workTimeOrderDto.setProjectName(workProjectService.getById(workTimeOrder.getProjectId()).getProjectName());
} }
// 获取类型名 // 获取类型名
...@@ -805,7 +800,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -805,7 +800,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
private List<WorkTimeOrderDto> saveWorkOrderInfo(List<WorkTimeOrderDto> list) { private List<WorkTimeOrderDto> saveWorkOrderInfo(List<WorkTimeOrderDto> list) {
log.info("WorkOrderServiceImpl[]saveWorkOrderInfo[]input.method"); log.info("WorkOrderServiceImpl[]saveWorkOrderInfo[]input.method");
int totalTime = 0; int totalTime = 0;
int status = 1; int status = PROJECT;
//根据用户id,获取用户信息 //根据用户id,获取用户信息
for (WorkTimeOrderDto dto : list) { for (WorkTimeOrderDto dto : list) {
...@@ -813,7 +808,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -813,7 +808,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
// 获取用户名 // 获取用户名
dto.setUserName(workUserService.getById(dto.getUserId()).getName()); dto.setUserName(workUserService.getById(dto.getUserId()).getName());
// 获取项目名 // 获取项目名
if ((1 == dto.getType() || 2 == dto.getType()) && null == dto.getProjectId()) { if ((PROJECT.equals(dto.getType()) || BUSINESS_OPPORTUNITY.equals(dto.getType())) && null == dto.getProjectId()) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.NO_JOIN_EVERY_PROJECT_PLASE_JION); throw new BaseCustomException(BASE_RESP_CODE_ENUM.NO_JOIN_EVERY_PROJECT_PLASE_JION);
} }
dto.setProjectName(null != dto.getProjectId() ? workProjectService.getById(dto.getProjectId()).getProjectName() : getTypeName(dto.getType())); dto.setProjectName(null != dto.getProjectId() ? workProjectService.getById(dto.getProjectId()).getProjectName() : getTypeName(dto.getType()));
...@@ -833,8 +828,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -833,8 +828,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
} }
dto.setStatus(status); dto.setStatus(status);
// 如果是请假或者调休直接通过 // 如果是请假或者调休直接通过
if (3 == dto.getType() || 4 == dto.getType()) { if (LEAVE.equals(dto.getType()) || COMPENSATORY_LEAVE.equals(dto.getType())) {
dto.setStatus(2); dto.setStatus(APPROVED);
dto.setProjectName(null); dto.setProjectName(null);
dto.setProjectId(null); dto.setProjectId(null);
} }
...@@ -890,18 +885,17 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -890,18 +885,17 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
workTimeOrderDtos.add(workTimeOrderDto); workTimeOrderDtos.add(workTimeOrderDto);
} }
PageInfo<WorkTimeOrderDto> pageInfo = new PageInfo<>(workTimeOrderDtos); return new PageInfo<>(workTimeOrderDtos);
return pageInfo;
} }
// 根据工单获取管理员 // 根据工单获取管理员
private String getManagerNameByOrder(WorkTimeOrder wto) { private String getManagerNameByOrder(WorkTimeOrder wto) {
if (1 == wto.getType() || 2 == wto.getType()) { if (PROJECT.equals(wto.getType()) || BUSINESS_OPPORTUNITY.equals(wto.getType())) {
WorkProject workProject = workProjectService.getById(wto.getProjectId()); WorkProject workProject = workProjectService.getById(wto.getProjectId());
return workProject != null ? workUserService.getById(workProject.getManagerId()).getName() : ""; return workProject != null ? workUserService.getById(workProject.getManagerId()).getName() : "";
} }
if (1 != wto.getType() && 2 != wto.getType()) { if (!PROJECT.equals(wto.getType()) && !PROJECT.equals(wto.getType())) {
return workUserService.getById( return workUserService.getById(
workDeptService.getById(wto.getDeptId()).getDeptManagerId()) workDeptService.getById(wto.getDeptId()).getDeptManagerId())
.getName(); .getName();
...@@ -922,35 +916,31 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService { ...@@ -922,35 +916,31 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
} }
private String getTypeName(Integer type) { private String getTypeName(Integer type) {
List<WorkType> types = workTypeService.getType(); for (ProjectTypeEnum value : ProjectTypeEnum.values()) {
String[] str = {"", "项目", "商机", "请假", "调休"}; if (value.getType().equals(type)) {
Map<Integer, String> map = new HashMap<>(); return value.getTypeName();
for (int i = 1; i < str.length; i++) {
map.put(i, str[i]);
} }
for (WorkType workType : types) {
map.put(workType.getType(), workType.getName());
} }
return map.get(type); return null;
} }
// 判断当天是否全部审批通过 // 判断当天是否全部审批通过
public int statusYes(Integer userId, Date workDay) { public int statusYes(Integer userId, Date workDay) {
int status = 1; int status = PROJECT;
int size = 0; int size = 0;
List<WorkTimeOrder> workTimeOrderDtos = workTimeOrderMapper.getByDay(userId, workDay); List<WorkTimeOrder> workTimeOrderDtos = workTimeOrderMapper.getByDay(userId, workDay);
for (WorkTimeOrder dto : workTimeOrderDtos) { for (WorkTimeOrder dto : workTimeOrderDtos) {
if (2 == dto.getStatus() || 5 == dto.getStatus()) { if (APPROVED.equals(dto.getStatus()) || AUTOMATIC_AUDIT.equals(dto.getStatus())) {
size++; size++;
} }
if (3 == dto.getStatus()) { if (REJECTED.equals(dto.getStatus())) {
status = 3; status = REJECTED;
} }
} }
if (size == workTimeOrderDtos.size()) { if (size == workTimeOrderDtos.size()) {
status = 2; status = APPROVED;
} }
return status; return status;
} }
......
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