diff --git a/src/main/java/com/jsl/oa/controllers/ProjectController.java b/src/main/java/com/jsl/oa/controllers/ProjectController.java index 2c98673..334895e 100755 --- a/src/main/java/com/jsl/oa/controllers/ProjectController.java +++ b/src/main/java/com/jsl/oa/controllers/ProjectController.java @@ -393,6 +393,11 @@ public class ProjectController { @RequestParam Integer id, HttpServletRequest request ) { + + if (id == null) { + return ResultUtil.error(ErrorCode.ID_NOT_EXIST); + } + return projectService.projectChildGetById(id, request); } @@ -419,6 +424,11 @@ public class ProjectController { @RequestParam Integer childId, HttpServletRequest request ) { + + if (childId == null) { + return ResultUtil.error(ErrorCode.ID_NOT_EXIST); + } + return projectService.projectModuleGetById(childId, request); } diff --git a/src/main/java/com/jsl/oa/controllers/ProjectDailyController.java b/src/main/java/com/jsl/oa/controllers/ProjectDailyController.java index e894968..426ec89 100644 --- a/src/main/java/com/jsl/oa/controllers/ProjectDailyController.java +++ b/src/main/java/com/jsl/oa/controllers/ProjectDailyController.java @@ -60,7 +60,6 @@ public class ProjectDailyController { @NotNull BindingResult bindingResult, HttpServletRequest request) { - log.info("请求接口[PUT]: /daily/update"); // 判断是否有参数错误 if (bindingResult.hasErrors()) { return ResultUtil.error(ErrorCode.PARAMETER_ERROR, Processing.getValidatedErrorList(bindingResult)); @@ -73,6 +72,11 @@ public class ProjectDailyController { @NeedPermission("project:daily_delete") public BaseResponse delete(@RequestParam Integer dailyId, HttpServletRequest request) { + + if (dailyId == null) { + return ResultUtil.error(ErrorCode.ID_NOT_EXIST); + } + return projectDailyService.deleteDaily(dailyId, request); } @@ -81,6 +85,11 @@ public class ProjectDailyController { public BaseResponse getMyDaily(@RequestParam Integer page, @RequestParam Integer pageSize, HttpServletRequest request) { + + if (page == null || pageSize == null) { + return ResultUtil.error(ErrorCode.PAGE_NUMBER_IS_NULL); + } + return projectDailyService.getMyDaily(page, pageSize, request); } @@ -93,6 +102,14 @@ public class ProjectDailyController { String endTime, HttpServletRequest request) { + if (page == null || pageSize == null) { + return ResultUtil.error(ErrorCode.PAGE_NUMBER_IS_NULL); + } + + if (projectId == null) { + return ResultUtil.error(ErrorCode.ID_NOT_EXIST); + } + return projectDailyService.searchMyDaily(projectId, page, pageSize, diff --git a/src/main/java/com/jsl/oa/controllers/ReviewController.java b/src/main/java/com/jsl/oa/controllers/ReviewController.java index 237cb1e..8c955db 100644 --- a/src/main/java/com/jsl/oa/controllers/ReviewController.java +++ b/src/main/java/com/jsl/oa/controllers/ReviewController.java @@ -41,7 +41,11 @@ public class ReviewController { @RequestParam Integer page, @RequestParam Integer pageSize, HttpServletRequest request) { - log.info("请求接口[GET]: /review/getMyReview"); + + if (page == null || pageSize == null) { + return ResultUtil.error(ErrorCode.PAGE_NUMBER_IS_NULL); + } + return reviewService.getUserReview(page, pageSize, request); } @@ -55,6 +59,11 @@ public class ReviewController { public BaseResponse getMyReview(@RequestParam Integer page, @RequestParam Integer pageSize, HttpServletRequest request) { + + if (page == null || pageSize == null) { + return ResultUtil.error(ErrorCode.PAGE_NUMBER_IS_NULL); + } + return reviewService.getUserPendingApprovalReview(page, pageSize, request); } @@ -70,7 +79,6 @@ public class ReviewController { @NotNull BindingResult bindingResult, HttpServletRequest request) { - if (bindingResult.hasErrors()) { return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR); } @@ -96,7 +104,11 @@ public class ReviewController { public BaseResponse searchReview(String content, HttpServletRequest request, @RequestParam Integer page, - @RequestParam Integer pageSize) { + @RequestParam Integer pageSize) { + + if (page == null || pageSize == null) { + return ResultUtil.error(ErrorCode.PAGE_NUMBER_IS_NULL); + } return reviewService.searchReview(content, request, page, pageSize); } @@ -108,6 +120,10 @@ public class ReviewController { @RequestParam Integer page, @RequestParam Integer pageSize) { + if (page == null || pageSize == null) { + return ResultUtil.error(ErrorCode.PAGE_NUMBER_IS_NULL); + } + return reviewService.searchReviewRecords(content, statue, request, page, pageSize); } } diff --git a/src/main/java/com/jsl/oa/dao/ProjectDAO.java b/src/main/java/com/jsl/oa/dao/ProjectDAO.java index 1e7491e..31448eb 100644 --- a/src/main/java/com/jsl/oa/dao/ProjectDAO.java +++ b/src/main/java/com/jsl/oa/dao/ProjectDAO.java @@ -1,9 +1,11 @@ package com.jsl.oa.dao; import com.google.gson.Gson; import com.jsl.oa.mapper.ProjectMapper; +import com.jsl.oa.mapper.UserMapper; import com.jsl.oa.model.dodata.ProjectChildDO; import com.jsl.oa.model.dodata.ProjectDO; import com.jsl.oa.model.dodata.ProjectModuleDO; +import com.jsl.oa.model.dodata.UserDO; import com.jsl.oa.model.dodata.info.ProjectShowDO; import com.jsl.oa.model.vodata.ProjectInfoVO; import com.jsl.oa.model.vodata.ProjectChildAddVO; @@ -24,6 +26,7 @@ import java.util.Objects; public class ProjectDAO { private final ProjectMapper projectMapper; + private final UserMapper userMapper; private final Gson gson; public void projectAdd(ProjectInfoVO projectAdd) { @@ -205,4 +208,24 @@ public class ProjectDAO { } + public String getPrincipalUserFromProject(Long projectId) { + + if (projectId == null) { + return ""; + } + + ProjectDO projectDO = projectMapper.getProjectById(projectId); + + UserDO userDO = userMapper.getUserById(projectDO.getPrincipalId()); + + if (userDO == null) { + return ""; + } + + if (userDO.getNickname() == null) { + return userDO.getUsername(); + } else { + return userDO.getNickname(); + } + } } diff --git a/src/main/java/com/jsl/oa/model/vodata/ProjectDailyVO.java b/src/main/java/com/jsl/oa/model/vodata/ProjectDailyVO.java index d2a1deb..971cb12 100644 --- a/src/main/java/com/jsl/oa/model/vodata/ProjectDailyVO.java +++ b/src/main/java/com/jsl/oa/model/vodata/ProjectDailyVO.java @@ -17,10 +17,14 @@ public class ProjectDailyVO { private String userName; + private String nickName; + private Long projectId; private String projectName; + private String principalName; + private String content; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") 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 41377ca..ef6f2dc 100644 --- a/src/main/java/com/jsl/oa/services/impl/MessageServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/MessageServiceImpl.java @@ -303,6 +303,7 @@ public class MessageServiceImpl implements MessageService { messageMapper.messageAdd(messageAddVO); } + /** * 添加提醒消息 * 系统/模块到期提醒 diff --git a/src/main/java/com/jsl/oa/services/impl/ProjectDailyServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/ProjectDailyServiceImpl.java index cd1d202..ffa5972 100644 --- a/src/main/java/com/jsl/oa/services/impl/ProjectDailyServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/ProjectDailyServiceImpl.java @@ -8,6 +8,7 @@ import com.jsl.oa.dao.ProjectDailyDAO; import com.jsl.oa.dao.UserDAO; import com.jsl.oa.mapper.ProjectDailyMapper; import com.jsl.oa.model.dodata.ProjectDailyDO; +import com.jsl.oa.model.dodata.UserDO; import com.jsl.oa.model.vodata.ProjectDailyAddVO; import com.jsl.oa.model.vodata.ProjectDailyDataVO; import com.jsl.oa.model.vodata.ProjectDailyUpdateVO; @@ -205,8 +206,20 @@ public class ProjectDailyServiceImpl implements ProjectDailyService { Processing.copyProperties(projectDailyDO, projectDailyVO); // 赋值其他需查询的属性 projectDailyVO.setProjectName( - projectDAO.getProjectById(projectDailyVO.getProjectId()).getName()) - .setUserName(userDAO.getUserById(projectDailyDO.getUserId()).getNickname()); + projectDAO.getProjectById(projectDailyVO.getProjectId()).getName()); + //设置发送者名称,如果为昵称为空则赋值用户账号 + UserDO senderUser = userDAO.getUserById(projectDailyDO.getUserId()); + + if (senderUser == null) { + projectDailyVO.setUserName(""); + projectDailyVO.setNickName(""); + } else { + projectDailyVO.setUserName(senderUser.getUsername()); + projectDailyVO.setNickName(senderUser.getNickname()); + } + + //设置项目负责人名称 + projectDailyVO.setPrincipalName(projectDAO.getPrincipalUserFromProject(projectDailyDO.getProjectId())); //用户是否有权限删除 if (projectDailyDO.getUserId().equals(projectDAO. getProjectById(projectDailyVO.getProjectId()).getPrincipalId())) { 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 58f1cc6..3b4a3a3 100644 --- a/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java @@ -285,6 +285,11 @@ public class ProjectServiceImpl implements ProjectService { List projectChildDOList = projectMapper.getAllChildByProjectId(id); List returnGetVOList = new ArrayList<>(); + + if (projectChildDOList.size() == 0) { + return ResultUtil.success(returnGetVOList); + } + for (ProjectChildDO projectChildDO : projectChildDOList) { ReturnGetVO returnGetVO = new ReturnGetVO(); Processing.copyProperties(projectChildDO, returnGetVO); @@ -308,8 +313,15 @@ public class ProjectServiceImpl implements ProjectService { @Override public BaseResponse projectModuleGetById(Integer id, HttpServletRequest request) { + List projectModuleDOList = projectMapper.getModuleByChildId(id); + List returnGetVOList = new ArrayList<>(); + + if (projectModuleDOList.size() == 0) { + return ResultUtil.success(returnGetVOList); + } + for (ProjectModuleDO projectModuleDO : projectModuleDOList) { ReturnGetVO returnGetVO = new ReturnGetVO(); Processing.copyProperties(projectModuleDO, returnGetVO); diff --git a/src/main/java/com/jsl/oa/utils/ErrorCode.java b/src/main/java/com/jsl/oa/utils/ErrorCode.java index cacb380..2a64d8e 100755 --- a/src/main/java/com/jsl/oa/utils/ErrorCode.java +++ b/src/main/java/com/jsl/oa/utils/ErrorCode.java @@ -58,6 +58,7 @@ public enum ErrorCode { PROJECT_DAILY_NOT_EXIST("ProjectDailyNotExist", 40023, "日志不存在"), NOT_PERMISSION_UPDATE_DAILY("NotPermissionUpdateDaily", 40024, "用户无权限修改日报"), User_NOT_PROJECT_PRINCIPAL("UserNotProjectPrincipal", 40023, "用户非项目负责人"), + PAGE_NUMBER_IS_NULL("PageNumberIsNull", 40024, "分页参数为空"), REVIEW_NOT_EXIST("ReviewNotExit", 40101, "未找到对应审核信息");