From c0c4eff59303d0480a38ab13e67cdca543e4f9bc Mon Sep 17 00:00:00 2001
From: 张天森 <1292933220@qq.com>
Date: 星期四, 14 七月 2022 09:23:59 +0800
Subject: [PATCH] update

---
 springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java |   41 +++++++++++++++++++++++++++++++----------
 1 files changed, 31 insertions(+), 10 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
index 1f41811..79f5134 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
@@ -3458,20 +3458,22 @@
                 }
             }
         }
-        //计算其他用户占比
-        final Boolean flag=(type.equals(ALLSTREET) || type.equals(ALLCOMMUNITY) || type.equals(BYSTREET) || type.equals(BYAREA));
-        if (flag){
-            UserRateAnalysisVO vo=new UserRateAnalysisVO();
-            vo.setName(OTHERUSER);
-            vo.setCount(analysisVO.getAllUser()-countUser(userRateAnalysisVOList));
-            vo.setRate(getRate(analysisVO.getAllUser(), vo.getCount()));
-            userRateAnalysisVOList.add(vo);
+        if (ObjectUtils.isEmpty(range)){
+            //查看累计数据时才计算其他用户的比例
+            final Boolean flag=(type.equals(ALLSTREET) || type.equals(ALLCOMMUNITY) || type.equals(BYSTREET) || type.equals(BYAREA));
+            if (flag){
+                UserRateAnalysisVO vo=new UserRateAnalysisVO();
+                vo.setName(OTHERUSER);
+                vo.setCount(analysisVO.getAllUser()-countUser(userRateAnalysisVOList));
+                vo.setRate(getRate(analysisVO.getAllUser(), vo.getCount()));
+                userRateAnalysisVOList.add(vo);
+            }
         }
+        //计算其他用户占比
         UserRateVO userRate=new UserRateVO();
         userRate.setUserList(userRateAnalysisVOList);
         return R.ok(userRate);
     }
-
 
     @Override
     public R realUser(Integer type, Long streetId, Long areaCode, Integer range) {
@@ -3504,6 +3506,24 @@
             realUserList.add(vo);
         }
         realUserVO.setRealUserList(realUserList);
+        //使用索引迭代避免从列表移除数据后出现空指针异常
+        if (type.equals(BYSTREET) || type.equals(ALLCOMMUNITY)){
+            for (int i = 0; i < realUserList.size() ; i++) {
+                RealUserAnalysisVO realUserAnalysisVO = realUserList.get(i);
+                if (org.apache.commons.lang3.ObjectUtils.isNotEmpty(realUserAnalysisVO)){
+                    if (StringUtils.isNotEmpty(realUserAnalysisVO.getName())){
+                        if (realUserAnalysisVO.getName().equals("请选择社区")){
+                            realUserList.remove(i);
+                        }
+                    }
+                }
+            }
+        }else {
+            //只保留十条
+            if (realUserList.size()>=11){
+                realUserList.remove(10);
+            }
+        }
         return R.ok(realUserVO);
     }
 
@@ -3530,6 +3550,7 @@
         vo.setActiveUserY(activeY);
         return R.ok(vo);
     }
+
 
     @Override
     public R uuPush(String washPhone,String phone,String washName,Integer orderStatus) {
@@ -3562,7 +3583,6 @@
         }
         return R.ok();
     }
-
     @Override
     public R getAreaAndStreet() {
         List<Integer> areaCodeList=areaCodeList();
@@ -3577,6 +3597,7 @@
         return R.ok(areaVOList);
     }
 
+
     /**
      * 获取最近20天数据
      *

--
Gitblit v1.7.1