From ffb582c0a1cde517bf628f986ee45b8bb1b12edb Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Tue, 8 Oct 2024 10:17:24 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E7=94=A8=E6=88=B7=E8=BA=AB=E4=BB=BD?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E7=AE=A1=E7=90=86):=20=E6=88=90=E5=91=98?= =?UTF-8?q?=E7=A7=BB=E5=87=BA=E7=BB=84=E7=BB=87/=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=EF=BC=8C=E5=8E=9F=E6=8C=87=E6=B4=BE=E7=BB=99=E8=BF=99=E4=B8=AA?= =?UTF-8?q?=E6=88=90=E5=91=98=E7=9A=84=E5=B7=A5=E4=BD=9C=E9=A1=B9/?= =?UTF-8?q?=E5=85=B6=E4=BB=96=E8=AF=A5=E6=80=8E=E4=B9=88=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 设置Gitlink返回Issue中用户的状态 Signed-off-by: OTTO <731554297@qq.com> --- .../service/PmsProjectIssuesService.java | 57 +++++++++++-------- 1 file changed, 34 insertions(+), 23 deletions(-) diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/project/service/PmsProjectIssuesService.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/project/service/PmsProjectIssuesService.java index 1fbad3887..5695552b9 100644 --- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/project/service/PmsProjectIssuesService.java +++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/project/service/PmsProjectIssuesService.java @@ -68,38 +68,19 @@ public class PmsProjectIssuesService { JSONObject issueSearch = new JSONObject(); convertObjectToJSONObject(pmsProjectIssuesSearchVo, issueSearch, null); try { - return setProjectIssueUserState(gitLinkRequestHelper.doGet(PmsGitLinkRequestUrl.GET_ISSUE_LIST(issueSearch))); + return setProjectIssueListUserState(gitLinkRequestHelper.doGet(PmsGitLinkRequestUrl.GET_ISSUE_LIST(issueSearch))); } catch (URISyntaxException e) { throw new RuntimeException(e); } } - private JSONObject setProjectIssueUserState(JSONObject issueListResult) { + private JSONObject setProjectIssueListUserState(JSONObject issueListResult) { HashMap gitlinkUserNickNameMap = new HashMap<>(); if (issueListResult.containsKey("issues")) { JSONArray issues = issueListResult.getJSONArray("issues"); for (int i = 0; i < issues.size(); i++) { JSONObject issue = issues.getJSONObject(i); - if (issue.containsKey("assigners")) { - JSONArray assigners = issue.getJSONArray("assigners"); - for (int j = 0; j < assigners.size(); j++) { - JSONObject assigner = assigners.getJSONObject(j); - if (assigner.containsKey("id")) { - Long gitlinkUserId = assigner.getLong("id"); - String nickName; - if (gitlinkUserNickNameMap.containsKey(gitlinkUserId)) { - nickName = gitlinkUserNickNameMap.get(gitlinkUserId); - } else { - SimpleSysUser simpleSysUser = pmsCommonService.getSimpleSysUserByGitlinkUserId(gitlinkUserId); - nickName = simpleSysUser.getNickName(); - gitlinkUserNickNameMap.put(gitlinkUserId, nickName); - } - assigner.put("name", nickName); - } - assigners.set(j, assigner); - } - issue.put("assigners", assigners); - } + setIssueAssignersState(issue, gitlinkUserNickNameMap); issues.set(i, issue); } issueListResult.put("issues", issues); @@ -141,7 +122,7 @@ public class PmsProjectIssuesService { public JSONObject selectPmsProjectIssueById(Long id, Long pmProjectId) { PmsProject pmsProject = pmsProjectService.selectAndCheckPmsProjectById(pmProjectId); try { - JSONObject result = gitLinkRequestHelper.doGet(PmsGitLinkRequestUrl.GET_ISSUE(id, pmProjectId)); + JSONObject result = setProjectIssueUserState(gitLinkRequestHelper.doGet(PmsGitLinkRequestUrl.GET_ISSUE(id, pmProjectId))); result.put("pm_project_name", pmsProject.getProjectName()); return result; } catch (URISyntaxException e) { @@ -149,6 +130,36 @@ public class PmsProjectIssuesService { } } + + private JSONObject setProjectIssueUserState(JSONObject issueResult) { + HashMap gitlinkUserNickNameMap = new HashMap<>(); + setIssueAssignersState(issueResult, gitlinkUserNickNameMap); + return issueResult; + } + + private void setIssueAssignersState(JSONObject issueResult, HashMap gitlinkUserNickNameMap) { + if (issueResult.containsKey("assigners")) { + JSONArray assigners = issueResult.getJSONArray("assigners"); + for (int j = 0; j < assigners.size(); j++) { + JSONObject assigner = assigners.getJSONObject(j); + if (assigner.containsKey("id")) { + Long gitlinkUserId = assigner.getLong("id"); + String nickName; + if (gitlinkUserNickNameMap.containsKey(gitlinkUserId)) { + nickName = gitlinkUserNickNameMap.get(gitlinkUserId); + } else { + SimpleSysUser simpleSysUser = pmsCommonService.getSimpleSysUserByGitlinkUserId(gitlinkUserId); + nickName = simpleSysUser.getNickName(); + gitlinkUserNickNameMap.put(gitlinkUserId, nickName); + } + assigner.put("name", nickName); + } + assigners.set(j, assigner); + } + issueResult.put("assigners", assigners); + } + } + public JSONObject deletePmsProjectIssueByIds(Long[] ids, Long pmProjectId) { // 删除缺陷与测试单关联关系 pmsProjectTestsheetIssuesService.deletePmsProjectTestsheetIssuesByIssueIds(ids);