From 13220a306b4e34552b9759384e1c5b88fec529a3 Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 6 Aug 2021 15:47:37 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=8D=95=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E7=BB=84=E7=BB=87=E6=A0=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../screen/impl/AgencyServiceImpl.java | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java index 95bb28a38e..7b4516ab77 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java @@ -477,7 +477,6 @@ public class AgencyServiceImpl implements AgencyService { @Override public OrgTreeNode getStaffAgencyTree(OrgTreeFormDTO formDTO) { - //todo 获取客户的所有组织 然后遍历剔除 再构建出一颗树 咋样 //获取工作人员信息 CustomerStaffFormDTO staffParam = new CustomerStaffFormDTO(); staffParam.setMobile(formDTO.getMobile()); @@ -500,13 +499,30 @@ public class AgencyServiceImpl implements AgencyService { throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode()); } List nodes = new ArrayList<>(); + ScreenCustomerAgencyDTO parentAgencyDTO = null; + + List nodeList = new ArrayList<>(); //单客户 if (CollectionUtils.isEmpty(crmRes.getData())){ + String parentId = staffAgencyDTO.getPid(); //todo 暂不处理 有时间再说 + do { + parentAgencyDTO = screenCustomerAgencyDao.selectByAgencyId(parentId); + if (parentAgencyDTO == null){ + break; + } + convertOrgTreeNode(nodeList, parentAgencyDTO); + if (parentAgencyDTO.getPid() == null || NumConstant.ZERO_STR.equals(parentAgencyDTO.getPid())){ + break; + } + parentId = parentAgencyDTO.getAreaCode(); + } while (true); + //多客户 获取所有下级 + List agencyNodeDTOS = screenCustomerAgencyDao.selectAllSubAgencyList(staffAgencyDTO.getPids(),null); + agencyNodeDTOS.forEach(agency->convertOrgTreeNode(nodeList, agency)); + nodes = TreeUtils.buildTreeByAreaCode(nodeList); }else { - ScreenCustomerAgencyDTO parentAgencyDTO = null; String parentAreaCode = staffAgencyDTO.getParentAreaCode(); - List nodeList = new ArrayList<>(); /*ScreenCustomerAgencyDTO currentAgency = new ScreenCustomerAgencyDTO(); currentAgency.setCustomerId(staffAgencyDTO.getCustomerId());