From 4dffe51987eb2ea083424265bc0756611fc2e9d1 Mon Sep 17 00:00:00 2001 From: Mr-wang Date: Tue, 26 Sep 2023 11:32:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=86=E4=BA=8B=E4=B8=9A=E9=83=A8=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E7=9A=84=E4=BB=A3=E7=A0=81=E4=BF=AE=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E4=B8=80=E7=BA=A7=E9=83=A8=E9=97=A8=E5=8F=AF=E6=9F=A5=E7=9C=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reportform/service/DataViewService.java | 128 +++++++++++------- 1 file changed, 82 insertions(+), 46 deletions(-) diff --git a/com.awspaas.user.apps.yili.reportform/src/com/awspaas/user/apps/yili/reportform/service/DataViewService.java b/com.awspaas.user.apps.yili.reportform/src/com/awspaas/user/apps/yili/reportform/service/DataViewService.java index 0357c3b3..7d223409 100644 --- a/com.awspaas.user.apps.yili.reportform/src/com/awspaas/user/apps/yili/reportform/service/DataViewService.java +++ b/com.awspaas.user.apps.yili.reportform/src/com/awspaas/user/apps/yili/reportform/service/DataViewService.java @@ -34,6 +34,7 @@ import com.alibaba.fastjson.JSONObject; import com.awspaas.user.apps.yili.reportform.util.GetNodesUtil; import com.awspaas.user.apps.yili.reportform.util.TreeUtil; import net.sf.json.JSONArray; +import org.springframework.util.StringUtils; /** * @author:Lizj @@ -1085,71 +1086,104 @@ public class DataViewService extends ActionWeb { nodeRowMaps) { String post = rowMap.getString("POST"); String role = rowMap.getString("ROLE"); - if (role.contains(",")){ - String[] split = role.split(","); - for (String rolw: - split) { - if (depaertName.contains(rolw)){ - new_nodeRowMaps.add(rowMap); - break; + boolean role_flag = false; + boolean post_flag = false; + if (!StringUtils.isEmpty(role)){ + if (role.contains(",")){ + String[] split = role.split(","); + for (String rolw: + split) { + if (depaertName.contains(rolw)){ + new_nodeRowMaps.add(rowMap); + role_flag = true; + break; + } + } + if (role_flag){ + continue; + } + }else { + if (depaertName.contains(role)){ + new_nodeRowMaps.add(rowMap); + continue; } - } - }else { - if (depaertName.contains(role)){ - new_nodeRowMaps.add(rowMap); } } - - if (post.contains(",")){ - String[] split = post.split(","); - for (String rolw: - split) { - if (depaertName.contains(rolw)){ - new_nodeRowMaps.add(rowMap); - break; + if (!StringUtils.isEmpty(post)){ + if (post.contains(",")){ + String[] split = post.split(","); + for (String rolw: + split) { + if (depaertName.contains(rolw)){ + new_nodeRowMaps.add(rowMap); + post_flag = true; + break; + } + } + if (post_flag){ + continue; + } + }else { + if (depaertName.contains(post)){ + new_nodeRowMaps.add(rowMap); + continue; } - } - }else { - if (depaertName.contains(post)){ - new_nodeRowMaps.add(rowMap); } } } + System.out.println("new_nodeRowMaps>>>>>>>>>>>>>>>>>"+new_nodeRowMaps.size()); for (RowMap rowMap: DepartnodeRowMaps) { String post = rowMap.getString("POST"); String role = rowMap.getString("ROLE"); - if (role.contains(",")){ - String[] split = role.split(","); - for (String rolw: - split) { - if (depaertName.contains(rolw)){ - new_DepartnodeRowMaps.add(rowMap); - break; + boolean role_flag = false; + boolean post_flag = false; + if (!StringUtils.isEmpty(role)){ + if (role.contains(",")){ + String[] split = role.split(","); + for (String rolw: + split) { + if (depaertName.contains(rolw)){ + new_DepartnodeRowMaps.add(rowMap); + role_flag = true; + break; + } + } + if (role_flag){ + continue; + } + }else { + if (depaertName.contains(role)){ + new_DepartnodeRowMaps.add(rowMap); + continue; } - } - }else { - if (depaertName.contains(role)){ - new_DepartnodeRowMaps.add(rowMap); } } - - if (post.contains(",")){ - String[] split = post.split(","); - for (String rolw: - split) { - if (depaertName.contains(rolw)){ - new_DepartnodeRowMaps.add(rowMap); - break; + if (!StringUtils.isEmpty(post)){ + if (post.contains(",")){ + String[] split = post.split(","); + for (String rolw: + split) { + if (depaertName.contains(rolw)){ + new_DepartnodeRowMaps.add(rowMap); + post_flag = true; + break; + } + } + if (post_flag){ + continue; + } + }else { + if (depaertName.contains(post)){ + new_DepartnodeRowMaps.add(rowMap); + continue; } - } - }else { - if (depaertName.contains(post)){ - new_DepartnodeRowMaps.add(rowMap); } } } + + nodeRowMaps = new LinkedList<>(); for (RowMap rowMap: new_nodeRowMaps) { @@ -1685,6 +1719,8 @@ public class DataViewService extends ActionWeb { // 正式环境 伊利集团总部id 5c8e2d14-25a8-4baf-aa3a-344064007ef3 if (pathIdOfCache.contains("5c8e2d14-25a8-4baf-aa3a-344064007ef3")) { ucDeptID = GetNodesUtil.getParentDept(ucDeptID, 2); + }else if (_uc.getDepartmentModel().getPathNameOfCache().contains("事业部")){ + ucDeptID = GetNodesUtil.getParentDept(ucDeptID, 2); } deptIDList = new ArrayList(); deptIDList = GetNodesUtil.getChildDept(ucDeptID, deptIDList);