diff --git a/src/main/java/com/jsl/oa/dao/ProjectDAO.java b/src/main/java/com/jsl/oa/dao/ProjectDAO.java index 683e55a..1636c63 100644 --- a/src/main/java/com/jsl/oa/dao/ProjectDAO.java +++ b/src/main/java/com/jsl/oa/dao/ProjectDAO.java @@ -46,6 +46,7 @@ public class ProjectDAO { log.info("\t\t> 从 MySQL 更新数据"); ProjectDO projectDO = new ProjectDO(); Processing.copyProperties(projectEdit,projectDO); + projectDO.setId(projectId); projectMapper.projectEdit(projectDO); log.info("\t\t> 从 MySQL 获取数据"); return projectMapper.getProjectById(projectId); diff --git a/src/main/java/com/jsl/oa/mapper/ProjectMapper.java b/src/main/java/com/jsl/oa/mapper/ProjectMapper.java index ff59dad..6dc034a 100644 --- a/src/main/java/com/jsl/oa/mapper/ProjectMapper.java +++ b/src/main/java/com/jsl/oa/mapper/ProjectMapper.java @@ -5,6 +5,7 @@ import com.jsl.oa.model.doData.ProjectDO; import com.jsl.oa.model.doData.ProjectUserDO; import com.jsl.oa.model.doData.ProjectWorkDO; import com.jsl.oa.model.voData.ProjectInfoVO; +import com.jsl.oa.model.voData.ProjectWorkSimpleVO; import com.jsl.oa.model.voData.ProjectWorkVO; import org.apache.ibatis.annotations.*; @@ -109,7 +110,10 @@ public interface ProjectMapper { List tgetBytags(List tags,List isFinish); @Select("select * from organize_oa.oa_project_work where id=#{id}") - ProjectWorkDO getWorkById(Integer id); + ProjectWorkSimpleVO getWorkById(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}") + Long getPid(Integer id); } 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 5afd26f..3d79817 100755 --- a/src/main/java/com/jsl/oa/model/doData/ProjectDO.java +++ b/src/main/java/com/jsl/oa/model/doData/ProjectDO.java @@ -30,7 +30,7 @@ public class ProjectDO { private Integer isDelete; private Integer isFinish; private Long workLoad; - private boolean status; + private Integer status; @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC") private Timestamp beginTime; diff --git a/src/main/java/com/jsl/oa/model/voData/ProjectEditVO.java b/src/main/java/com/jsl/oa/model/voData/ProjectEditVO.java index f377e2f..1328fd5 100644 --- a/src/main/java/com/jsl/oa/model/voData/ProjectEditVO.java +++ b/src/main/java/com/jsl/oa/model/voData/ProjectEditVO.java @@ -19,7 +19,8 @@ public class ProjectEditVO { private String file; private String description; private Integer isFinish; - private boolean status; + private Integer status; + private Long workLoad; private Timestamp beginTime; private Timestamp completeTime; private Timestamp deadline; diff --git a/src/main/java/com/jsl/oa/model/voData/ProjectWorkSimpleVO.java b/src/main/java/com/jsl/oa/model/voData/ProjectWorkSimpleVO.java new file mode 100644 index 0000000..4140d6c --- /dev/null +++ b/src/main/java/com/jsl/oa/model/voData/ProjectWorkSimpleVO.java @@ -0,0 +1,24 @@ +package com.jsl.oa.model.voData; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.Data; +import lombok.experimental.Accessors; + +import java.sql.Timestamp; + +@Data +@Accessors(chain = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public class ProjectWorkSimpleVO { + private String name; + private String principalUser; + private Integer isFinish; + private String description; + private Long cycle; + private Long workLoad; + private Long id; + private String tags; + private Integer status; + private Timestamp beginTime; + private Timestamp completeTime; +} 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 104bc7d..88b12be 100644 --- a/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java @@ -168,8 +168,24 @@ public class ProjectServiceImpl implements ProjectService { @Override public BaseResponse getWorkById(Integer id) { - ProjectWorkDO projectWorkDO = projectMapper.getWorkById(id); - return ResultUtil.success(projectWorkDO); + ProjectWorkSimpleVO projectWorkSimpleVO = projectMapper.getWorkById(id); + + projectWorkSimpleVO.setPrincipalUser(userDAO.getUserById(projectMapper.getPid(id)).getUsername()); + // 解析JSON字符串 + JsonNode rootNode = null; + try { + rootNode = objectMapper.readTree(projectWorkSimpleVO.getDescription()); + // 访问特定的key + JsonNode targetNode = rootNode.get("description"); + if(targetNode != null && !rootNode.isNull()){ + projectWorkSimpleVO.setDescription(targetNode.asText()); + }else{ + projectWorkSimpleVO.setDescription("null"); + } + } catch (JsonProcessingException ignored) { + + } + return ResultUtil.success(projectWorkSimpleVO); } @Override diff --git a/src/main/resources/com/jsl/oa/mapper/ProjectMapper.xml b/src/main/resources/com/jsl/oa/mapper/ProjectMapper.xml index 72c50cf..6167a98 100644 --- a/src/main/resources/com/jsl/oa/mapper/ProjectMapper.xml +++ b/src/main/resources/com/jsl/oa/mapper/ProjectMapper.xml @@ -113,7 +113,7 @@ (principal_id = #{userId} and is_delete=false) or - id in(select project_id from organize_oa.oa_project_work where is_delete=false and status =1 and principal_id=#{userId}) + id in(select project_id from organize_oa.oa_project_work where is_delete=false and principal_id=#{userId})