diff --git a/src/main/java/com/jsl/oa/dao/ProjectDAO.java b/src/main/java/com/jsl/oa/dao/ProjectDAO.java index 1e7491e..7de194f 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,20 @@ public class ProjectDAO { } + public String getPrincipalUserFromProject(Long projectId) { + + if (projectId == null) { + return ""; + } + + ProjectDO projectDO = new ProjectDO(); + + UserDO userDO = userMapper.getUserById(projectDO.getPrincipalId()); + + 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..ee16abb 100644 --- a/src/main/java/com/jsl/oa/model/vodata/ProjectDailyVO.java +++ b/src/main/java/com/jsl/oa/model/vodata/ProjectDailyVO.java @@ -21,6 +21,8 @@ public class ProjectDailyVO { 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/ProjectDailyServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/ProjectDailyServiceImpl.java index cd1d202..86ec3f8 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,16 @@ 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.getNickname() == null) { + projectDailyVO.setUserName(senderUser.getUsername()); + } else { + projectDailyVO.setUserName(senderUser.getNickname()); + } + //设置项目负责人名称 + projectDailyVO.setPrincipalName(projectDAO.getPrincipalUserFromProject(projectDailyDO.getProjectId())); //用户是否有权限删除 if (projectDailyDO.getUserId().equals(projectDAO. getProjectById(projectDailyVO.getProjectId()).getPrincipalId())) {