From 33c02ec78e12a1666397d20f3e2395c4390f774a Mon Sep 17 00:00:00 2001 From: dxfeng Date: Fri, 11 Nov 2022 16:34:36 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=84=E7=BB=87=E6=9E=B6=E6=9E=84=E5=9B=BE?= =?UTF-8?q?=E3=80=81=E9=9B=86=E5=9B=A2=E8=B4=9F=E8=B4=A3=E4=BA=BA=E5=B1=95?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/OrgChartServiceImpl.java | 74 ++++++++++++++++--- 1 file changed, 62 insertions(+), 12 deletions(-) diff --git a/src/com/engine/organization/service/impl/OrgChartServiceImpl.java b/src/com/engine/organization/service/impl/OrgChartServiceImpl.java index 248396f2..fb00978d 100644 --- a/src/com/engine/organization/service/impl/OrgChartServiceImpl.java +++ b/src/com/engine/organization/service/impl/OrgChartServiceImpl.java @@ -52,17 +52,17 @@ public class OrgChartServiceImpl extends Service implements OrgChartService { String sql = "select distinct id, fnumber, fname, ftype from jcl_org_map where ftype in (0, 1) order by ftype , id "; rs.executeQuery(sql); - List> companylist = new ArrayList<>(); + Set companySet = new HashSet<>(); while (rs.next()) { - Map item = new HashMap<>(); - item.put("id", rs.getString("id")); - item.put("fnumber", rs.getString("fnumber")); - item.put("fname", rs.getString("fname")); - companylist.add(item); + OrgSelectItem item = new OrgSelectItem(); + item.setId(rs.getString("id")); + item.setFnumber(rs.getString("fnumber")); + item.setFname(rs.getString("fname")); + companySet.add(item); } result.put("api_status", true); result.put("fclasslist", fclasslist); - result.put("companylist", companylist); + result.put("companylist", companySet); return result; } @@ -249,17 +249,23 @@ public class OrgChartServiceImpl extends Service implements OrgChartService { item.put("fname", rs.getString("fname")); item.put("ftype", rs.getString("ftype")); item.put("parentId", null); - item.put("fleadername", rs.getString("fleadername")); - item.put("fleaderimg", rs.getString("fleaderimg")); + if ("0".equals(id)) { + item.put("fleadername", ""); + item.put("fleaderimg", ""); + item.put("fleaderjob", ""); + item.put("fleader", ""); + } else { + item.put("fleadername", rs.getString("fleadername")); + item.put("fleaderimg", rs.getString("fleaderimg")); + item.put("fleaderjob", rs.getString("fleaderjob")); + item.put("fleader", rs.getString("fleader")); + } // 转换岗位 - //item.put("fleaderjob", convertJobNameById(rs.getString("fleaderjobid"))); - item.put("fleaderjob", rs.getString("fleaderjob")); item.put("fplan", StringUtils.isNotEmpty(rs.getString("fplan")) ? rs.getString("fplan") : "0"); item.put("fonjob", StringUtils.isNotEmpty(rs.getString("fonjob")) ? rs.getString("fonjob") : "0"); item.put("hasChildren", hasChildren(rs.getString("id"), false)); item.put("expand", "1"); item.put("fnumber", rs.getString("fnumber")); - item.put("fleader", rs.getString("fleader")); item.put("fobjid", rs.getString("fobjid")); item.put("fleaderlv", convertLevel(rs.getString("fleaderlv"))); item.put("fleaderst", convertGrade(rs.getString("fleaderst"))); @@ -468,4 +474,48 @@ public class OrgChartServiceImpl extends Service implements OrgChartService { }); } + static class OrgSelectItem { + private String id; + private String fnumber; + private String fname; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getFnumber() { + return fnumber; + } + + public void setFnumber(String fnumber) { + this.fnumber = fnumber; + } + + public String getFname() { + return fname; + } + + public void setFname(String fname) { + this.fname = fname; + } + + @Override + public boolean equals(Object obj) { + if (obj instanceof OrgSelectItem) { + OrgSelectItem item = (OrgSelectItem) obj; + return this.getId().equals(item.getId()); + } + return false; + } + + @Override + public int hashCode() { + return Integer.parseInt(this.getId()); + } + } + }