From e16c68732b54bffc0b8fe3414882dc8c540dc2fa Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Thu, 24 Mar 2022 12:11:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=A5=E4=BA=8B=E4=BA=BA=E5=A4=A7=E4=BB=A3?= =?UTF-8?q?=E8=A1=A8=E5=92=8C=E6=8A=A5=E7=BB=99=E7=BB=84=E7=BB=87=EF=BC=8C?= =?UTF-8?q?pids=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ResiEventServiceImpl.java | 26 ++++++++++++++++--- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java index fa19f94f14..e7d6749e4f 100644 --- a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java +++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java @@ -1,5 +1,6 @@ package com.epmet.service.impl; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.feign.ResultDataResolver; @@ -20,7 +21,6 @@ import org.springframework.stereotype.Service; import java.util.*; import java.util.stream.Collectors; -import java.util.stream.Stream; /** * @author wxz @@ -68,6 +68,12 @@ public class ResiEventServiceImpl implements ResiEventService, ResultDataResolve npcData.stream().forEach(npc -> { if (StringUtils.isBlank(excludeUserId) || !npc.getUserId().equals(excludeUserId)) { OrgInfoResultDTO gridInfo = npcGridInfoMap.get(npc.getGridId()); + String pids; + if (StringUtils.isNotBlank(gridInfo.getPids()) && !NumConstant.ZERO_STR.equals(gridInfo.getPids())) { + pids = gridInfo.getPids().concat(":").concat(gridInfo.getAgencyId()); + } else { + pids = gridInfo.getAgencyId(); + } ResiEventNpcResultDTO resiEventNpcInfo = new ResiEventNpcResultDTO( npc.getUserId(), npc.getGridId(), @@ -75,7 +81,8 @@ public class ResiEventServiceImpl implements ResiEventService, ResultDataResolve npc.getRealName(), npc.getHeadImgUrl(), gridInfo != null ? gridInfo.getAgencyId() : null, - gridInfo != null ? gridInfo.getPids().concat(":").concat(gridInfo.getAgencyId()) : null); + // gridInfo != null ? gridInfo.getPids().concat(":").concat(gridInfo.getAgencyId()) : null + pids); npcResultList.add(resiEventNpcInfo); } } @@ -122,7 +129,13 @@ public class ResiEventServiceImpl implements ResiEventService, ResultDataResolve OrgInfoResultDTO currentGridInfo = currentGridInfos.get(0); // 因为上游接口的值对应问题,这里只好做一个适配,拼接起来,希望上游代码不要再改了... - String pids = currentGridInfo.getPids().concat(":").concat(currentGridInfo.getAgencyId()); + // String pids = currentGridInfo.getPids().concat(":").concat(currentGridInfo.getAgencyId()); + String pids; + if (StringUtils.isNotBlank(currentGridInfo.getPids()) && !NumConstant.ZERO_STR.equals(currentGridInfo.getPids())) { + pids = currentGridInfo.getPids().concat(":").concat(currentGridInfo.getAgencyId()); + } else { + pids = currentGridInfo.getAgencyId(); + } // 父ID列表的index排序字段是从0开始,网格要排在他们前面,则网格的index为-1 targetLevels.add(new ResiEventTargetLevelResultDTO(OrgLevelEnums.GRID.getLevel(), OrgLevelEnums.GRID.getLevelName(), currentGridInfo.getOrgId(), currentGridInfo.getAgencyId(), pids, -1)); @@ -135,7 +148,12 @@ public class ResiEventServiceImpl implements ResiEventService, ResultDataResolve throw new RenException(String.format("根据级别%s没有找到对应的组织级别枚举", porg.getLevel())); } //parentOrgIds.indexOf(porg.getOrgId()为当前orgId在pids中的位置,得到之后,赋值给index字段,treeset会利用这个字段进行排序 - ResiEventTargetLevelResultDTO pLevel = new ResiEventTargetLevelResultDTO(porg.getLevel(), levelName, porg.getOrgId(), porg.getPid(), porg.getPids(), parentOrgIds.indexOf(porg.getOrgId())); + ResiEventTargetLevelResultDTO pLevel = new ResiEventTargetLevelResultDTO(porg.getLevel(), + levelName, + porg.getOrgId(), + porg.getPid(), + porg.getPids(), + parentOrgIds.indexOf(porg.getOrgId())); targetLevels.add(pLevel); });