diff --git a/src/main/java/com/jsl/oa/controllers/MessageController.java b/src/main/java/com/jsl/oa/controllers/MessageController.java index 76f1e50..e1a5ad1 100644 --- a/src/main/java/com/jsl/oa/controllers/MessageController.java +++ b/src/main/java/com/jsl/oa/controllers/MessageController.java @@ -74,5 +74,19 @@ public class MessageController { return messageService.messageGet(begin, end, page, pageSize, uid); } } + + @GetMapping("/message/get/id") + public BaseResponse messageGetById( + @RequestParam Long id, + HttpServletRequest request) { + log.info("请求接口[GET]:/message/get/id"); + String token = request.getHeader("Authorization").replace("Bearer ", ""); + Long uid = JwtUtil.getUserId(token); + if (uid == null) { + return ResultUtil.error(ErrorCode.USER_NOT_EXIST); + } else { + return messageService.messageGetById(id, uid); + } + } } diff --git a/src/main/java/com/jsl/oa/controllers/ProjectController.java b/src/main/java/com/jsl/oa/controllers/ProjectController.java index 615ee35..13c3f23 100755 --- a/src/main/java/com/jsl/oa/controllers/ProjectController.java +++ b/src/main/java/com/jsl/oa/controllers/ProjectController.java @@ -48,17 +48,10 @@ public class ProjectController { return projectService.getHeader(id); } - /** - * @param id 获取项目 id - * @return {@link BaseResponse} - */ - @GetMapping("/project/get/id") - public BaseResponse projectGetById(@RequestParam Integer id) { - return projectService.getById(id); - } + /** - * @param id 获取项目 id + * @param id 要查询的 id * @return {@link BaseResponse} */ @GetMapping("/project/getwork/id") @@ -66,19 +59,28 @@ public class ProjectController { return projectService.getWorkById(id); } + /** + * @param id 要查询项目的 id + * @return {@link BaseResponse} + */ + @GetMapping("/project/get/id") + public BaseResponse projectGetById(@RequestParam Integer id) { + return projectService.getById(id); + } + /** * 游客获取项目 * * @return {@link BaseResponse} */ @GetMapping("/project/get/custom") - public BaseResponse projectGetCustom(@RequestParam(required = false) Integer id, + public BaseResponse projectGetCustom( @RequestParam(required = false) List tags, - @RequestParam(required = false) List isFinish, + @RequestParam(required = false) List isFinish, @RequestParam(required = false, defaultValue = "1") Integer page, @RequestParam(required = false, defaultValue = "10") Integer pageSize) { - log.info("请求接口[GET]: /project/all/get"); - return projectService.tget(id, tags, isFinish, page, pageSize); + log.info("请求接口[GET]: /project/get/custom"); + return projectService.tget(tags, isFinish, page, pageSize); } /** @@ -87,31 +89,31 @@ public class ProjectController { * @return {@link BaseResponse} */ @GetMapping("/project/get") - public BaseResponse projectGet(@RequestParam(required = false) Integer listAll, + public BaseResponse projectGet( @RequestParam(required = false) List tags, - @RequestParam(required = false) List isFinish, + @RequestParam(required = false) List isFinish, @RequestParam(required = false, defaultValue = "1") Integer page, @RequestParam(required = false, defaultValue = "10") Integer pageSize, HttpServletRequest request) { log.info("请求接口[GET]: /project/get"); - return projectService.get(listAll, request, tags, isFinish, page, pageSize); + return projectService.get(request, tags, isFinish, page, pageSize); } /** - * 我管理的查询 + * 我管理的页面的项目查询 * * @return {@link BaseResponse} */ - @GetMapping("/project/work/get") - public BaseResponse projectWorkGet(@RequestParam(required = false) Integer listAll, + @GetMapping("/project/child/get") + public BaseResponse projectWorkGet( @RequestParam(required = false) List tags, - @RequestParam(required = false) List isFinish, + @RequestParam(required = false) List isFinish, @RequestParam(required = false) Integer is, @RequestParam(required = false, defaultValue = "1") Integer page, @RequestParam(required = false, defaultValue = "10") Integer pageSize, HttpServletRequest request) { log.info("请求接口[GET]: /project/work/get"); - return projectService.workget(listAll, request, tags, isFinish, is, page, pageSize); + return projectService.workget(request, tags, isFinish, is, page, pageSize); } /** @@ -191,6 +193,15 @@ public class ProjectController { } + /** + * 项目添加 + * + * @param request 请求 + * @param projectInfoVO 项目信息 + * @param bindingResult 参数校验 + * @return {@link BaseResponse} + */ + @PostMapping("/project/add") public BaseResponse projectAdd(HttpServletRequest request, @RequestBody @Validated ProjectInfoVO projectInfoVO, diff --git a/src/main/java/com/jsl/oa/dao/ProjectDAO.java b/src/main/java/com/jsl/oa/dao/ProjectDAO.java index a9a9adf..5f55995 100644 --- a/src/main/java/com/jsl/oa/dao/ProjectDAO.java +++ b/src/main/java/com/jsl/oa/dao/ProjectDAO.java @@ -2,7 +2,7 @@ package com.jsl.oa.dao; import com.google.gson.Gson; import com.jsl.oa.mapper.ProjectMapper; import com.jsl.oa.model.dodata.ProjectDO; -import com.jsl.oa.model.dodata.ProjectWorkDO; +import com.jsl.oa.model.dodata.ProjectModuleDO; import com.jsl.oa.model.dodata.info.ProjectShowDO; import com.jsl.oa.model.vodata.ProjectEditVO; import com.jsl.oa.model.vodata.ProjectInfoVO; @@ -115,7 +115,7 @@ public class ProjectDAO { return projectMapper.getProjectById(id); } - public List get(Long userId, Integer listAll, List tags, List isFinish) { + public List get(Long userId, List tags, List isFinish) { log.info("\t> 执行 DAO 层 ProjectDAO.get 方法"); log.info("\t\t> 从 MySQL 获取数据"); if (tags != null && !tags.isEmpty()) { @@ -128,15 +128,11 @@ public class ProjectDAO { return projectMapper.getByIsfinish(userId, isFinish); } - if (listAll == 0) { - return projectMapper.get(userId); - } else { - return projectMapper.get1(userId); - } + return projectMapper.get(userId); + } - public List workget(Long userId, Integer listAll, - List tags, List isFinish, Integer is) { + public List workget(Long userId, List tags, List isFinish, Integer is) { log.info("\t> 执行 DAO 层 ProjectDAO.workget 方法"); log.info("\t\t> 从 MySQL 获取数据"); if (tags != null && !tags.isEmpty()) { @@ -146,12 +142,8 @@ public class ProjectDAO { if (isFinish != null && !isFinish.isEmpty()) { return projectMapper.workgetByIsfinish(userId, isFinish, is); } + return projectMapper.workget(userId, is); - if (listAll == 0) { - return projectMapper.workget(userId, is); - } else { - return projectMapper.workget1(userId, is); - } } public ProjectDO getByName(String name) { @@ -181,7 +173,7 @@ public class ProjectDAO { } - public List tget(Integer id, List isFinish, List tags) { + public List tget(List isFinish, List tags) { log.info("DAO层tget"); if (tags != null && !tags.isEmpty()) { @@ -191,11 +183,10 @@ public class ProjectDAO { if (isFinish != null && !isFinish.isEmpty()) { return projectMapper.tgetByIsfinish(isFinish); } - - return projectMapper.tget(id); + return projectMapper.getAllProject(); } - public ProjectWorkDO getProjectWorkerById(Long id) { + public ProjectModuleDO getProjectWorkerById(Long id) { return projectMapper.getProjectWorkById(id); } @@ -205,13 +196,13 @@ public class ProjectDAO { return projectMapper.getProjectByPrincipalUser(uid); } - public List getAllSubsystemByUserId(Long uid) { + public List getAllSubsystemByUserId(Long uid) { log.info("\t> 执行 DAO 层 ProjectDAO.getAllSubsystemByUserId 方法"); log.info("\t\t> 从 MySQL 获取数据"); return projectMapper.getAllSubsystemByUserId(uid); } - public List getAllSubmoduleByUserId(Long uid) { + public List getAllSubmoduleByUserId(Long uid) { log.info("\t> 执行 DAO 层 ProjectDAO.getAllSubmoduleByUserId 方法"); log.info("\t\t> 从 MySQL 获取数据"); return projectMapper.getAllSubmoduleByUserId(uid); diff --git a/src/main/java/com/jsl/oa/mapper/ModuleMapper.java b/src/main/java/com/jsl/oa/mapper/ModuleMapper.java index dbfa8bd..4e5eee1 100644 --- a/src/main/java/com/jsl/oa/mapper/ModuleMapper.java +++ b/src/main/java/com/jsl/oa/mapper/ModuleMapper.java @@ -1,6 +1,6 @@ package com.jsl.oa.mapper; -import com.jsl.oa.model.dodata.ProjectWorkDO; +import com.jsl.oa.model.dodata.ProjectModuleDO; import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Select; @@ -12,9 +12,9 @@ public interface ModuleMapper { - List getByProjectId(Integer projectId, Long userId, int is); + List getByProjectId(Integer projectId, Long userId, int is); - List getBySysId(Integer sysId, Long userId, int is); + List getBySysId(Integer sysId, Long userId, int is); @Select("select principal_id from organize_oa.oa_project where id=#{projectId}") Long getPidByProjectid(Integer projectId); @@ -26,7 +26,7 @@ public interface ModuleMapper { void deleteMoudule(Long id); @Select("select * from organize_oa.oa_project_work where pid=#{id} and is_delete=0 and type=1 ") - List getAllMoudleByPid(Long id); + List getAllMoudleByPid(Long id); @Select("select principal_id from organize_oa.oa_project where id=(select project_id " + "from organize_oa.oa_project_work where oa_project_work.id = #{sysId})") diff --git a/src/main/java/com/jsl/oa/mapper/ProjectMapper.java b/src/main/java/com/jsl/oa/mapper/ProjectMapper.java index fd80579..82b67b0 100644 --- a/src/main/java/com/jsl/oa/mapper/ProjectMapper.java +++ b/src/main/java/com/jsl/oa/mapper/ProjectMapper.java @@ -1,7 +1,7 @@ package com.jsl.oa.mapper; -import com.jsl.oa.model.dodata.ProjectCuttingDO; +import com.jsl.oa.model.dodata.ProjectChildDO; import com.jsl.oa.model.dodata.ProjectDO; -import com.jsl.oa.model.dodata.ProjectWorkDO; +import com.jsl.oa.model.dodata.ProjectModuleDO; import com.jsl.oa.model.vodata.ProjectInfoVO; import com.jsl.oa.model.vodata.ProjectWorkSimpleVO; import com.jsl.oa.model.vodata.ProjectWorkVO; @@ -17,10 +17,10 @@ import java.util.List; public interface ProjectMapper { @Insert("insert into organize_oa.oa_project " - + "(name, description, principal_id, cycle,file,complete_time," - + "deadline,status,is_finish,tags,work_load) " - + "value (#{name},#{description},#{principalId},#{cycle},#{file}" - + ",#{completeTime},#{deadline},#{status},#{isFinish},#{tags},#{workLoad})") + + "(name, description, principal_id, cycle,files,complete_time," + + "dead_line,status,tags,work_load) " + + "value (#{name},#{description},#{principalId},#{cycle},#{files}" + + ",#{completeTime},#{deadLine},#{status},#{tags},#{workLoad})") void projectAdd(ProjectInfoVO projectAdd); @Insert("insert into organize_oa.oa_project_work (project_id, pid, name, principal_id," @@ -37,8 +37,8 @@ public interface ProjectMapper { @Select("select * from organize_oa.oa_project where id=#{id}") ProjectDO tgetProjectById(Integer id); - @Select("select * from organize_oa.oa_project_work where principal_id=#{uid}") - List projectGetUserInCutting(Long uid); + @Select("select * from organize_oa.oa_project where is_delete=false") + List getAllProject(); @Select("select data from organize_oa.oa_config where value='project_show'") String getHeader(); @@ -50,11 +50,11 @@ public interface ProjectMapper { + " updated_at = CURRENT_TIMESTAMP WHERE value = 'project_show'") boolean setProjectShow(String setProjectShow); - List getByIsfinish(Long userId, List isFinish); + List getByIsfinish(Long userId, List isFinish); - List getByTags(Long userId, List tags, List isFinish); + List getByTags(Long userId, List tags, List isFinish); - @Select("select * from organize_oa.oa_project where is_delete=false and status=1 and principal_id=#{userId}") + @Select("select * from organize_oa.oa_project where is_delete=false and principal_id=#{userId}") List get(Long userId); @Select("select * from organize_oa.oa_project where status =1 and principal_id=#{userId}") @@ -66,9 +66,9 @@ public interface ProjectMapper { @Update("UPDATE organize_oa.oa_project SET is_delete = 1 where id=#{id}") boolean deleteProject(Long id); - List workgetByIsfinish(Long userId, List isFinish, Integer is); + List workgetByIsfinish(Long userId, List isFinish, Integer is); - List workgetByTags(Long userId, List tags, Integer is, List isFinish); + List workgetByTags(Long userId, List tags, Integer is, List isFinish); //@Select("select * from organize_oa.oa_project where id in(select project_id from " + //"organize_oa.oa_project_work where is_delete=false and status =1 and principal_id=#{userId} and type=0)") @@ -80,37 +80,44 @@ public interface ProjectMapper { List tget(Integer id); - List tgetByIsfinish(List isFinish); + List tgetByIsfinish(List isFinish); - List tgetBytags(List tags, List isFinish); + List tgetBytags(List tags, List isFinish); - @Select("select * from organize_oa.oa_project_work where id=#{id}") + @Select("select * from organize_oa.oa_project_child where id=#{id}") ProjectWorkSimpleVO getWorkById(Integer id); + @Select("select * from organize_oa.oa_project_modules where id=#{id}") + ProjectModuleDO getModuleById(Integer id); + @Select("select principal_id from organize_oa.oa_project_work where id=#{pid}") Long getPirIdbyWorkid(Long pid); - @Select("select principal_id from organize_oa.oa_project_work where id=#{id} " + @Select("select principal_id from organize_oa.oa_project_modules where project_child_id=#{id} " + "AND is_delete = 0") Long getPid(Integer id); @Select("select * from organize_oa.oa_project_work where id=#{id} " + "AND is_delete = 0") - ProjectWorkDO getProjectWorkById(Long id); + ProjectModuleDO getProjectWorkById(Long id); - @Select("select principal_id from organize_oa.oa_project_work where project_id=#{id}") + @Select("select principal_id from organize_oa.oa_project_child where project_id=#{id}") List getMemberByProjectId(Integer id); - @Select("select principal_id from organize_oa.oa_project_work where pid=#{id}") + @Select("select principal_id from organize_oa.oa_project_modules where project_child_id=#{id}") List getMemberBySystemId(Integer id); - @Select("select * from organize_oa.oa_project_work " - + "where DATE(deadline) = DATE(#{threeDayLater}) and is_finish != 1") - List getProjectWorkByTime(LocalDateTime threeDayLater); + @Select("select * from organize_oa.oa_project_modules " + + "where DATE(deadline) = DATE(#{threeDayLater}) and status = 0") + List getProjectWorkByTime(LocalDateTime threeDayLater); - List getAllSubmoduleByUserId(Long uid); + List getAllSubmoduleByUserId(Long uid); List getProjectByPrincipalUser(Long uid); - List getAllSubsystemByUserId(Long uid); + List getAllSubsystemByUserId(Long uid); + + @Select("select * from organize_oa.oa_project_child where " + + "DATE (created_at) = DATE (#{threeDaysLater}) and status = 0") + List getProjectChildByTime(LocalDateTime threeDaysLater); } diff --git a/src/main/java/com/jsl/oa/model/dodata/ProjectCuttingDO.java b/src/main/java/com/jsl/oa/model/dodata/ProjectChildDO.java old mode 100755 new mode 100644 similarity index 74% rename from src/main/java/com/jsl/oa/model/dodata/ProjectCuttingDO.java rename to src/main/java/com/jsl/oa/model/dodata/ProjectChildDO.java index a438d9b..2be895e --- a/src/main/java/com/jsl/oa/model/dodata/ProjectCuttingDO.java +++ b/src/main/java/com/jsl/oa/model/dodata/ProjectChildDO.java @@ -18,19 +18,17 @@ import java.sql.Timestamp; @Data @Accessors(chain = true) @JsonInclude(JsonInclude.Include.NON_NULL) -public class ProjectCuttingDO { +public class ProjectChildDO { private Long id; private Long principalId; private Long projectId; - private Long pid; - private Long workLoad; - private Long cycle; + private Integer workLoad; + private Integer cycle; private String name; private String description; private Integer isDelete; - private Integer isFinish; - private Integer status; - private boolean type; - private Timestamp beginTime; + private String files; + private Timestamp createdAt; private Timestamp completeTime; + private Timestamp updatedAt; } diff --git a/src/main/java/com/jsl/oa/model/dodata/ProjectDO.java b/src/main/java/com/jsl/oa/model/dodata/ProjectDO.java index 172ab0d..b5d013c 100755 --- a/src/main/java/com/jsl/oa/model/dodata/ProjectDO.java +++ b/src/main/java/com/jsl/oa/model/dodata/ProjectDO.java @@ -23,20 +23,19 @@ public class ProjectDO { private Long id; private Long principalId; private String tags; - private Long cycle; + private Integer cycle; private String name; private String file; private String description; private Integer isDelete; - private Integer isFinish; - private Long workLoad; - private Integer status; + private Integer workLoad; + private String status; @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC") private Timestamp beginTime; - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC") private Timestamp completeTime; - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC") private Timestamp deadline; + private Timestamp createdAt; + private Timestamp updatedAt; } diff --git a/src/main/java/com/jsl/oa/model/dodata/ProjectWorkDO.java b/src/main/java/com/jsl/oa/model/dodata/ProjectModuleDO.java similarity index 67% rename from src/main/java/com/jsl/oa/model/dodata/ProjectWorkDO.java rename to src/main/java/com/jsl/oa/model/dodata/ProjectModuleDO.java index b707532..d42f39f 100644 --- a/src/main/java/com/jsl/oa/model/dodata/ProjectWorkDO.java +++ b/src/main/java/com/jsl/oa/model/dodata/ProjectModuleDO.java @@ -9,19 +9,15 @@ import java.sql.Timestamp; @Data @Accessors(chain = true) @JsonInclude(JsonInclude.Include.NON_NULL) -public class ProjectWorkDO { +public class ProjectModuleDO { private Long id; - private Long pid; - private Long projectId; + private Long projectChildId; private Long principalId; - private Integer cycle; private Integer workLoad; - private Integer type; - private String name; private String description; + private String name; private Integer isDelete; - private Integer isFinish; - private boolean status; - private Timestamp beginTime; + private Timestamp createdAt; + private Timestamp updatedAt; private Timestamp completeTime; } diff --git a/src/main/java/com/jsl/oa/model/vodata/ProjectInfoVO.java b/src/main/java/com/jsl/oa/model/vodata/ProjectInfoVO.java index e5a5784..2adf8ec 100644 --- a/src/main/java/com/jsl/oa/model/vodata/ProjectInfoVO.java +++ b/src/main/java/com/jsl/oa/model/vodata/ProjectInfoVO.java @@ -20,10 +20,10 @@ public class ProjectInfoVO { @NotNull(message = "工作量不能为空") private Long workLoad; private String tags; - private String file; + private String files; + private Timestamp beginTime; private Timestamp completeTime; - private Timestamp deadline; - private Integer status; - private Integer isFinish; + private Timestamp deadLine; + private String status; } diff --git a/src/main/java/com/jsl/oa/services/MessageService.java b/src/main/java/com/jsl/oa/services/MessageService.java index dd54b98..5885df9 100644 --- a/src/main/java/com/jsl/oa/services/MessageService.java +++ b/src/main/java/com/jsl/oa/services/MessageService.java @@ -25,11 +25,17 @@ public interface MessageService { Integer pageSize, Long uid); - void messageAdd(Integer pId, Integer systemId, Integer moddleId, Long uid, HttpServletRequest request); - void messageAdd(Integer pId, Integer systemId, Integer moddleId, Long uid, Long isPass, HttpServletRequest request); - void messageAdd(Integer pId, Integer type, Integer systemId, HttpServletRequest request); - void messageAdd(Integer pId, Integer systmeId, Integer moddleId, Integer type, HttpServletRequest request); + void messageAdd(Integer pId, Integer systemId, Integer moddleId, Long uid, + HttpServletRequest request); + void messageAdd(Integer pId, Integer systemId, Integer moddleId, Long uid, Long isPass, + HttpServletRequest request); + void messageAdd(Integer pId, Integer type, Integer systemId, + HttpServletRequest request); + void messageAdd(Integer pId, Integer systmeId, Integer moddleId, Integer type, + HttpServletRequest request); void messageAdd(Integer pId, Integer systemId, Integer moddleId); void messageRemind(); + + BaseResponse messageGetById(Long id, Long uid); } diff --git a/src/main/java/com/jsl/oa/services/ProjectService.java b/src/main/java/com/jsl/oa/services/ProjectService.java index 6b57050..9753e00 100644 --- a/src/main/java/com/jsl/oa/services/ProjectService.java +++ b/src/main/java/com/jsl/oa/services/ProjectService.java @@ -19,10 +19,10 @@ public interface ProjectService { BaseResponse editHeader(HttpServletRequest request, ProjectShowVO projectShowVO, Integer id); - BaseResponse get(Integer listAll, + BaseResponse get( HttpServletRequest request, List tags, - List isFinish, + List isFinish, Integer page, Integer pageSize); @@ -34,17 +34,17 @@ public interface ProjectService { BaseResponse projectToOtherUserForCutting(HttpServletRequest request, Long oldUid, Long pid, Long newUid); - BaseResponse workget(Integer listAll, + BaseResponse workget( HttpServletRequest request, List tags, - List isFinish, + List isFinish, Integer is, Integer page, Integer pageSize); BaseResponse projecWorktAdd(HttpServletRequest request, ProjectWorkVO projectWorkVO); - BaseResponse tget(Integer id, List tags, List isFinish, Integer page, Integer pageSize); + BaseResponse tget(List tags, List isFinish, Integer page, Integer pageSize); BaseResponse projectFileGet(HttpServletRequest request, Long projectId); diff --git a/src/main/java/com/jsl/oa/services/impl/MessageServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/MessageServiceImpl.java index 4c8100c..d774276 100644 --- a/src/main/java/com/jsl/oa/services/impl/MessageServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/MessageServiceImpl.java @@ -4,7 +4,8 @@ import com.jsl.oa.dao.UserDAO; import com.jsl.oa.mapper.MessageMapper; import com.jsl.oa.mapper.ProjectMapper; import com.jsl.oa.model.dodata.MessageDO; -import com.jsl.oa.model.dodata.ProjectWorkDO; +import com.jsl.oa.model.dodata.ProjectChildDO; +import com.jsl.oa.model.dodata.ProjectModuleDO; import com.jsl.oa.model.vodata.MessageAddVO; import com.jsl.oa.model.vodata.MessageGetVO; import com.jsl.oa.services.MessageService; @@ -117,13 +118,14 @@ public class MessageServiceImpl implements MessageService { if (moddleId == null) { messageAddVO.setText(senderName + "指派了" + projectName + "项目的" + systemName + "子系统给您"); } else { - String moddleName = projectMapper.getWorkById(moddleId).getName(); + String moddleName = projectMapper.getModuleById(moddleId).getName(); messageAddVO.setText(senderName + "指派了" + projectName + "项目的" + systemName + "子系统的" + moddleName + "子模块给您"); } messageAddVO.setType("跳转审批页"); messageMapper.messageAdd(messageAddVO); } + /** * 添加审批消息 * @@ -149,7 +151,7 @@ public class MessageServiceImpl implements MessageService { MessageAddVO messageAddVO = new MessageAddVO(); messageAddVO.setUid(uid); messageAddVO.setTitle("审批消息"); - String moddleName = projectMapper.getWorkById(moddleId).getName(); + String moddleName = projectMapper.getModuleById(moddleId).getName(); if (isPass == 1) { messageAddVO.setText("您申请的" + projectName + "项目的" + systemName + "系统的" + moddleName + "模块负责人已通过"); } else { @@ -216,7 +218,7 @@ public class MessageServiceImpl implements MessageService { String projectName = projectMapper.tgetProjectById(pId).getName(); String senderName = userDAO.getUserById(Processing.getAuthHeaderToUserId(request)).getUsername(); String systemName = projectMapper.getWorkById(systmeId).getName(); - String moddleName = projectMapper.getWorkById(moddleId).getName(); + String moddleName = projectMapper.getModuleById(moddleId).getName(); // 添加消息 // 1:删除模块 2:修改简介 3:修改周期 if (type == 1) { @@ -261,7 +263,7 @@ public class MessageServiceImpl implements MessageService { // 获取项目名,系统名,模块名,负责人名 String projectName = projectMapper.tgetProjectById(pId).getName(); String systemName = projectMapper.getWorkById(systemId).getName(); - String moddleName = projectMapper.getWorkById(moddleId).getName(); + String moddleName = projectMapper.getModuleById(moddleId).getName(); String principalName = userDAO.getUserById(projectMapper.getPid(moddleId)).getUsername(); // 添加消息 MessageAddVO messageAddVO = new MessageAddVO(); @@ -285,62 +287,87 @@ public class MessageServiceImpl implements MessageService { LocalDateTime threeDaysLater = now.plusDays(3); // 七天后时间 LocalDateTime sevenDaysLater = now.plusDays(7); - // 获取三天后到期的系统/模块 - List projectWorkDOList = projectMapper.getProjectWorkByTime(threeDaysLater); - // 获取七天后到期的系统/模块 - List projectWorkDOList1 = projectMapper.getProjectWorkByTime(sevenDaysLater); + // 获取三天后到期的模块 + List projectWorkDOList = projectMapper.getProjectWorkByTime(threeDaysLater); + // 获取七天后到期的模块 + List projectWorkDOList1 = projectMapper.getProjectWorkByTime(sevenDaysLater); if (!projectWorkDOList1.isEmpty()) { - for (ProjectWorkDO projectWorkDO : projectWorkDOList) { + for (ProjectModuleDO projectWorkDO : projectWorkDOList) { // 添加消息 MessageAddVO messageAddVO = new MessageAddVO(); messageAddVO.setUid(projectWorkDO.getPrincipalId()); messageAddVO.setTitle("提醒消息"); - // 0:系统 1:模块 String projectName = projectMapper - .tgetProjectById(projectWorkDO.getProjectId().intValue()).getName(); - String systemName; - if (projectWorkDO.getType() == 1) { - systemName = projectMapper.getWorkById(projectWorkDO.getPid().intValue()).getName(); - String moddleName = projectMapper.getWorkById(projectWorkDO.getId().intValue()).getName(); - messageAddVO.setText("您负责的" + projectName + "项目的" + systemName + "系统的" + moddleName + "模块" - + "还有七天就要到期了,请及时处理"); - messageAddVO.setType("跳转模块页"); - } else { - systemName = projectMapper.getWorkById(projectWorkDO.getId().intValue()).getName(); - messageAddVO.setText("您负责的" + projectName + "项目的" + systemName + "系统" - + "还有七天就要到期了,请及时处理"); - messageAddVO.setType("跳转系统页"); - } + .tgetProjectById(projectMapper.getWorkById(projectWorkDO.getProjectChildId().intValue()) + .getProjectId().intValue()).getName(); + + String systemName = projectMapper.getWorkById(projectWorkDO.getProjectChildId().intValue()).getName(); + String moddleName = projectWorkDO.getName(); + messageAddVO.setText("您负责的" + projectName + "项目的" + systemName + "系统的" + moddleName + "模块" + + "还有七天就要到期了,请及时处理"); + messageAddVO.setType("跳转模块页"); messageAddVO.setToId(projectWorkDO.getId().intValue()); messageMapper.messageAdd(messageAddVO); } } if (!projectWorkDOList.isEmpty()) { - for (ProjectWorkDO projectWorkDO : projectWorkDOList) { + for (ProjectModuleDO projectWorkDO : projectWorkDOList) { // 添加消息 MessageAddVO messageAddVO = new MessageAddVO(); messageAddVO.setUid(projectWorkDO.getPrincipalId()); messageAddVO.setTitle("提醒消息"); - // 0:系统 1:模块 String projectName = projectMapper - .tgetProjectById(projectWorkDO.getProjectId().intValue()).getName(); - String systemName; - if (projectWorkDO.getType() == 1) { - systemName = projectMapper.getWorkById(projectWorkDO.getPid().intValue()).getName(); - String moddleName = projectMapper.getWorkById(projectWorkDO.getId().intValue()).getName(); - messageAddVO.setText("您负责的" + projectName + "项目的" + systemName + "系统的" + moddleName + "模块" + .tgetProjectById(projectMapper.getWorkById(projectWorkDO.getProjectChildId().intValue()) + .getPrincipalId().intValue()).getName(); + + String systemName = projectMapper.getWorkById(projectWorkDO.getProjectChildId().intValue()).getName(); + String moddleName = projectWorkDO.getName(); + messageAddVO.setText("您负责的" + projectName + "项目的" + systemName + "系统的" + moddleName + "模块" + "还有三天就要到期了,请及时处理"); messageAddVO.setType("跳转模块页"); - } else { - systemName = projectMapper.getWorkById(projectWorkDO.getId().intValue()).getName(); - messageAddVO.setText("您负责的" + projectName + "项目的" + systemName + "系统" - + "还有三天就要到期了,请及时处理"); - messageAddVO.setType("跳转系统页"); - } messageAddVO.setToId(projectWorkDO.getId().intValue()); messageMapper.messageAdd(messageAddVO); } } + + // 获取七天后到期的系统 + List projectChildDOList = projectMapper.getProjectChildByTime(sevenDaysLater); + if (!projectChildDOList.isEmpty()) { + for (ProjectChildDO projectChildDO : projectChildDOList) { + // 添加消息 + MessageAddVO messageAddVO = new MessageAddVO(); + messageAddVO.setUid(projectChildDO.getPrincipalId()); + messageAddVO.setTitle("提醒消息"); + String projectName = projectMapper.tgetProjectById(projectChildDO.getProjectId().intValue()).getName(); + String systemName = projectChildDO.getName(); + messageAddVO.setText("您负责的" + projectName + "项目的" + systemName + "系统还有七天就要到期了,请及时处理"); + messageAddVO.setType("跳转系统页"); + messageAddVO.setToId(projectChildDO.getId().intValue()); + messageMapper.messageAdd(messageAddVO); + } + } + // 获取三天后到期的系统 + List projectChildDOList1 = projectMapper.getProjectChildByTime(threeDaysLater); + if (!projectChildDOList1.isEmpty()) { + for (ProjectChildDO projectChildDO : projectChildDOList1) { + // 添加消息 + MessageAddVO messageAddVO = new MessageAddVO(); + messageAddVO.setUid(projectChildDO.getPrincipalId()); + messageAddVO.setTitle("提醒消息"); + String projectName = projectMapper.tgetProjectById(projectChildDO.getProjectId().intValue()).getName(); + String systemName = projectChildDO.getName(); + messageAddVO.setText("您负责的" + projectName + "项目的" + systemName + "系统还有三天就要到期了,请及时处理"); + messageAddVO.setType("跳转系统页"); + messageAddVO.setToId(projectChildDO.getId().intValue()); + messageMapper.messageAdd(messageAddVO); + } + + } + } + + @Override + public BaseResponse messageGetById(Long id, Long uid) { + return ResultUtil.success(messageMapper.getMessageById(id)); } } diff --git a/src/main/java/com/jsl/oa/services/impl/ModuleServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/ModuleServiceImpl.java index c8d1d39..ac75a22 100644 --- a/src/main/java/com/jsl/oa/services/impl/ModuleServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/ModuleServiceImpl.java @@ -4,7 +4,7 @@ import com.jsl.oa.dao.ProjectDAO; import com.jsl.oa.dao.RoleDAO; import com.jsl.oa.dao.UserDAO; import com.jsl.oa.mapper.ModuleMapper; -import com.jsl.oa.model.dodata.ProjectWorkDO; +import com.jsl.oa.model.dodata.ProjectModuleDO; import com.jsl.oa.model.vodata.ProjectWorkAndNameVO; import com.jsl.oa.services.ModuleService; import com.jsl.oa.utils.BaseResponse; @@ -42,7 +42,7 @@ public class ModuleServiceImpl implements ModuleService { is = 0; } - List projectWorkDOList = moduleMapper.getByProjectId(projectId, userId, is); + List projectWorkDOList = moduleMapper.getByProjectId(projectId, userId, is); return ResultUtil.success(projectWorkDOList); } @@ -61,10 +61,10 @@ public class ModuleServiceImpl implements ModuleService { is = 0; } - List projectWorkDOList = moduleMapper.getBySysId(sysId, userId, is); + List projectWorkDOList = moduleMapper.getBySysId(sysId, userId, is); // 封装VO类 List projectWorkAndNameVOS = new ArrayList<>(); - for (ProjectWorkDO projectWorkDO : projectWorkDOList) { + for (ProjectModuleDO projectWorkDO : projectWorkDOList) { ProjectWorkAndNameVO projectWorkAndNameVO = new ProjectWorkAndNameVO(); Processing.copyProperties(projectWorkDO, projectWorkAndNameVO); // 添加负责人和子系统名称 @@ -94,9 +94,9 @@ public class ModuleServiceImpl implements ModuleService { // 删除子模块方法 public void deleteMoudule(Long id) { //获取所有父Id=id的子模块 - List projectWorkDOS = moduleMapper.getAllMoudleByPid(id); + List projectWorkDOS = moduleMapper.getAllMoudleByPid(id); - for (ProjectWorkDO workDO : projectWorkDOS) { + for (ProjectModuleDO workDO : projectWorkDOS) { deleteMoudule(workDO.getId()); } diff --git a/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java index c3b8f0d..4a46276 100644 --- a/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java @@ -13,6 +13,7 @@ import com.jsl.oa.model.dodata.UserDO; import com.jsl.oa.model.dodata.info.ProjectShowDO; import com.jsl.oa.model.vodata.*; import com.jsl.oa.model.vodata.business.info.ProjectShowVO; +import com.jsl.oa.services.MessageService; import com.jsl.oa.services.ProjectService; import com.jsl.oa.utils.BaseResponse; import com.jsl.oa.utils.ErrorCode; @@ -22,7 +23,6 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.jetbrains.annotations.NotNull; import org.springframework.stereotype.Service; - import javax.servlet.http.HttpServletRequest; import java.sql.Timestamp; import java.util.ArrayList; @@ -50,6 +50,7 @@ public class ProjectServiceImpl implements ProjectService { private final UserDAO userDAO; private final ObjectMapper objectMapper; private final RoleDAO roleDAO; + private final MessageService messageService; @Override public BaseResponse projectAdd(HttpServletRequest request, ProjectInfoVO projectAdd) { @@ -71,7 +72,7 @@ public class ProjectServiceImpl implements ProjectService { tag = new StringBuilder(tag.substring(0, tag.length() - 2)); } projectAdd.setTags(open + tag + close); - projectAdd.setFile("{\"URI\":\"" + projectAdd.getFile() + "\"}"); + projectAdd.setFiles("{\"URI\":\"" + projectAdd.getFiles() + "\"}"); projectDAO.projectAdd(projectAdd); @@ -109,54 +110,11 @@ public class ProjectServiceImpl implements ProjectService { } @Override - public BaseResponse tget(Integer id, List tags, List isFinish, Integer page, Integer pageSize) { + public BaseResponse tget(List tags, List isFinish, Integer page, Integer pageSize) { log.info("\t> 执行 Service 层 ProjectService.tget 方法"); - //根据id查询 - if (id != null) { - ProjectDO projectDO = projectMapper.tgetProjectById(id); - ProjectSimpleVO projectSimpleVO = new ProjectSimpleVO(); - Processing.projectTosimply(projectSimpleVO, projectDO, userDAO, objectMapper); - return ResultUtil.success(projectSimpleVO); - } - //根据标签查询 - if (tags != null && !tags.isEmpty()) { - List projectDOList = projectDAO.tget(id, isFinish, tags); + List projectDOList = projectDAO.tget(isFinish, tags); - List projectSimpleVOList = new ArrayList<>(); - for (ProjectDO projectDO : projectDOList) { - ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); - Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper); - projectSimpleVOList.add(projectSimpleVO1); - } - - //分页返回 - int start = (page - 1) * pageSize; - int end = start + pageSize; - List pageData = projectSimpleVOList.subList(start, - Math.min(end, projectSimpleVOList.size())); - return ResultUtil.success(pageData); - } - - //根据状态查询 - if (isFinish != null && !isFinish.isEmpty()) { - List projectDOList = projectDAO.tget(id, isFinish, tags); - - List projectSimpleVOList = new ArrayList<>(); - for (ProjectDO projectDO : projectDOList) { - ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); - Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper); - projectSimpleVOList.add(projectSimpleVO1); - } - //分页返回 - int start = (page - 1) * pageSize; - int end = start + pageSize; - List pageData = projectSimpleVOList.subList(start, - Math.min(end, projectSimpleVOList.size())); - return ResultUtil.success(pageData); - } - - List projectDOList = projectDAO.tget(id, isFinish, tags); List projectSimpleVOList = new ArrayList<>(); for (ProjectDO projectDO : projectDOList) { ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); @@ -169,6 +127,7 @@ public class ProjectServiceImpl implements ProjectService { List pageData = projectSimpleVOList.subList(start, Math.min(end, projectSimpleVOList.size())); return ResultUtil.success(pageData); + } @Override @@ -342,10 +301,9 @@ public class ProjectServiceImpl implements ProjectService { @Override public BaseResponse get( - Integer listAll, HttpServletRequest request, List tags, - List isFinish, + List isFinish, Integer page, Integer pageSize ) { @@ -355,7 +313,7 @@ public class ProjectServiceImpl implements ProjectService { Long userId = Processing.getAuthHeaderToUserId(request); //根据标签查询 if (tags != null && !tags.isEmpty()) { - List projectDOList = projectDAO.get(userId, listAll, tags, isFinish); + List projectDOList = projectDAO.get(userId, tags, isFinish); List projectSimpleVOList = new ArrayList<>(); for (ProjectDO projectDO : projectDOList) { @@ -373,40 +331,7 @@ public class ProjectServiceImpl implements ProjectService { //根据状态查询 if (isFinish != null && !isFinish.isEmpty()) { - List projectDOList = projectDAO.get(userId, listAll, tags, isFinish); - List projectSimpleVOList = new ArrayList<>(); - for (ProjectDO projectDO : projectDOList) { - ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); - Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper); - projectSimpleVOList.add(projectSimpleVO1); - } - //分页返回 - int start = (page - 1) * pageSize; - int end = start + pageSize; - List pageData = projectSimpleVOList.subList(start, - Math.min(end, projectSimpleVOList.size())); - return ResultUtil.success(pageData); - } - - - //判断是否是老师(项目负责人) - if (listAll != null && Processing.checkUserIsTeacher(request, roleDAO)) { - List projectDOList = projectDAO.get(userId, listAll, tags, isFinish); - List projectSimpleVOList = new ArrayList<>(); - for (ProjectDO projectDO : projectDOList) { - ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); - Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper); - projectSimpleVOList.add(projectSimpleVO1); - } - //分页返回 - int start = (page - 1) * pageSize; - int end = start + pageSize; - List pageData = projectSimpleVOList.subList(start, - Math.min(end, projectSimpleVOList.size())); - return ResultUtil.success(pageData); - } else { - listAll = 0; - List projectDOList = projectDAO.get(userId, listAll, tags, isFinish); + List projectDOList = projectDAO.get(userId, tags, isFinish); List projectSimpleVOList = new ArrayList<>(); for (ProjectDO projectDO : projectDOList) { ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); @@ -420,90 +345,38 @@ public class ProjectServiceImpl implements ProjectService { Math.min(end, projectSimpleVOList.size())); return ResultUtil.success(pageData); } + return ResultUtil.success(projectMapper.get(userId)); } @Override public BaseResponse workget( - Integer listAll, HttpServletRequest request, List tags, - List isFinish, + List isFinish, Integer is, Integer page, Integer pageSize ) { log.info("\t> 执行 Service 层 ProjectService.workget 方法"); - //获取用户 Long userId = Processing.getAuthHeaderToUserId(request); - //根据标签查询 - if (tags != null && !tags.isEmpty()) { - List projectDOList = projectDAO.workget(userId, listAll, tags, isFinish, is); - List projectSimpleVOList = new ArrayList<>(); - for (ProjectDO projectDO : projectDOList) { - ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); - Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper); - projectSimpleVOList.add(projectSimpleVO1); - } - //分页返回 - int start = (page - 1) * pageSize; - int end = start + pageSize; - List pageData = projectSimpleVOList.subList(start, - Math.min(end, projectSimpleVOList.size())); - return ResultUtil.success(pageData); + List projectDOList = projectDAO.workget(userId, tags, isFinish, is); + List projectSimpleVOList = new ArrayList<>(); + for (ProjectDO projectDO : projectDOList) { + ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); + Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper); + projectSimpleVOList.add(projectSimpleVO1); } + //分页返回 + int start = (page - 1) * pageSize; + int end = start + pageSize; + List pageData = projectSimpleVOList.subList(start, + Math.min(end, projectSimpleVOList.size())); - //根据状态查询 - if (isFinish != null && !isFinish.isEmpty()) { - List projectDOList = projectDAO.workget(userId, listAll, tags, isFinish, is); - List projectSimpleVOList = new ArrayList<>(); - for (ProjectDO projectDO : projectDOList) { - ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); - Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper); - projectSimpleVOList.add(projectSimpleVO1); - } - //分页返回 - int start = (page - 1) * pageSize; - int end = start + pageSize; - List pageData = projectSimpleVOList.subList(start, - Math.min(end, projectSimpleVOList.size())); - return ResultUtil.success(pageData); - } + return ResultUtil.success(pageData); - - //判断是否是老师(项目负责人) - if (listAll != null && Processing.checkUserIsTeacher(request, roleDAO)) { - List projectDOList = projectDAO.workget(userId, listAll, tags, isFinish, is); - List projectSimpleVOList = new ArrayList<>(); - for (ProjectDO projectDO : projectDOList) { - ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); - Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper); - projectSimpleVOList.add(projectSimpleVO1); - } - //分页返回 - int start = (page - 1) * pageSize; - int end = start + pageSize; - List pageData = projectSimpleVOList.subList(start, - Math.min(end, projectSimpleVOList.size())); - return ResultUtil.success(pageData); - } else { - listAll = 0; - List projectDOList = projectDAO.workget(userId, listAll, tags, isFinish, is); - List projectSimpleVOList = new ArrayList<>(); - for (ProjectDO projectDO : projectDOList) { - ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO(); - Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper); - projectSimpleVOList.add(projectSimpleVO1); - } - //分页返回 - int start = (page - 1) * pageSize; - int end = start + pageSize; - List pageData = projectSimpleVOList.subList(start, - Math.min(end, projectSimpleVOList.size())); - return ResultUtil.success(pageData); - } } diff --git a/src/main/java/com/jsl/oa/services/impl/ReviewServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/ReviewServiceImpl.java index 2157ff6..7f8859b 100644 --- a/src/main/java/com/jsl/oa/services/impl/ReviewServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/ReviewServiceImpl.java @@ -7,7 +7,7 @@ import com.jsl.oa.dao.UserDAO; import com.jsl.oa.mapper.ReviewMapper; import com.jsl.oa.mapper.UserMapper; import com.jsl.oa.model.dodata.ProjectDO; -import com.jsl.oa.model.dodata.ProjectWorkDO; +import com.jsl.oa.model.dodata.ProjectModuleDO; import com.jsl.oa.model.dodata.ReviewDO; import com.jsl.oa.model.vodata.ReviewVO; import com.jsl.oa.services.ReviewService; @@ -58,7 +58,7 @@ public class ReviewServiceImpl implements ReviewService { } //在从用户为 子系统负责人 的项目中获取对应 审核信息 - for (ProjectWorkDO projectWorkDO : projectDAO.getAllSubsystemByUserId(userId)) { + for (ProjectModuleDO projectWorkDO : projectDAO.getAllSubsystemByUserId(userId)) { //查询每个项目下所有的审核信息 List reviewDOS = reviewMapper. selectReviewFromSubsystem(projectWorkDO.getId()); @@ -68,7 +68,7 @@ public class ReviewServiceImpl implements ReviewService { //在从用户为 子模块负责人 的项目中获取对应 审核信息 - for (ProjectWorkDO projectWorkDO : projectDAO.getAllSubmoduleByUserId(userId)) { + for (ProjectModuleDO projectWorkDO : projectDAO.getAllSubmoduleByUserId(userId)) { //查询每个项目下所有的审核信息 List reviewDOS = reviewMapper. selectReviewFromSubmodule(projectWorkDO.getId()); diff --git a/src/main/resources/com/jsl/oa/mapper/ModuleMapper.xml b/src/main/resources/com/jsl/oa/mapper/ModuleMapper.xml index bdd6c94..7e2f098 100644 --- a/src/main/resources/com/jsl/oa/mapper/ModuleMapper.xml +++ b/src/main/resources/com/jsl/oa/mapper/ModuleMapper.xml @@ -5,14 +5,14 @@ - select * from organize_oa.oa_project_work where project_id=#{projectId} and type=0 and (principal_id=#{userId} or principal_id is null) - select * from organize_oa.oa_project_work where pid=#{sysId} and type=1 and (principal_id=#{userId} or principal_id is null) diff --git a/src/main/resources/com/jsl/oa/mapper/ProjectMapper.xml b/src/main/resources/com/jsl/oa/mapper/ProjectMapper.xml index 1295372..b6d4b88 100644 --- a/src/main/resources/com/jsl/oa/mapper/ProjectMapper.xml +++ b/src/main/resources/com/jsl/oa/mapper/ProjectMapper.xml @@ -49,10 +49,10 @@