From da8cca4d320908b672f439369e65e9e6a95374e3 Mon Sep 17 00:00:00 2001
From: 101captain <237651143@qq.com>
Date: 星期一, 07 三月 2022 09:46:01 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/partyBuilding_lyq' into hemenkou_dev

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/BigScreenStatisticsServiceImpl.java |  388 +++++++++++++++++++++++++++---------------------------
 1 files changed, 194 insertions(+), 194 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/BigScreenStatisticsServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/BigScreenStatisticsServiceImpl.java
index 841ef39..becd68d 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/BigScreenStatisticsServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/BigScreenStatisticsServiceImpl.java
@@ -20,16 +20,40 @@
 import com.panzhihua.service_community.dao.*;
 import org.springframework.stereotype.Service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.panzhihua.common.model.dtos.PageBaseDTO;
 import com.panzhihua.common.model.dtos.community.convenient.PagePopularMerchantDTO;
 import com.panzhihua.common.model.vos.R;
 import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO;
 import com.panzhihua.common.model.vos.community.StatisticsCommVO;
+import com.panzhihua.common.model.vos.community.bigscreen.BigScreenCommunityStatisticsVO;
+import com.panzhihua.common.model.vos.community.bigscreen.BigScreenDynStatisticsInfo;
+import com.panzhihua.common.model.vos.community.bigscreen.BigScreenEasyPhotoStatisticsInfo;
+import com.panzhihua.common.model.vos.community.bigscreen.BigScreenMerchantStatisticsInfo;
+import com.panzhihua.common.model.vos.community.bigscreen.BigScreenMicroWishStatisticsInfo;
+import com.panzhihua.common.model.vos.community.bigscreen.BigScreenNeighborStatisticsInfo;
+import com.panzhihua.common.model.vos.community.bigscreen.BigScreenQuestionnaireStatisticsInfo;
+import com.panzhihua.common.model.vos.community.bigscreen.BigScreenResidentActStatisticsInfo;
+import com.panzhihua.common.model.vos.community.bigscreen.BigScreenVolunteerActStatisticsInfo;
+import com.panzhihua.common.model.vos.community.bigscreen.GridsGovernanceStatisticsVO;
+import com.panzhihua.common.model.vos.community.bigscreen.ResidentAutonomyStatisticsVO;
 import com.panzhihua.common.model.vos.community.convenient.ConvenientMerchantVO;
 import com.panzhihua.common.model.vos.community.screen.civil.CivilVillageStatisticsVO;
 import com.panzhihua.common.model.vos.community.screen.event.EventGridIncidentStatisticsVO;
 import com.panzhihua.common.model.vos.community.screen.event.EventGridStatisticsVO;
+import com.panzhihua.service_community.dao.ComActActivityDAO;
+import com.panzhihua.service_community.dao.ComActCommitteeDao;
+import com.panzhihua.service_community.dao.ComActDiscussDAO;
+import com.panzhihua.service_community.dao.ComActDynDAO;
+import com.panzhihua.service_community.dao.ComActEasyPhotoDAO;
+import com.panzhihua.service_community.dao.ComActMicroWishDAO;
+import com.panzhihua.service_community.dao.ComActNeighborCircleDAO;
+import com.panzhihua.service_community.dao.ComActQuestnaireDAO;
+import com.panzhihua.service_community.dao.ComActWarehouseDonatesDao;
+import com.panzhihua.service_community.dao.ComMngPopulationDAO;
+import com.panzhihua.service_community.dao.ComPropertyDao;
+import com.panzhihua.service_community.dao.ConvenientMerchantDAO;
 import com.panzhihua.service_community.service.BigScreenStatisticsService;
 
 import lombok.extern.slf4j.Slf4j;
@@ -78,6 +102,12 @@
     private ComActDynDAO comActDynDAO;
 
     @Resource
+    private ComActActivityDAO comActActivityDAO;
+
+    @Resource
+    private ComActCommitteeDao comActCommitteeDao;
+
+    @Resource
     private ComActSocialProjectDao comActSocialProjectDao;
 
     @Resource
@@ -86,8 +116,6 @@
     @Resource
     private ComActSocialWorkerDao comActSocialWorkerDao;
 
-    @Resource
-    private ComActActivityDAO comActActivityDAO;
 
     /**
      * 大数据分析平台-居民自治
@@ -100,20 +128,12 @@
         if (isNull(statisticsVO)) {
             statisticsVO = new ResidentAutonomyStatisticsVO();
         }
-        List<ComActEasyPhotoVO> easyPhotoVOList = comActEasyPhotoDAO.selectStatisticsList(communityId);
+        List<StatisticsCommVO> easyPhotoHistogram = comActEasyPhotoDAO.selectStatisticsList(communityId);
         //随手拍总数
         Integer easyPhotoTotalCount = 0;
         //随手拍柱状统计
-        List<StatisticsCommVO> easyPhotoHistogram = new ArrayList<>();
-        if (Objects.nonNull(easyPhotoVOList) && !easyPhotoVOList.isEmpty()) {
-            Map<String, List<ComActEasyPhotoVO>> easyPhotoVOMap = easyPhotoVOList.stream().collect(Collectors.groupingBy(ComActEasyPhotoVO::getClassifyName));
-            for (Map.Entry<String, List<ComActEasyPhotoVO>> entry : easyPhotoVOMap.entrySet()) {
-                StatisticsCommVO commVO = new StatisticsCommVO();
-                commVO.setFiled(entry.getKey());
-                commVO.setNum(entry.getValue().size());
-                easyPhotoHistogram.add(commVO);
-            }
-            easyPhotoTotalCount = easyPhotoVOList.size();
+        if (Objects.nonNull(easyPhotoHistogram) && !easyPhotoHistogram.isEmpty()) {
+            easyPhotoTotalCount = easyPhotoHistogram.stream().map(StatisticsCommVO::getNum).mapToInt(Integer::intValue).sum();
         }
         statisticsVO.setEasyPhotoTotalCount(easyPhotoTotalCount);
         statisticsVO.setEasyPhotoHistogram(easyPhotoHistogram);
@@ -122,7 +142,7 @@
         List<StatisticsCommVO> microWishRealizePercent = comActMicroWishDAO.selectRealizePercent(communityId);
         statisticsVO.setMicroWishRealizePercent(microWishRealizePercent);
         //微心愿图片
-        List<String> microWishImages = comActMicroWishDAO.getPassedAllImages(communityId, pageSize);
+        List<String> microWishImages = comActMicroWishDAO.getPassedAllImages(communityId, 20);
         statisticsVO.setMicroWishImages(microWishImages);
 
         //议事投票类型占比
@@ -136,40 +156,19 @@
         statisticsVO.setVoteTitles(voteTitles);
 
         //邻里圈图片
-        List<String> neighborImages = comActNeighborCircleDAO.getAllImages(communityId, pageSize);
+        List<String> neighborImages = comActNeighborCircleDAO.getAllImages(communityId, 20);
         statisticsVO.setNeighborImages(neighborImages);
         //邻里圈文本内容
         List<String> neighborContents = comActNeighborCircleDAO.getContents(communityId, pageSize);
         statisticsVO.setNeighborContents(neighborContents);
 
         //报事报修新增折线数据
-        Date nowDate = new Date();
         List<StatisticsCommVO> repairAddPolylineData = comPropertyDao.getRepairPolylineDate(communityId);
-        int currentMon = Integer.parseInt(new SimpleDateFormat("MM").format(nowDate));
-        for (int i = 1; i <= currentMon; i++) {
-            String temp;
-            if (i > 9) {
-                temp = "" + i;
-            } else {
-                temp = "0" + i;
-            }
-            boolean isExist = repairAddPolylineData.stream().anyMatch(e -> nonNull(e.getFiled()) &&
-                    e.getFiled().endsWith(temp));
-            if (!isExist) {
-                StatisticsCommVO other = new StatisticsCommVO();
-                other.setFiled(temp);
-                other.setNum(0);
-                repairAddPolylineData.add(other);
-            }
-        }
-        repairAddPolylineData = repairAddPolylineData.stream().filter(e -> nonNull(e.getFiled()))
-                .sorted(Comparator.comparing(e -> e.getFiled())).collect(Collectors.toList());
         statisticsVO.setRepairAddPolylineData(repairAddPolylineData);
         //报事报修累计折线数据
         List<StatisticsCommVO> repairTotalPolylineData = new ArrayList<>();
-        String year = new SimpleDateFormat("yyyy").format(nowDate);
         repairAddPolylineData.forEach(e -> {
-            StatisticsCommVO temp = comPropertyDao.getRepairTotalPolylineDate(communityId, year + e.getFiled());
+            StatisticsCommVO temp = comPropertyDao.getRepairTotalPolylineDate(communityId, e.getFiled());
             temp.setFiled(e.getFiled());
             repairTotalPolylineData.add(temp);
         });
@@ -182,8 +181,23 @@
         List<String> warehouseLoveTransfer = comActWarehouseDonatesDao.getWarehouseLoveTransfer(communityId, pageSize);
         statisticsVO.setWarehouseLoveTransfer(warehouseLoveTransfer);
         //捐赠图片
-        List<String> warehouseImages = comActWarehouseDonatesDao.getWarehouseImages(communityId, pageSize);
+        List<String> warehouseImages = comActWarehouseDonatesDao.getWarehouseImages(communityId, 20);
         statisticsVO.setWarehouseImages(warehouseImages);
+
+        //居民活动柱状统计
+        List<StatisticsCommVO> residentActHistogram = comActActivityDAO.selectResidentActHistogramData(communityId, true);
+        //居民活动新增数据
+        List<StatisticsCommVO> actAddPolylineData = comActActivityDAO.getActAddPolylineData(communityId, true);
+        //居民活动发布总数
+        int residentActTotalCount = 0;
+        if (!residentActHistogram.isEmpty()) {
+            residentActTotalCount = residentActHistogram.stream().map(StatisticsCommVO::getNum).mapToInt(Integer::intValue).sum();
+        }
+        statisticsVO.setResidentActTotalCount(residentActTotalCount);
+        statisticsVO.setResidentActHistogram(actAddPolylineData);
+        //业主委员会党员占比
+        List<StatisticsCommVO> committeePartyPercent = comActCommitteeDao.selectCommitteePartyPercent(communityId);
+        statisticsVO.setCommitteePartyPercent(committeePartyPercent);
         return R.ok(statisticsVO);
     }
 
@@ -218,37 +232,13 @@
             });
         }
         statisticsVO.setVillageStatisticsList(villageStatisticsList);
-        // 查询社区事件列表
-        List<EventGridIncidentStatisticsVO> gridIncidentList = comMngPopulationDAO.getGridsGovernanceEventList(communityId);
-        statisticsVO.setGridIncidentList(gridIncidentList);
         //事件分析新增折线数据
-        Date nowDate = new Date();
         List<StatisticsCommVO> eventAddPolylineData = comPropertyDao.getEventAddPolylineData(communityId);
-        int currentMon = Integer.parseInt(new SimpleDateFormat("MM").format(nowDate));
-        for (int i = 1; i <= currentMon; i++) {
-            String temp;
-            if (i > 9) {
-                temp = "" + i;
-            } else {
-                temp = "0" + i;
-            }
-            boolean isExist = eventAddPolylineData.stream().anyMatch(e -> nonNull(e.getFiled()) &&
-                    e.getFiled().endsWith(temp));
-            if (!isExist) {
-                StatisticsCommVO other = new StatisticsCommVO();
-                other.setFiled(temp);
-                other.setNum(0);
-                eventAddPolylineData.add(other);
-            }
-        }
-        eventAddPolylineData = eventAddPolylineData.stream().filter(e -> nonNull(e.getFiled()))
-                .sorted(Comparator.comparing(e -> e.getFiled())).collect(Collectors.toList());
         statisticsVO.setEventAddPolylineData(eventAddPolylineData);
         //事件分析累计折线数据
         List<StatisticsCommVO> eventTotalPolylineData = new ArrayList<>();
-        String year = new SimpleDateFormat("yyyy").format(nowDate);
         eventAddPolylineData.forEach(e -> {
-            StatisticsCommVO temp = comPropertyDao.getEventTotalPolylineDate(communityId, year + e.getFiled());
+            StatisticsCommVO temp = comPropertyDao.getEventTotalPolylineDate(communityId, e.getFiled());
             temp.setFiled(e.getFiled());
             eventTotalPolylineData.add(temp);
         });
@@ -314,31 +304,11 @@
         //微心愿新增折线数据
         Date nowDate = new Date();
         List<StatisticsCommVO> microWishAddPolylineData = comActMicroWishDAO.getMicroWishAddPolylineData(communityId);
-        int currentMon = Integer.parseInt(new SimpleDateFormat("MM").format(nowDate));
-        for (int i = 1; i <= currentMon; i++) {
-            String temp;
-            if (i > 9) {
-                temp = "" + i;
-            } else {
-                temp = "0" + i;
-            }
-            boolean isExist = microWishAddPolylineData.stream().anyMatch(e -> nonNull(e.getFiled()) &&
-                    e.getFiled().endsWith(temp));
-            if (!isExist) {
-                StatisticsCommVO other = new StatisticsCommVO();
-                other.setFiled(temp);
-                other.setNum(0);
-                microWishAddPolylineData.add(other);
-            }
-        }
-        microWishAddPolylineData = microWishAddPolylineData.stream().filter(e -> nonNull(e.getFiled()))
-                .sorted(Comparator.comparing(e -> e.getFiled())).collect(Collectors.toList());
         statisticsInfo.setMicroWishAddPolylineData(microWishAddPolylineData);
         //微心愿累计折线数据
         List<StatisticsCommVO> microWishTotalPolylineData = new ArrayList<>();
-        String year = new SimpleDateFormat("yyyy").format(nowDate);
         microWishAddPolylineData.forEach(e -> {
-            StatisticsCommVO temp = comActMicroWishDAO.getMicroWishTotalPolylineDate(communityId, year + e.getFiled());
+            StatisticsCommVO temp = comActMicroWishDAO.getMicroWishTotalPolylineDate(communityId, e.getFiled());
             temp.setFiled(e.getFiled());
             microWishTotalPolylineData.add(temp);
         });
@@ -357,31 +327,11 @@
         //随手拍新增折线数据
         Date nowDate = new Date();
         List<StatisticsCommVO> easyPhotoAddPolylineData = comActEasyPhotoDAO.getEasyPhotoAddPolylineData(communityId);
-        int currentMon = Integer.parseInt(new SimpleDateFormat("MM").format(nowDate));
-        for (int i = 1; i <= currentMon; i++) {
-            String temp;
-            if (i > 9) {
-                temp = "" + i;
-            } else {
-                temp = "0" + i;
-            }
-            boolean isExist = easyPhotoAddPolylineData.stream().anyMatch(e -> nonNull(e.getFiled()) &&
-                    e.getFiled().endsWith(temp));
-            if (!isExist) {
-                StatisticsCommVO other = new StatisticsCommVO();
-                other.setFiled(temp);
-                other.setNum(0);
-                easyPhotoAddPolylineData.add(other);
-            }
-        }
-        easyPhotoAddPolylineData = easyPhotoAddPolylineData.stream().filter(e -> nonNull(e.getFiled()))
-                .sorted(Comparator.comparing(e -> e.getFiled())).collect(Collectors.toList());
         statisticsInfo.setEasyPhotoAddPolylineData(easyPhotoAddPolylineData);
         //随手拍累计折线数据
         List<StatisticsCommVO> easyPhotoTotalPolylineData = new ArrayList<>();
-        String year = new SimpleDateFormat("yyyy").format(nowDate);
         easyPhotoAddPolylineData.forEach(e -> {
-            StatisticsCommVO temp = comActEasyPhotoDAO.getEasyPhotoTotalPolylineDate(communityId, year + e.getFiled());
+            StatisticsCommVO temp = comActEasyPhotoDAO.getEasyPhotoTotalPolylineDate(communityId, e.getFiled());
             temp.setFiled(e.getFiled());
             easyPhotoTotalPolylineData.add(temp);
         });
@@ -408,33 +358,12 @@
     public R indexQuestionnaire(Long communityId) {
         BigScreenQuestionnaireStatisticsInfo statisticsInfo = comActQuestnaireDAO.getIndexQuestionnaireBaseData(communityId);
         //社区问卷新增折线数据
-        Date nowDate = new Date();
         List<StatisticsCommVO> questionnaireAddPolylineData = comActQuestnaireDAO.getQuestionnaireAddPolylineData(communityId);
-        int currentMon = Integer.parseInt(new SimpleDateFormat("MM").format(nowDate));
-        for (int i = 1; i <= currentMon; i++) {
-            String temp;
-            if (i > 9) {
-                temp = "" + i;
-            } else {
-                temp = "0" + i;
-            }
-            boolean isExist = questionnaireAddPolylineData.stream().anyMatch(e -> nonNull(e.getFiled()) &&
-                    e.getFiled().endsWith(temp));
-            if (!isExist) {
-                StatisticsCommVO other = new StatisticsCommVO();
-                other.setFiled(temp);
-                other.setNum(0);
-                questionnaireAddPolylineData.add(other);
-            }
-        }
-        questionnaireAddPolylineData = questionnaireAddPolylineData.stream().filter(e -> nonNull(e.getFiled()))
-                .sorted(Comparator.comparing(e -> e.getFiled())).collect(Collectors.toList());
         statisticsInfo.setQuestionnaireAddPolylineData(questionnaireAddPolylineData);
         //社区问卷累计折线数据
         List<StatisticsCommVO> questionnaireTotalPolylineData = new ArrayList<>();
-        String year = new SimpleDateFormat("yyyy").format(nowDate);
         questionnaireAddPolylineData.forEach(e -> {
-            StatisticsCommVO temp = comActQuestnaireDAO.getQuestionnaireTotalPolylineDate(communityId, year + e.getFiled());
+            StatisticsCommVO temp = comActQuestnaireDAO.getQuestionnaireTotalPolylineDate(communityId, e.getFiled());
             temp.setFiled(e.getFiled());
             questionnaireTotalPolylineData.add(temp);
         });
@@ -456,33 +385,12 @@
             statisticsInfo.setDynNum(dynCircleData.stream().map(StatisticsCommVO::getNum).mapToInt(Integer::intValue).sum());
         }
         //社区动态新增折线数据
-        Date nowDate = new Date();
         List<StatisticsCommVO> dynAddPolylineData = comActDynDAO.getDynAddPolylineData(communityId);
-        int currentMon = Integer.parseInt(new SimpleDateFormat("MM").format(nowDate));
-        for (int i = 1; i <= currentMon; i++) {
-            String temp;
-            if (i > 9) {
-                temp = "" + i;
-            } else {
-                temp = "0" + i;
-            }
-            boolean isExist = dynAddPolylineData.stream().anyMatch(e -> nonNull(e.getFiled()) &&
-                    e.getFiled().endsWith(temp));
-            if (!isExist) {
-                StatisticsCommVO other = new StatisticsCommVO();
-                other.setFiled(temp);
-                other.setNum(0);
-                dynAddPolylineData.add(other);
-            }
-        }
-        dynAddPolylineData = dynAddPolylineData.stream().filter(e -> nonNull(e.getFiled()))
-                .sorted(Comparator.comparing(e -> e.getFiled())).collect(Collectors.toList());
         statisticsInfo.setDynAddPolylineData(dynAddPolylineData);
         //社区动态累计折线数据
         List<StatisticsCommVO> dynTotalPolylineData = new ArrayList<>();
-        String year = new SimpleDateFormat("yyyy").format(nowDate);
         dynAddPolylineData.forEach(e -> {
-            StatisticsCommVO temp = comActDynDAO.getDynTotalPolylineDate(communityId, year + e.getFiled());
+            StatisticsCommVO temp = comActDynDAO.getDynTotalPolylineDate(communityId, e.getFiled());
             temp.setFiled(e.getFiled());
             dynTotalPolylineData.add(temp);
         });
@@ -513,36 +421,15 @@
         statisticsInfo.setNeighborCircleData(neighborCircleData);
         if (!neighborCircleData.isEmpty()) {
             statisticsInfo.setPublishContentNum(neighborCircleData.stream().map(StatisticsCommVO::getNum).mapToInt(Integer::intValue).sum());
-            statisticsInfo.setPublishTopicNum(neighborCircleData.size());
+            statisticsInfo.setPublishTopicNum(neighborCircleData.stream().filter(e -> !"无话题".equals(e.getFiled())).collect(Collectors.toList()).size());
         }
         //邻里圈新增折线数据
-        Date nowDate = new Date();
         List<StatisticsCommVO> neighborAddPolylineData = comActNeighborCircleDAO.getNeighborAddPolylineData(communityId);
-        int currentMon = Integer.parseInt(new SimpleDateFormat("MM").format(nowDate));
-        for (int i = 1; i <= currentMon; i++) {
-            String temp;
-            if (i > 9) {
-                temp = "" + i;
-            } else {
-                temp = "0" + i;
-            }
-            boolean isExist = neighborAddPolylineData.stream().anyMatch(e -> nonNull(e.getFiled()) &&
-                    e.getFiled().endsWith(temp));
-            if (!isExist) {
-                StatisticsCommVO other = new StatisticsCommVO();
-                other.setFiled(temp);
-                other.setNum(0);
-                neighborAddPolylineData.add(other);
-            }
-        }
-        neighborAddPolylineData = neighborAddPolylineData.stream().filter(e -> nonNull(e.getFiled()))
-                .sorted(Comparator.comparing(e -> e.getFiled())).collect(Collectors.toList());
         statisticsInfo.setNeighborAddPolylineData(neighborAddPolylineData);
         //邻里圈累计折线数据
         List<StatisticsCommVO> neighborTotalPolylineData = new ArrayList<>();
-        String year = new SimpleDateFormat("yyyy").format(nowDate);
         neighborAddPolylineData.forEach(e -> {
-            StatisticsCommVO temp = comActNeighborCircleDAO.getNeighborTotalPolylineDate(communityId, year + e.getFiled());
+            StatisticsCommVO temp = comActNeighborCircleDAO.getNeighborTotalPolylineDate(communityId, e.getFiled());
             temp.setFiled(e.getFiled());
             neighborTotalPolylineData.add(temp);
         });
@@ -579,33 +466,12 @@
             statisticsInfo.setServiceTypeNum(serviceTypeCircleData.size());
         }
         //服务次数(目前暂时使用浏览量)新增折线数据
-        Date nowDate = new Date();
         List<StatisticsCommVO> serviceTimesAddPolylineData = convenientMerchantDAO.getServiceTimesAddPolylineData(communityId);
-        int currentMon = Integer.parseInt(new SimpleDateFormat("MM").format(nowDate));
-        for (int i = 1; i <= currentMon; i++) {
-            String temp;
-            if (i > 9) {
-                temp = "" + i;
-            } else {
-                temp = "0" + i;
-            }
-            boolean isExist = serviceTimesAddPolylineData.stream().anyMatch(e -> nonNull(e.getFiled()) &&
-                    e.getFiled().endsWith(temp));
-            if (!isExist) {
-                StatisticsCommVO other = new StatisticsCommVO();
-                other.setFiled(temp);
-                other.setNum(0);
-                serviceTimesAddPolylineData.add(other);
-            }
-        }
-        serviceTimesAddPolylineData = serviceTimesAddPolylineData.stream().filter(e -> nonNull(e.getFiled()))
-                .sorted(Comparator.comparing(e -> e.getFiled())).collect(Collectors.toList());
         statisticsInfo.setServiceTimesAddPolylineData(serviceTimesAddPolylineData);
         //服务次数(目前暂时使用浏览量)累计折线数据
         List<StatisticsCommVO> serviceTimesTotalPolylineData = new ArrayList<>();
-        String year = new SimpleDateFormat("yyyy").format(nowDate);
         serviceTimesAddPolylineData.forEach(e -> {
-            StatisticsCommVO temp = convenientMerchantDAO.getServiceTimesTotalPolylineDate(communityId, year + e.getFiled());
+            StatisticsCommVO temp = convenientMerchantDAO.getServiceTimesTotalPolylineDate(communityId, e.getFiled());
             temp.setFiled(e.getFiled());
             serviceTimesTotalPolylineData.add(temp);
         });
@@ -646,6 +512,140 @@
         return R.ok(comActQuestnaireDAO.selectQuestionnaireDisplayList(page, pageBaseDTO));
     }
 
+    /**
+     * 首页二级页面-居民活动
+     * @param communityId
+     * @return
+     */
+    @Override
+    public R indexResidentAct(Long communityId) {
+        BigScreenResidentActStatisticsInfo statisticsInfo = new BigScreenResidentActStatisticsInfo();
+        List<StatisticsCommVO> actCircleData = comActActivityDAO.getIndexResidentActBaseData(communityId, true);
+        statisticsInfo.setActCircleData(actCircleData);
+        if (!actCircleData.isEmpty()) {
+            statisticsInfo.setJoinNum(actCircleData.stream().map(StatisticsCommVO::getNum).mapToInt(Integer::intValue).sum());
+        }
+        List<StatisticsCommVO> residentActHistogram = comActActivityDAO.selectResidentActHistogramData(communityId, true);
+        //居民活动发布总数
+        int publishNum = 0;
+        if (!residentActHistogram.isEmpty()) {
+            publishNum = residentActHistogram.stream().map(StatisticsCommVO::getNum).mapToInt(Integer::intValue).sum();
+        }
+        statisticsInfo.setPublishNum(publishNum);
+        //居民活动新增折线数据
+        List<StatisticsCommVO> actAddPolylineData = comActActivityDAO.getActAddPolylineData(communityId, true);
+        statisticsInfo.setActAddPolylineData(actAddPolylineData);
+        //居民活动累计折线数据
+        List<StatisticsCommVO> actTotalPolylineData = new ArrayList<>();
+        actAddPolylineData.forEach(e -> {
+            StatisticsCommVO temp = comActActivityDAO.getActTotalPolylineData(communityId, true, e.getFiled());
+            temp.setFiled(e.getFiled());
+            actTotalPolylineData.add(temp);
+        });
+        statisticsInfo.setActTotalPolylineData(actTotalPolylineData);
+        return R.ok(statisticsInfo);
+    }
+
+    /**
+     * 首页二级页面-居民活动展示列表
+     * @param pageBaseDTO
+     * @return
+     */
+    @Override
+    public R indexResidentActList(PageBaseDTO pageBaseDTO) {
+        Page page = retrievePage(pageBaseDTO);
+        return R.ok(comActActivityDAO.indexActList(page, pageBaseDTO, true));
+    }
+
+    /**
+     * 首页二级页面-志愿者活动
+     * @param communityId
+     * @return
+     */
+    @Override
+    public R indexVolunteerAct(Long communityId) {
+        BigScreenVolunteerActStatisticsInfo statisticsInfo = new BigScreenVolunteerActStatisticsInfo();
+        List<StatisticsCommVO> actCircleData = comActActivityDAO.getIndexResidentActBaseData(communityId, false);
+        statisticsInfo.setActCircleData(actCircleData);
+        if (!actCircleData.isEmpty()) {
+            statisticsInfo.setJoinNum(actCircleData.stream().map(StatisticsCommVO::getNum).mapToInt(Integer::intValue).sum());
+        }
+        List<StatisticsCommVO> volunteerActHistogram = comActActivityDAO.selectResidentActHistogramData(communityId, false);
+        //志愿者活动发布总数
+        int publishNum = 0;
+        if (!volunteerActHistogram.isEmpty()) {
+            publishNum = volunteerActHistogram.stream().map(StatisticsCommVO::getNum).mapToInt(Integer::intValue).sum();
+        }
+        statisticsInfo.setPublishNum(publishNum);
+        //志愿者活动新增折线数据
+        List<StatisticsCommVO> actAddPolylineData = comActActivityDAO.getActAddPolylineData(communityId, false);
+        statisticsInfo.setActAddPolylineData(actAddPolylineData);
+        //志愿者活动累计折线数据
+        List<StatisticsCommVO> actTotalPolylineData = new ArrayList<>();
+        actAddPolylineData.forEach(e -> {
+            StatisticsCommVO temp = comActActivityDAO.getActTotalPolylineData(communityId, false, e.getFiled());
+            temp.setFiled(e.getFiled());
+            actTotalPolylineData.add(temp);
+        });
+        statisticsInfo.setActTotalPolylineData(actTotalPolylineData);
+        return R.ok(statisticsInfo);
+    }
+
+    /**
+     * 首页二级页面-志愿者活动展示列表
+     * @param pageBaseDTO
+     * @return
+     */
+    @Override
+    public R indexVolunteerActList(PageBaseDTO pageBaseDTO) {
+        Page page = retrievePage(pageBaseDTO);
+        return R.ok(comActActivityDAO.indexActList(page, pageBaseDTO, false));
+    }
+
+    /**
+     * 清网治格-根据事件分类获取近1月的社区事件数据
+     * @param type
+     * @param communityId
+     * @return
+     */
+    @Override
+    public R getEventList(Integer type, Long communityId) {
+        // 查询社区事件列表
+        List<EventGridIncidentStatisticsVO> gridIncidentList = comMngPopulationDAO.getGridsGovernanceEventList(communityId);
+        List<EventGridIncidentStatisticsVO> returnGridIncidentList = new ArrayList<>();
+        if (!gridIncidentList.isEmpty()) {
+            gridIncidentList.forEach(e -> {
+                if (e.getEventType().equals(2)) {
+                    String[] lngLatString = e.getLatLng().split(",");
+                    e.setLatLng(lngLatString[1] + "," + lngLatString[0]);
+                }
+            });
+            returnGridIncidentList = gridIncidentList.stream().filter(e -> type.equals(e.getType())).collect(Collectors.toList());
+        }
+        return R.ok(returnGridIncidentList);
+    }
+
+    /**
+     * 清网治格-社区事件数据分页
+     * @param pageBaseDTO
+     * @return
+     */
+    @Override
+    public R pageEventList(PageBaseDTO pageBaseDTO) {
+        Page page = retrievePage(pageBaseDTO);
+        IPage<EventGridIncidentStatisticsVO> iPage = comMngPopulationDAO.pageEventList(page, pageBaseDTO);
+        List<EventGridIncidentStatisticsVO> gridIncidentList = iPage.getRecords();
+        if (!gridIncidentList.isEmpty()) {
+            gridIncidentList.forEach(e -> {
+                if (e.getEventType().equals(2)) {
+                    String[] lngLatString = e.getLatLng().split(",");
+                    e.setLatLng(lngLatString[1] + "," + lngLatString[0]);
+                }
+            });
+        }
+        return R.ok(iPage);
+    }
+
     @Override
     public R hmkBaseInfo(CommonPage commonPage) {
         BigScreenHmkBaseInfo bigScreenHmkBaseInfo=comActSocialProjectDao.selectIndexBaseInfo();

--
Gitblit v1.7.1