feat(项目管理-项目):项目成员、项目仓库逻辑完善
This commit is contained in:
parent
e5513119b7
commit
cb98c2097a
|
@ -6,6 +6,7 @@ import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
import com.ruoyi.pms.project.domain.vo.PmsProjectInputVo;
|
import com.ruoyi.pms.project.domain.vo.PmsProjectInputVo;
|
||||||
import com.ruoyi.pms.project.domain.vo.PmsProjectSearchVo;
|
import com.ruoyi.pms.project.domain.vo.PmsProjectSearchVo;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
@ -34,6 +35,7 @@ import com.ruoyi.common.core.web.page.TableDataInfo;
|
||||||
*/
|
*/
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/pmsProject")
|
@RequestMapping("/pmsProject")
|
||||||
|
@Api(tags = "项目管理-项目相关接口")
|
||||||
public class PmsProjectController extends BaseController
|
public class PmsProjectController extends BaseController
|
||||||
{
|
{
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
package com.ruoyi.pms.project.controller;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.ruoyi.common.core.web.controller.BaseController;
|
||||||
|
import com.ruoyi.common.core.web.domain.AjaxResult;
|
||||||
|
import com.ruoyi.common.security.annotation.RequiresPermissions;
|
||||||
|
import com.ruoyi.pms.project.domain.vo.PmsProjectIssuesInputVo;
|
||||||
|
import com.ruoyi.pms.project.domain.vo.PmsProjectIssuesSearchVo;
|
||||||
|
import com.ruoyi.pms.project.service.PmsProjectIssuesService;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目工作项Controller
|
||||||
|
*
|
||||||
|
* @author wanjia
|
||||||
|
* @date 2023-10-13
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/pmsProjectIssues")
|
||||||
|
@Api(tags = "项目管理-项目工作项相关接口")
|
||||||
|
public class PmsProjectIssuesController extends BaseController {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private PmsProjectIssuesService pmsProjectIssuesService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目工作项列表
|
||||||
|
*/
|
||||||
|
@RequiresPermissions("pms:pmsProjectIssues:list")
|
||||||
|
@GetMapping("/list")
|
||||||
|
public AjaxResult list(PmsProjectIssuesSearchVo pmsProjectIssuesSearchVo)
|
||||||
|
{
|
||||||
|
|
||||||
|
JSONObject result = pmsProjectIssuesService.selectPmsProjectIssuesList(pmsProjectIssuesSearchVo);
|
||||||
|
return success(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增项目工作项列表
|
||||||
|
*/
|
||||||
|
@RequiresPermissions("pms:pmsProjectIssues:add")
|
||||||
|
@PostMapping("/add")
|
||||||
|
public AjaxResult add(PmsProjectIssuesInputVo pmsProjectIssuesInputVo)
|
||||||
|
{
|
||||||
|
|
||||||
|
JSONObject result = pmsProjectIssuesService.insertPmsProjectIssues(pmsProjectIssuesInputVo);
|
||||||
|
return success(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -1,8 +1,8 @@
|
||||||
package com.ruoyi.pms.project.controller;
|
package com.ruoyi.pms.project.controller;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.io.IOException;
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
@ -30,6 +30,7 @@ import com.ruoyi.common.core.web.page.TableDataInfo;
|
||||||
*/
|
*/
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/pmsProjectMembers")
|
@RequestMapping("/pmsProjectMembers")
|
||||||
|
@Api(tags = "项目管理-项目成员接口")
|
||||||
public class PmsProjectMembersController extends BaseController
|
public class PmsProjectMembersController extends BaseController
|
||||||
{
|
{
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package com.ruoyi.pms.project.controller;
|
package com.ruoyi.pms.project.controller;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.io.IOException;
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
@ -30,6 +30,7 @@ import com.ruoyi.common.core.web.page.TableDataInfo;
|
||||||
*/
|
*/
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/pmsProjectRepository")
|
@RequestMapping("/pmsProjectRepository")
|
||||||
|
@Api(tags = "项目管理-项目仓库接口")
|
||||||
public class PmsProjectRepositoryController extends BaseController
|
public class PmsProjectRepositoryController extends BaseController
|
||||||
{
|
{
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
package com.ruoyi.pms.project.controller;
|
package com.ruoyi.pms.project.controller;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.io.IOException;
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
import com.ruoyi.pms.project.domain.vo.PmsProjectSprintInputVo;
|
import com.ruoyi.pms.project.domain.vo.PmsProjectSprintInputVo;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
@ -32,6 +32,7 @@ import com.ruoyi.common.core.web.page.TableDataInfo;
|
||||||
*/
|
*/
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/pmsProjectSprint")
|
@RequestMapping("/pmsProjectSprint")
|
||||||
|
@Api(tags = "项目管理-项目迭代接口")
|
||||||
public class PmsProjectSprintController extends BaseController
|
public class PmsProjectSprintController extends BaseController
|
||||||
{
|
{
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
|
@ -37,6 +37,8 @@ public class PmsProjectMembers extends BaseEntity
|
||||||
@Excel(name = "预留字段1")
|
@Excel(name = "预留字段1")
|
||||||
private String reservedField1;
|
private String reservedField1;
|
||||||
|
|
||||||
|
private Object projectMemberInfo;
|
||||||
|
|
||||||
public void setId(Long id)
|
public void setId(Long id)
|
||||||
{
|
{
|
||||||
this.id = id;
|
this.id = id;
|
||||||
|
@ -83,6 +85,14 @@ public class PmsProjectMembers extends BaseEntity
|
||||||
return reservedField1;
|
return reservedField1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Object getProjectMemberInfo() {
|
||||||
|
return projectMemberInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setProjectMemberInfo(Object projectMemberInfo) {
|
||||||
|
this.projectMemberInfo = projectMemberInfo;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
|
@ -91,6 +101,7 @@ public class PmsProjectMembers extends BaseEntity
|
||||||
.append("pmsProjectMemberId", getPmsProjectMemberId())
|
.append("pmsProjectMemberId", getPmsProjectMemberId())
|
||||||
.append("createdAt", getCreatedAt())
|
.append("createdAt", getCreatedAt())
|
||||||
.append("reservedField1", getReservedField1())
|
.append("reservedField1", getReservedField1())
|
||||||
|
.append("projectMemberInfo", getProjectMemberInfo())
|
||||||
.toString();
|
.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,6 +54,8 @@ public class PmsProjectRepository extends BaseEntity
|
||||||
@Excel(name = "预留字段2")
|
@Excel(name = "预留字段2")
|
||||||
private String reservedField2;
|
private String reservedField2;
|
||||||
|
|
||||||
|
private Object repositoryDetails;
|
||||||
|
|
||||||
public void setId(Long id)
|
public void setId(Long id)
|
||||||
{
|
{
|
||||||
this.id = id;
|
this.id = id;
|
||||||
|
@ -136,6 +138,14 @@ public class PmsProjectRepository extends BaseEntity
|
||||||
return reservedField2;
|
return reservedField2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Object getRepositoryDetails() {
|
||||||
|
return repositoryDetails;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRepositoryDetails(Object repositoryDetails) {
|
||||||
|
this.repositoryDetails = repositoryDetails;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
|
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
|
||||||
|
@ -149,6 +159,7 @@ public class PmsProjectRepository extends BaseEntity
|
||||||
.append("isDeleted", getIsDeleted())
|
.append("isDeleted", getIsDeleted())
|
||||||
.append("reservedField1", getReservedField1())
|
.append("reservedField1", getReservedField1())
|
||||||
.append("reservedField2", getReservedField2())
|
.append("reservedField2", getReservedField2())
|
||||||
|
.append("repositoryDetails", String.valueOf(getRepositoryDetails()))
|
||||||
.toString();
|
.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
package com.ruoyi.pms.project.domain.vo;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel("项目工作项输入对象")
|
||||||
|
public class PmsProjectIssuesInputVo {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "工作项名称")
|
||||||
|
private String subject;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "负责人id")
|
||||||
|
private Long assigneeId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "优先级")
|
||||||
|
private Integer priorityId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "描述")
|
||||||
|
private String description;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "开始时间")
|
||||||
|
private Date startDate;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "结束时间")
|
||||||
|
private Date dueDate;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "附件ids")
|
||||||
|
private List<Long> attachmentIds;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "标记ids")
|
||||||
|
private List<Long> issueTagIds;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "状态")
|
||||||
|
private Integer statusId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "工作项类型")
|
||||||
|
private Integer issueType;
|
||||||
|
}
|
|
@ -0,0 +1,33 @@
|
||||||
|
package com.ruoyi.pms.project.domain.vo;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel("项目工作项搜索对象")
|
||||||
|
public class PmsProjectIssuesSearchVo {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "状态 0关闭 1开启 2暂停")
|
||||||
|
private String status;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "负责人id")
|
||||||
|
private Long projectAssigneeId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "项目名")
|
||||||
|
private String projectName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "排序方式")
|
||||||
|
private String sortBy;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "排序方向")
|
||||||
|
private String sortDirection;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "页码")
|
||||||
|
private Integer page;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "分页数")
|
||||||
|
private Integer limit;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,29 @@
|
||||||
|
package com.ruoyi.pms.project.service;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.ruoyi.pms.project.domain.vo.PmsProjectIssuesInputVo;
|
||||||
|
import com.ruoyi.pms.project.domain.vo.PmsProjectIssuesSearchVo;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目工作项Service业务层处理
|
||||||
|
*
|
||||||
|
* @author wanjia
|
||||||
|
* @date 2023-10-13
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class PmsProjectIssuesService {
|
||||||
|
|
||||||
|
|
||||||
|
public JSONObject selectPmsProjectIssuesList(PmsProjectIssuesSearchVo pmsProjectIssuesSearchVo) {
|
||||||
|
//todo 调用issue接口
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JSONObject insertPmsProjectIssues(PmsProjectIssuesInputVo pmsProjectIssuesInputVo) {
|
||||||
|
//todo 转换为issue入参
|
||||||
|
JSONObject issueObject = new JSONObject();
|
||||||
|
//todo 调用gitlink创建issue接口
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,6 +1,8 @@
|
||||||
package com.ruoyi.pms.project.service.impl;
|
package com.ruoyi.pms.project.service.impl;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.ruoyi.common.httpClient.util.GitLinkRequestHelper;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import com.ruoyi.pms.project.mapper.PmsProjectMembersMapper;
|
import com.ruoyi.pms.project.mapper.PmsProjectMembersMapper;
|
||||||
|
@ -19,6 +21,9 @@ public class PmsProjectMembersServiceImpl implements IPmsProjectMembersService
|
||||||
@Autowired
|
@Autowired
|
||||||
private PmsProjectMembersMapper pmsProjectMembersMapper;
|
private PmsProjectMembersMapper pmsProjectMembersMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private GitLinkRequestHelper gitLinkRequestHelper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询项目-成员
|
* 查询项目-成员
|
||||||
*
|
*
|
||||||
|
@ -40,7 +45,13 @@ public class PmsProjectMembersServiceImpl implements IPmsProjectMembersService
|
||||||
@Override
|
@Override
|
||||||
public List<PmsProjectMembers> selectPmsProjectMembersList(PmsProjectMembers pmsProjectMembers)
|
public List<PmsProjectMembers> selectPmsProjectMembersList(PmsProjectMembers pmsProjectMembers)
|
||||||
{
|
{
|
||||||
return pmsProjectMembersMapper.selectPmsProjectMembersList(pmsProjectMembers);
|
List<PmsProjectMembers> list = pmsProjectMembersMapper.selectPmsProjectMembersList(pmsProjectMembers);
|
||||||
|
for (PmsProjectMembers projectMember : list) {
|
||||||
|
//todo 调用gitlink查用户数据
|
||||||
|
JSONObject userInfo = gitLinkRequestHelper.doGet();
|
||||||
|
projectMember.setProjectMemberInfo(userInfo);
|
||||||
|
}
|
||||||
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
package com.ruoyi.pms.project.service.impl;
|
package com.ruoyi.pms.project.service.impl;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.ruoyi.common.httpClient.util.GitLinkRequestHelper;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import com.ruoyi.pms.project.mapper.PmsProjectRepositoryMapper;
|
import com.ruoyi.pms.project.mapper.PmsProjectRepositoryMapper;
|
||||||
|
@ -19,6 +22,9 @@ public class PmsProjectRepositoryServiceImpl implements IPmsProjectRepositorySer
|
||||||
@Autowired
|
@Autowired
|
||||||
private PmsProjectRepositoryMapper pmsProjectRepositoryMapper;
|
private PmsProjectRepositoryMapper pmsProjectRepositoryMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private GitLinkRequestHelper gitLinkRequestHelper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询项目-代码库
|
* 查询项目-代码库
|
||||||
*
|
*
|
||||||
|
@ -40,7 +46,13 @@ public class PmsProjectRepositoryServiceImpl implements IPmsProjectRepositorySer
|
||||||
@Override
|
@Override
|
||||||
public List<PmsProjectRepository> selectPmsProjectRepositoryList(PmsProjectRepository pmsProjectRepository)
|
public List<PmsProjectRepository> selectPmsProjectRepositoryList(PmsProjectRepository pmsProjectRepository)
|
||||||
{
|
{
|
||||||
return pmsProjectRepositoryMapper.selectPmsProjectRepositoryList(pmsProjectRepository);
|
List<PmsProjectRepository> list = pmsProjectRepositoryMapper.selectPmsProjectRepositoryList(pmsProjectRepository);
|
||||||
|
for (PmsProjectRepository pmsProjectRepo : list) {
|
||||||
|
//todo 调用gitlink查代码库数据
|
||||||
|
JSONObject repo = gitLinkRequestHelper.doGet();
|
||||||
|
pmsProjectRepo.setRepositoryDetails(repo);
|
||||||
|
}
|
||||||
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue