whyczh
2021-05-15 be195dfc2350babc0dc4eb3ef6f09f474dfb9595
项目接口更新
3个文件已修改
57 ■■■■ 已修改文件
src/main/java/com/whyc/controller/ProjectController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/pojo/Project.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/ProjectService.java 39 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/controller/ProjectController.java
@@ -1,6 +1,7 @@
package com.whyc.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.pagehelper.PageInfo;
import com.whyc.dto.Response;
import com.whyc.pojo.Project;
import com.whyc.service.ProjectService;
@@ -46,7 +47,7 @@
    @PostMapping("search")
    @ApiOperation(value = "查询项目分页-根据筛选条件")
    public Response<IPage<Project>> getPageByCondition(@RequestParam int pageNum, @RequestParam int pageSize, @RequestBody Project project){
    public Response<PageInfo<Project>> getPageByCondition(@RequestParam int pageNum, @RequestParam int pageSize, @RequestBody Project project){
        return service.getPageByCondition(pageNum,pageSize,project);
    }
src/main/java/com/whyc/pojo/Project.java
@@ -1,5 +1,6 @@
package com.whyc.pojo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
@@ -9,6 +10,7 @@
import org.apache.ibatis.type.Alias;
import java.util.Date;
import java.util.List;
/**
 * 项目管理
@@ -24,21 +26,26 @@
    private String name;
    @ApiModelProperty("项目描述")
    private String description;
    @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @ApiModelProperty("项目开始时间")
    private Date startTime;
    @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @ApiModelProperty("计划完成时间")
    private Date endTime;
    @ApiModelProperty("项目负责人")
    private String manager;
    @ApiModelProperty("项目成员")
    private String parter;
    @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("创建时间")
    private Date createTime;
    @ApiModelProperty("项目状态:0-已取消,1-进行中,2-完成,3-延期")
    private Integer status;
    @TableField(exist = false)
    @ApiModelProperty("负责人信息")
    private List<String> managerInfo;
    @TableField(exist = false)
    @ApiModelProperty("参与人信息")
    private List<String> parterInfo;
}
src/main/java/com/whyc/service/ProjectService.java
@@ -2,16 +2,22 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.whyc.dto.ProjectStatusCountDTO;
import com.whyc.dto.Response;
import com.whyc.mapper.ProjectMapper;
import com.whyc.mapper.UserMapper;
import com.whyc.pojo.Project;
import com.whyc.pojo.User;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -24,7 +30,8 @@
    @Resource
    private ProjectMapper mapper;
    @Resource
    private UserMapper userMapper;
    public Response addProject(Project project){
@@ -63,10 +70,34 @@
    }
    public Response<IPage<Project>> getPageByCondition(int pageNum,int pageSize,Project project){
    public Response<PageInfo<Project>> getPageByCondition(int pageNum,int pageSize,Project project){
        PageHelper.startPage(pageNum,pageSize);
        QueryWrapper<Project> queryWrapper = new QueryWrapper<>(project);
        IPage<Project> page = mapper.selectPage(new Page<>(pageNum,pageSize),queryWrapper);
        return new Response<IPage<Project>>().set(1, page);
        List<Project> list = mapper.selectList(queryWrapper);
        for (Project p:list) {
            String managers = p.getManager();
            if (StringUtils.isNotEmpty(managers)){
                String[] strings = managers.split(",");
                List<String> managerUser = new ArrayList<>();
                for (int i = 0; i < strings.length; i++) {
                    User user = userMapper.selectById(strings[i]);
                    managerUser.add(user.getRealName());
                }
                p.setManagerInfo(managerUser);
            }
            String parters = p.getParter();
            if (StringUtils.isNotEmpty(parters)){
                String[] strings1 = parters.split(",");
                List<String> parterUser = new ArrayList<>();
                for (int i = 0; i < strings1.length; i++) {
                    User user = userMapper.selectById(strings1[i]);
                    parterUser.add(user.getRealName());
                }
                p.setParterInfo(parterUser);
            }
        }
        PageInfo<Project> pageInfo = new PageInfo<>(list);
        return new Response<PageInfo<Project>>().set(1, pageInfo);
    }
    public Response updateProject(Project project){