feat(周报功能重构):周报-个人工作项列表
This commit is contained in:
parent
f61b11bc93
commit
0e83fa62ce
|
@ -2,6 +2,7 @@ package com.microservices.pms.project.controller;
|
||||||
|
|
||||||
import com.alibaba.fastjson2.JSONObject;
|
import com.alibaba.fastjson2.JSONObject;
|
||||||
import com.microservices.common.core.web.domain.AjaxResult;
|
import com.microservices.common.core.web.domain.AjaxResult;
|
||||||
|
import com.microservices.pms.project.domain.vo.PmsPersonalWeeklyIssuesSearchVo;
|
||||||
import com.microservices.pms.project.domain.vo.PmsPersonalWeeklyReportSearchVo;
|
import com.microservices.pms.project.domain.vo.PmsPersonalWeeklyReportSearchVo;
|
||||||
import com.microservices.pms.project.domain.vo.PmsProjectIssuesInputVo;
|
import com.microservices.pms.project.domain.vo.PmsProjectIssuesInputVo;
|
||||||
import com.microservices.pms.project.domain.vo.PmsProjectIssuesSearchVo;
|
import com.microservices.pms.project.domain.vo.PmsProjectIssuesSearchVo;
|
||||||
|
@ -54,6 +55,15 @@ public class PmsProjectWeeklyReportController {
|
||||||
return success(result);
|
return success(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("/personalIssueList")
|
||||||
|
@ApiOperation(value = "周报-个人工作项列表")
|
||||||
|
public AjaxResult getPersonalIssueList(@PathVariable String enterpriseIdentifier, PmsPersonalWeeklyIssuesSearchVo pmsPersonalWeeklyIssuesSearchVo)
|
||||||
|
{
|
||||||
|
pmsPersonalWeeklyIssuesSearchVo.setEnterpriseIdentifier(enterpriseIdentifier);
|
||||||
|
JSONObject result = pmsProjectIssuesService.getPersonalIssueList(pmsPersonalWeeklyIssuesSearchVo);
|
||||||
|
return success(result);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询周报-项目组工作项统计
|
* 查询周报-项目组工作项统计
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -0,0 +1,46 @@
|
||||||
|
package com.microservices.pms.project.domain.vo;
|
||||||
|
|
||||||
|
import com.microservices.common.core.utils.ServletUtils;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel("个人周报工作项搜索对象")
|
||||||
|
public class PmsPersonalWeeklyIssuesSearchVo {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "用户gitlink用户id")
|
||||||
|
private Long userId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "企业标识", hidden = true)
|
||||||
|
private String enterpriseIdentifier;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "工作项名称搜索关键词")
|
||||||
|
private String keyword;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "状态值,可多个状态逗号隔开")
|
||||||
|
private String statusIds;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "排序方式: issues.updated_on 更新时间 issues.created_on 创建时间 issue_priorities.position 优先级")
|
||||||
|
private String sortBy;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "排序方向:asc 正序 desc 倒序")
|
||||||
|
private String sortDirection;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "本周工作项页码")
|
||||||
|
private String thisWeekPage;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "分页数")
|
||||||
|
private String thisWeekLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "本周工作项页码")
|
||||||
|
private String nextWeekPage;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "分页数")
|
||||||
|
private String nextWeekLimit;
|
||||||
|
|
||||||
|
public void setKeyword(String keyword) {
|
||||||
|
this.keyword = ServletUtils.urlDecode(keyword);
|
||||||
|
}
|
||||||
|
}
|
|
@ -6,40 +6,12 @@ import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@ApiModel("个人周报工作项搜索对象")
|
@ApiModel("个人周报工作项统计对象")
|
||||||
public class PmsPersonalWeeklyReportSearchVo {
|
public class PmsPersonalWeeklyReportSearchVo {
|
||||||
|
|
||||||
@ApiModelProperty(value = "工作项名称搜索关键词")
|
@ApiModelProperty(value = "用户gitlink用户id", hidden = true)
|
||||||
private String keyword;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "状态值,可多个状态逗号隔开")
|
|
||||||
private String statusIds;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "排序方式: issues.updated_on 更新时间 issues.created_on 创建时间 issue_priorities.position 优先级")
|
|
||||||
private String sortBy;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "排序方向:asc 正序 desc 倒序")
|
|
||||||
private String sortDirection;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "本周工作项页码")
|
|
||||||
private String thisWeekPage;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "分页数")
|
|
||||||
private String thisWeekLimit;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "本周工作项页码")
|
|
||||||
private String nextWeekPage;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "分页数")
|
|
||||||
private String nextWeekLimit;
|
|
||||||
|
|
||||||
@ApiModelProperty(value = "当前用户gitlink用户id", hidden = true)
|
|
||||||
private Long userId;
|
private Long userId;
|
||||||
|
|
||||||
@ApiModelProperty(value = "企业标识", hidden = true)
|
@ApiModelProperty(value = "企业标识", hidden = true)
|
||||||
private String enterpriseIdentifier;
|
private String enterpriseIdentifier;
|
||||||
|
|
||||||
public void setKeyword(String keyword) {
|
|
||||||
this.keyword = ServletUtils.urlDecode(keyword);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -754,7 +754,7 @@ public class PmsProjectIssuesService {
|
||||||
public JSONObject getProjectIssueList(PmsProjectIssuesSearchVo pmsProjectIssuesSearchVo) {
|
public JSONObject getProjectIssueList(PmsProjectIssuesSearchVo pmsProjectIssuesSearchVo) {
|
||||||
List<Long> pmProjectIds = pmsProjectService.selectProjectIdsByAssigneeUserId(
|
List<Long> pmProjectIds = pmsProjectService.selectProjectIdsByAssigneeUserId(
|
||||||
pmsProjectIssuesSearchVo.getEnterpriseIdentifier(),
|
pmsProjectIssuesSearchVo.getEnterpriseIdentifier(),
|
||||||
SecurityUtils.getGitlinkUserId());
|
StringUtils.isEmpty(pmsProjectIssuesSearchVo.getAssignerId()) ? SecurityUtils.getGitlinkUserId() : Long.valueOf(pmsProjectIssuesSearchVo.getAssignerId()));
|
||||||
String pmProjectIdsStr = StringUtils.join(pmProjectIds, ",");
|
String pmProjectIdsStr = StringUtils.join(pmProjectIds, ",");
|
||||||
pmsProjectIssuesSearchVo.setPmProjectIds(pmProjectIdsStr);
|
pmsProjectIssuesSearchVo.setPmProjectIds(pmProjectIdsStr);
|
||||||
JSONObject issueSearch = new JSONObject();
|
JSONObject issueSearch = new JSONObject();
|
||||||
|
@ -765,4 +765,15 @@ public class PmsProjectIssuesService {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JSONObject getPersonalIssueList(PmsPersonalWeeklyIssuesSearchVo pmsPersonalWeeklyIssuesSearchVo) {
|
||||||
|
pmsPersonalWeeklyIssuesSearchVo.setUserId(pmsPersonalWeeklyIssuesSearchVo.getUserId() == null ? SecurityUtils.getGitlinkUserId() : pmsPersonalWeeklyIssuesSearchVo.getUserId());
|
||||||
|
JSONObject issueSearch = new JSONObject();
|
||||||
|
convertObjectToJSONObject(pmsPersonalWeeklyIssuesSearchVo, issueSearch, null);
|
||||||
|
try {
|
||||||
|
return setProjectIssueListUserState(gitLinkRequestHelper.doGet(PmsGitLinkRequestUrl.GET_PERSONAL_ISSUE_LIST(issueSearch)));
|
||||||
|
} catch (URISyntaxException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -463,4 +463,9 @@ public class PmsGitLinkRequestUrl extends GitLinkRequestUrl {
|
||||||
return getGitLinkRequestUrl(
|
return getGitLinkRequestUrl(
|
||||||
buildUri("/api/pm/weekly_issues/group_issues.json", params));
|
buildUri("/api/pm/weekly_issues/group_issues.json", params));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static GitLinkRequestUrl GET_PERSONAL_ISSUE_LIST(JSONObject issueSearch) throws URISyntaxException {
|
||||||
|
return getGitLinkRequestUrl(
|
||||||
|
buildUri("/api/pm/weekly_issues/personal_issues.json", issueSearch));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue