From c83cf9d2d82a0a29a15e38f4566eb470b9a3517b Mon Sep 17 00:00:00 2001
From: 101captain <237651143@qq.com>
Date: 星期二, 22 二月 2022 09:57:51 +0800
Subject: [PATCH] 抽奖相关提交

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java |  462 +++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 345 insertions(+), 117 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
index 73d25e9..acbd97b 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
@@ -9,6 +9,11 @@
 
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.segments.MergeSegments;
+import com.panzhihua.common.model.vos.community.bigscreen.WestScreenStatics;
+import com.panzhihua.common.model.vos.community.screen.civil.*;
+import com.panzhihua.common.model.vos.community.bigscreen.*;
+import com.panzhihua.common.utlis.*;
+import com.panzhihua.service_community.util.WxDataUtil;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
@@ -54,10 +59,6 @@
 import com.panzhihua.common.model.vos.screen.ComActPopulationScreenVO;
 import com.panzhihua.common.model.vos.screen.ComMngPopulationAgeVO;
 import com.panzhihua.common.model.vos.user.*;
-import com.panzhihua.common.utlis.AgeUtils;
-import com.panzhihua.common.utlis.DateUtils;
-import com.panzhihua.common.utlis.Snowflake;
-import com.panzhihua.common.utlis.StringUtils;
 import com.panzhihua.service_community.dao.*;
 import com.panzhihua.service_community.model.dos.*;
 import com.panzhihua.service_community.service.*;
@@ -65,6 +66,8 @@
 import cn.hutool.core.util.IdcardUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.web.bind.annotation.RequestParam;
+
+import static java.util.Objects.nonNull;
 
 /**
  * 实有人口Service实现类
@@ -130,8 +133,12 @@
     private ComEldersAuthStatisticsMapper comEldersAuthStatisticsMapper;
     @Resource
     private ComPensionAuthStatisticsDAO comPensionAuthStatisticsDAO;
+    @Resource
+    private ComActReserveMapper comActReserveMapper;
     @Value("${domain.aesKey:}")
     private String aesKey;
+    @Resource
+    private ComActEasyPhotoDAO comActEasyPhotoDAO;
 
     /**
      * 新增实有人口
@@ -472,25 +479,27 @@
                         break;
                     case 2:
                         comMngPopulationVO.setRoad(houseDO.getAlley());
-                        comMngPopulationVO.setDoorNo(houseDO.getHouseNum());
+//                        comMngPopulationVO.setDoorNo(houseDO.getHouseNum());
                         break;
                     case 3:
                         comMngPopulationVO.setRoad(houseDO.getAlley());
                         comMngPopulationVO.setDoorNo(houseDO.getHouseNum());
-                        comMngPopulationVO.setFloor(houseDO.getFloor());
+//                        comMngPopulationVO.setFloor(houseDO.getFloor());
                         break;
                     case 4:
                         comMngPopulationVO.setRoad(houseDO.getAlley());
                         comMngPopulationVO.setDoorNo(houseDO.getHouseNum());
                         comMngPopulationVO.setFloor(houseDO.getFloor());
-                        comMngPopulationVO.setUnitNo(houseDO.getUnitNo());
+//                        comMngPopulationVO.setUnitNo(houseDO.getUnitNo());
                         break;
                     case 5:
                         comMngPopulationVO.setRoad(houseDO.getAlley());
                         comMngPopulationVO.setDoorNo(houseDO.getHouseNum());
                         comMngPopulationVO.setFloor(houseDO.getFloor());
                         comMngPopulationVO.setUnitNo(houseDO.getUnitNo());
-                        comMngPopulationVO.setHouseNo(houseDO.getHouseNo());
+                        if(comMngPopulationVO.getLevelIsAll() == null){
+                            comMngPopulationVO.setHouseNo(houseDO.getHouseNo());
+                        }
                         break;
                     default:
                         break;
@@ -4885,15 +4894,6 @@
         ComElderAuthElderliesDO comElderAuthElderliesDO =
                 comElderAuthElderliesDAO.selectOne(new QueryWrapper<ComElderAuthElderliesDO>().lambda()
                         .eq(ComElderAuthElderliesDO::getPopulationId, populationDO.getId()).eq(ComElderAuthElderliesDO::getCommunityId, communityId));
-        // List<String> userTag = vo.getUserTagStr().stream().map(userTagStr ->
-        // userTagStr.split("\\(")[0]).collect(Collectors.toList());
-        // //如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
-        // Iterator<String> iterator = userTag.iterator();
-        // while (iterator.hasNext()) {
-        // String s = iterator.next();
-        // if (!labelList.contains(s))
-        // iterator.remove();
-        // }
         String cardNoAES = populationDO.getCardNo();
         try {
             cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
@@ -4918,19 +4918,6 @@
                     comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.above100);
                 }
             }
-//            if (!comElderAuthElderliesDO.getIsAlive().equals(1) || !comElderAuthElderliesDO.getIsRegister().equals(1)) {
-//                if (vo.getIsRegister().equals(1) && vo.getIsAlive().equals(1)) {
-//                    Date nowDate = new Date();
-//                    // 获取当前年
-//                    int year = DateUtils.getYear(nowDate);
-//                    // 获取当前月
-//                    int month = DateUtils.getMonth(nowDate) + 1;
-//                    ComEldersAuthStatisticsDO comEldersAuthStatisticsDO = comEldersAuthStatisticsMapper.selectOne(new QueryWrapper<ComEldersAuthStatisticsDO>()
-//                            .lambda().eq(ComEldersAuthStatisticsDO::getCommunityId, communityId).eq(ComEldersAuthStatisticsDO::getYear, year).eq(ComEldersAuthStatisticsDO::getMonth, month));
-//                    comEldersAuthStatisticsDO.setSum(comEldersAuthStatisticsDO.getSum() + 1);
-//                    comEldersAuthStatisticsMapper.updateById(comEldersAuthStatisticsDO);
-//                }
-//            }
             comElderAuthElderliesDAO.updateById(comElderAuthElderliesDO);
         } else {
             comElderAuthElderliesDO = new ComElderAuthElderliesDO();
@@ -4951,19 +4938,11 @@
                     comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.above100);
                 }
             }
-//            if (vo.getIsRegister().equals(1) && vo.getIsAlive().equals(1)) {
-//                Date nowDate = new Date();
-//                // 获取当前年
-//                int year = DateUtils.getYear(nowDate);
-//                // 获取当前月
-//                int month = DateUtils.getMonth(nowDate) + 1;
-//                ComEldersAuthStatisticsDO comEldersAuthStatisticsDO = comEldersAuthStatisticsMapper.selectOne(new QueryWrapper<ComEldersAuthStatisticsDO>()
-//                        .lambda().eq(ComEldersAuthStatisticsDO::getCommunityId, communityId).eq(ComEldersAuthStatisticsDO::getYear, year).eq(ComEldersAuthStatisticsDO::getMonth, month));
-//                comEldersAuthStatisticsDO.setSum(comEldersAuthStatisticsDO.getSum() + 1);
-//                comEldersAuthStatisticsMapper.updateById(comEldersAuthStatisticsDO);
-//            }
             comElderAuthElderliesDAO.insert(comElderAuthElderliesDO);
         }
+
+        //维护养老认证健在状态
+        comPensionAuthPensionerDAO.editPensionIsAlive(populationDO.getId(),vo.getIsAlive());
         return populationDO;
     }
 
@@ -4974,15 +4953,6 @@
                 comPensionAuthPensionerDAO.selectOne(new QueryWrapper<ComPensionAuthPensionerDO>().lambda()
                         .eq(ComPensionAuthPensionerDO::getPopulationId, populationDO.getId())
                         .eq(ComPensionAuthPensionerDO::getCommunityId, communityId));
-        // List<String> userTag = vo.getUserTagStr().stream().map(userTagStr ->
-        // userTagStr.split("\\(")[0]).collect(Collectors.toList());
-        // //如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
-        // Iterator<String> iterator = userTag.iterator();
-        // while (iterator.hasNext()) {
-        // String s = iterator.next();
-        // if (!labelList.contains(s))
-        // iterator.remove();
-        // }
         String cardNoAES = populationDO.getCardNo();
         try {
             cardNoAES = AESUtil.encrypt128(vo.getCardNo(), aesKey);
@@ -4997,23 +4967,6 @@
             BeanUtils.copyProperties(vo, comPensionAuthPensionerDO);
             comPensionAuthPensionerDO.setIdCard(cardNoAES);
             comPensionAuthPensionerDO.setAddress(vo.getNowAddress());
-//            if (!comPensionAuthPensionerDO.getIsAlive().equals(1) || !comPensionAuthPensionerDO.getIsRegister().equals(1)) {
-//                if (vo.getIsRegister().equals(1) && vo.getIsAlive().equals(1)) {
-//                    Date nowDate = new Date();
-//                    // 获取当前年
-//                    int year = (DateUtils.getYear(nowDate));
-//                    ComPensionAuthStatisticsDO comPensionAuthStatisticsDO = comPensionAuthStatisticsDAO.selectOne(new QueryWrapper<ComPensionAuthStatisticsDO>()
-//                            .lambda().eq(ComPensionAuthStatisticsDO::getCommunityId, communityId)
-//                            .eq(ComPensionAuthStatisticsDO::getYear, year));
-//                    if(null == comPensionAuthStatisticsDO){
-//                        comPensionAuthStatisticsDO = comPensionAuthStatisticsDAO.selectOne(new QueryWrapper<ComPensionAuthStatisticsDO>()
-//                                .lambda().eq(ComPensionAuthStatisticsDO::getCommunityId, communityId)
-//                                .eq(ComPensionAuthStatisticsDO::getYear, year - 1));
-//                    }
-//                    comPensionAuthStatisticsDO.setSum(comPensionAuthStatisticsDO.getSum() + 1);
-//                    comPensionAuthStatisticsDAO.updateById(comPensionAuthStatisticsDO);
-//                }
-//            }
             comPensionAuthPensionerDAO.updateById(comPensionAuthPensionerDO);
         } else {
             comPensionAuthPensionerDO = new ComPensionAuthPensionerDO();
@@ -5025,17 +4978,9 @@
             comPensionAuthPensionerDO.setIdCard(vo.getCardNo());
             comPensionAuthPensionerDO.setAddress(vo.getNowAddress());
             comPensionAuthPensionerDAO.insert(comPensionAuthPensionerDO);
-//            if (vo.getIsRegister().equals(1) && vo.getIsAlive().equals(1)) {
-//                Date nowDate = new Date();
-//                // 获取当前年
-//                int year = (DateUtils.getYear(nowDate));
-//                ComPensionAuthStatisticsDO comPensionAuthStatisticsDO = comPensionAuthStatisticsDAO.selectOne(new QueryWrapper<ComPensionAuthStatisticsDO>()
-//                        .lambda().eq(ComPensionAuthStatisticsDO::getCommunityId, communityId)
-//                        .eq(ComPensionAuthStatisticsDO::getYear, year));
-//                comPensionAuthStatisticsDO.setSum(comPensionAuthStatisticsDO.getSum() + 1);
-//                comPensionAuthStatisticsDAO.updateById(comPensionAuthStatisticsDO);
-//            }
         }
+        //维护高龄老人健在状态
+        comElderAuthElderliesDAO.editEditIsAlive(populationDO.getId(),vo.getIsAlive());
         return populationDO;
     }
 
@@ -5061,6 +5006,7 @@
         populationDO.setVillageName(comMngVillageDO.getGroupAt());
         populationDO.setCardNoStr(vo.getCardNo());
         populationDO.setUpdateAt(new Date());
+        populationDO.setDeath(vo.getDeath().toString());
 
         String cardNoAES = populationDO.getCardNo();
         try {
@@ -5601,16 +5547,6 @@
         Long populationId = Snowflake.getId();
         populationDO.setId(populationId);
         comElderAuthElderliesDO.setPopulationId(populationId);
-        // List<String> userTag = vo.getUserTagStr().stream().map(userTagStr ->
-        // userTagStr.split("\\(")[0]).collect(Collectors.toList());
-        //
-        // //如果导入数据标签中有当前社区标签列表中不包含的标签,则删除
-        // Iterator<String> iterator = userTag.iterator();
-        // while (iterator.hasNext()) {
-        // String s = iterator.next();
-        // if (!labelList.contains(s))
-        // iterator.remove();
-        // }
         populationDO.setVillageId(comMngVillageDO.getVillageId());
         populationDO.setActId(comActDO.getCommunityId());
         populationDO.setStreetId(comActDO.getStreetId());
@@ -5651,17 +5587,6 @@
                 comElderAuthElderliesDO.setPersonnelCategory(ComElderAuthElderliesDO.personnelCategory.above100);
             }
         }
-//        if (vo.getIsRegister().equals(1) && vo.getIsAlive().equals(1)) {
-//            Calendar calendar = Calendar.getInstance();
-//            // 获取当前年
-//            int year = calendar.get(Calendar.YEAR);
-//            // 获取当前月
-//            int month = calendar.get(Calendar.MONTH) + 1;
-//            ComEldersAuthStatisticsDO comEldersAuthStatisticsDO = comEldersAuthStatisticsMapper.selectOne(new QueryWrapper<ComEldersAuthStatisticsDO>()
-//                    .lambda().eq(ComEldersAuthStatisticsDO::getCommunityId, communityId).eq(ComEldersAuthStatisticsDO::getYear, year).eq(ComEldersAuthStatisticsDO::getMonth, month));
-//            comEldersAuthStatisticsDO.setSum(comEldersAuthStatisticsDO.getSum() + 1);
-//            comEldersAuthStatisticsMapper.updateById(comEldersAuthStatisticsDO);
-//        }
         comElderAuthElderliesDAO.insert(comElderAuthElderliesDO);
         return populationDO;
     }
@@ -6396,23 +6321,14 @@
     /**
      * 批量删除实有人口
      *
-     * @param Ids
-     * @return
+     * @param ids 实有人口id集合
+     * @return  删除结果
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public R deletePopulations(List<Long> Ids) {
-        if (!Ids.isEmpty()) {
-            Ids.forEach(id -> {
-                // 清除用户房屋居住信息
-                comMngPopulationHouseUserDAO.deletePopulationHouseByUserId(id);
-            });
-        }
-        int delete = populationDAO.deleteBatchIds(Ids);
-        if (delete > 0) {
-            return R.ok();
-        }
-        return R.fail();
+    public R deletePopulations(List<Long> ids, Long communityId) {
+        comMngPopulationCommunityTagsDAO.deletePopulationRelation(ids,communityId);
+        return R.ok();
     }
 
     /**
@@ -6494,6 +6410,16 @@
             populationDO.setActId(comActDO.getCommunityId());
             populationDO.setStreetId(comActDO.getStreetId());
         }
+
+        //修改人员标签
+        List<ComMngPopulationCommunityTagsDO> communityTagsDOList = comMngPopulationCommunityTagsDAO
+                .selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>().lambda()
+                .eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId)
+                .eq(ComMngPopulationCommunityTagsDO::getPopulationId,vo.getId()));
+        communityTagsDOList.forEach(communityTags -> {
+            communityTags.setLabel(vo.getLabel());
+            comMngPopulationCommunityTagsDAO.updateById(communityTags);
+        });
 
         // 查询当前用户所有房屋id
         List<Long> houseIds = comMngPopulationHouseUserDAO.getPopulationHouseIdByUserId(vo.getId());
@@ -6657,6 +6583,19 @@
     public R specialInputUser(PageInputUserDTO pageInputUserDTO) {
         IPage<InputUserInfoVO> iPage = populationDAO.specialInputUser(
             new Page<>(pageInputUserDTO.getPageNum(), pageInputUserDTO.getPageSize()), pageInputUserDTO);
+        if(iPage!=null){
+            iPage.getRecords().forEach(page -> {
+                if(page.getAreaName() == null || StringUtils.isEmpty(page.getAreaName())){
+                    StringBuilder sb = new StringBuilder();
+                    sb.append(page.getAlley());
+                    if(!page.getHouseNum().contains("号")){
+                        sb.append(page.getHouseNum() + "号");
+                    }
+                    page.setAreaName(sb.toString());
+                }
+            });
+        }
+
         return R.ok(iPage);
     }
 
@@ -6668,13 +6607,24 @@
      * @return 删除结果
      */
     @Override
-    public R deleteSpecialInputUser(Long id) {
+    public R deleteSpecialInputUser(Long id,Long communityId) {
         // 查询特殊群体人员
         ComMngPopulationDO populationDO = this.baseMapper.selectById(id);
         if (populationDO == null) {
             return R.fail("未查询到该记录");
         }
         populationDO.setLabel(null);
+
+        //  清理社区与人口关联信息的label信息
+        List<ComMngPopulationCommunityTagsDO> communityTagsDOList = comMngPopulationCommunityTagsDAO.selectList(new QueryWrapper<ComMngPopulationCommunityTagsDO>()
+                .lambda().eq(ComMngPopulationCommunityTagsDO::getPopulationId,id).eq(ComMngPopulationCommunityTagsDO::getCommunityId,communityId));
+        if(communityTagsDOList != null && communityTagsDOList.size() > 0){
+            communityTagsDOList.forEach(communityTags -> {
+                communityTags.setLabel(null);
+                comMngPopulationCommunityTagsDAO.updateById(communityTags);
+            });
+        }
+
         if (this.baseMapper.updateById(populationDO) > 0) {
             return R.ok();
         } else {
@@ -6969,12 +6919,20 @@
             ageStatisticsVO5.setSum(0);
             ageStatisticsVO6.setSum(0);
         } else {
+            int count=ageMap.get("age16").intValue()+ageMap.get("age27").intValue()+ageMap.get("age35").intValue()
+                    +ageMap.get("age45").intValue()+ageMap.get("age55").intValue()+ageMap.get("age55over").intValue();
             ageStatisticsVO1.setSum(ageMap.get("age16").intValue());
+            ageStatisticsVO1.setPercent(BigDecimal.valueOf(ageMap.get("age16").intValue()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
             ageStatisticsVO2.setSum(ageMap.get("age27").intValue());
+            ageStatisticsVO2.setPercent(BigDecimal.valueOf(ageMap.get("age27").intValue()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
             ageStatisticsVO3.setSum(ageMap.get("age35").intValue());
+            ageStatisticsVO3.setPercent(BigDecimal.valueOf(ageMap.get("age35").intValue()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
             ageStatisticsVO4.setSum(ageMap.get("age45").intValue());
+            ageStatisticsVO4.setPercent(BigDecimal.valueOf(ageMap.get("age45").intValue()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
             ageStatisticsVO5.setSum(ageMap.get("age55").intValue());
+            ageStatisticsVO5.setPercent(BigDecimal.valueOf(ageMap.get("age55").intValue()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
             ageStatisticsVO6.setSum(ageMap.get("age55over").intValue());
+            ageStatisticsVO6.setPercent(BigDecimal.valueOf(ageMap.get("age55over").intValue()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
         }
 
         agePopulationList.add(ageStatisticsVO1);
@@ -7103,7 +7061,7 @@
         // 查询特殊人群统计
         List<IndexSpecialStatisticsVO> specialStatisticsVOList = new ArrayList<>();
 
-        // 查询特殊人群标签列表
+        //查询特殊人群标签列表
         List<ComMngUserTagVO> userTagList = comMngPopulationDAO.getUserTagListByCommunityId(communityId);
         IndexSpecialStatisticsVO otherSpecialVO = new IndexSpecialStatisticsVO();
         otherSpecialVO.setTitle("其他");
@@ -7187,8 +7145,49 @@
 
         // 查询小区列表
         List<CivilVillageStatisticsVO> villageStatisticsList = this.baseMapper.getCivilScreenVillageList(communityId);
+//        villageStatisticsList.forEach(civilVillageStatisticsVO -> {
+//            civilVillageStatisticsVO.setUserSum(comMngPopulationDAO.selectCount(new QueryWrapper<ComMngPopulationDO>().lambda().eq(ComMngPopulationDO::getVillageId,civilVillageStatisticsVO.getVillageId())));
+//            List<IndexSpecialStatisticsVO> specialStatisticsVOS = new ArrayList<>();
+//            IndexSpecialStatisticsVO otherSpecial = new IndexSpecialStatisticsVO();
+//            otherSpecial.setTitle("其他");
+//            otherSpecial.setSum(0);
+//            // 查询特殊人群标签列表
+//            List<ComMngUserTagVO> userTagVOS = comMngPopulationDAO.getUserTagListByCommunityId(communityId);
+//
+//            userTagVOS.forEach(comMngUserTagVO -> {
+//              Integer count=comMngPopulationDAO.selectCountByVillageId(civilVillageStatisticsVO.getVillageId(),comMngUserTagVO.getTagName());
+//              IndexSpecialStatisticsVO indexSpecialStatisticsVO=new IndexSpecialStatisticsVO();
+//              indexSpecialStatisticsVO.setTitle(comMngUserTagVO.getTagName());
+//              indexSpecialStatisticsVO.setSum(count);
+//              otherSpecial.setSum(otherSpecial.getSum()+count);
+//              specialStatisticsVOS.add(indexSpecialStatisticsVO);
+//            });
+//            otherSpecial.setSum(civilVillageStatisticsVO.getUserSum()-otherSpecial.getSum());
+//            specialStatisticsVOS.add(otherSpecial);
+//            civilVillageStatisticsVO.setSpecialStatisticsList(specialStatisticsVOS);
+//        });
         civilStatisticsVO.setVillageStatisticsList(villageStatisticsList);
 
+        //查询党建引领数据
+        CivilPartyStatisticsVO civilParty = this.baseMapper.getCivilParty(communityId);
+        if(civilParty != null){
+            civilStatisticsVO.setCivilPartyStatisticsVO(civilParty);
+        }
+        //查询社区治理数据
+        CivilGovernmentStatisticsVO civilGovernment = this.baseMapper.getCivilGovernment(communityId);
+        if(civilGovernment != null){
+            civilStatisticsVO.setCivilGovernmentStatisticsVO(civilGovernment);
+        }
+        //查询网格管理数据
+        CivilGridStatisticsVO civilGrid = this.baseMapper.getCivilGrid(communityId);
+        if(civilGrid != null){
+            civilStatisticsVO.setCivilGridStatisticsVO(civilGrid);
+        }
+        //查询便民服务数据
+        CivilConvenienceStatisticsVO civilConvenience = this.baseMapper.getCivilConvenience(communityId);
+        if(civilConvenience != null){
+            civilStatisticsVO.setCivilConvenienceStatisticsVO(civilConvenience);
+        }
         return R.ok(civilStatisticsVO);
     }
 
@@ -7397,14 +7396,18 @@
     @Override
     public R getScreenEventDetail(BigScreenEventDetailDTO eventDetailDTO) {
         EventNewStatisticsVO statisticsVO = new EventNewStatisticsVO();
-        if (eventDetailDTO.getType().equals(7)) {// 随手拍详情
+        Integer eventType = eventDetailDTO.getEventType();
+        if (eventDetailDTO.getType().equals(7) || (nonNull(eventType) && eventType.equals(2))) {// 随手拍详情
             statisticsVO = this.baseMapper.getEventScreenSSPDateil(eventDetailDTO.getEventId());
             if (statisticsVO != null && StringUtils.isNotEmpty(statisticsVO.getPhotoPathList())) {
                 statisticsVO.setDangerLevel("0");
                 statisticsVO.setMajor(false);
                 statisticsVO.setUrgent(false);
-                if (statisticsVO.getEventDealStatus().equals(2)) {
-                    statisticsVO.setEventDealStatus(4);
+                if (statisticsVO.getEventDealStatus().equals(2)||statisticsVO.getEventDealStatus().equals(1)) {
+                    statisticsVO.setEventDealStatus(1);
+                }
+                else {
+                    statisticsVO.setEventDealStatus(2);
                 }
                 List<EventResourceVO> picList = new ArrayList<>();
                 String[] pics = statisticsVO.getPhotoPathList().split(",");
@@ -7524,6 +7527,10 @@
             if (StringUtils.isNotEmpty(detail.getMarriage())) {
                 detail.setMarriage(PopulMarriageEnum.getCnDescByName(Integer.parseInt(detail.getMarriage())));
             }
+            //查询该人口的标签
+            List<ComMngPopulationCommunityTagsVo> communityTagsList = this.baseMapper.getCommunityTagList(populationId);
+            String label = LabelUtils.assembleLabel(communityTagsList);
+            detail.setLabel(label);
         }
         return R.ok(detail);
     }
@@ -7604,6 +7611,8 @@
             return R.fail("您选择的数据中存在被引用的,无法删除");
         }
         this.baseMapper.deleteBatchIds(ids);
+        //删除人口并删除人口和社区关联关系
+        this.baseMapper.deletePopulaitonRelation(ids);
         return R.ok("删除成功");
     }
 
@@ -7743,6 +7752,171 @@
     public R getVillagePopulationAdmin(PageComMngVillagePopulationDTO villagePopulationDTO) {
         return R.ok(this.baseMapper.getVillagePopulationAdmin(
             new Page(villagePopulationDTO.getPageNum(), villagePopulationDTO.getPageSize()), villagePopulationDTO));
+    }
+
+    @Override
+    public R specialInputUserExport(PageInputUserDTO pageInputUserDTO) {
+        return R.ok(this.comMngPopulationDAO.specialInputUserExport(pageInputUserDTO));
+    }
+
+    @Override
+    public R westScreenStatics() {
+        WestScreenStatics westScreenStatics=this.comMngPopulationDAO.westScreenStatics();
+        WxDataUtil wxDataUtil=new WxDataUtil();
+        westScreenStatics.setDayUser(wxDataUtil.getDayUser());
+        westScreenStatics.setCountUser(wxDataUtil.getMonthUser());
+        return R.ok(westScreenStatics);
+    }
+
+    @Override
+    public R getComprehensivePopulationStatics(Long streetId){
+        EventPopulationStatisticsVO statisticsVo = new EventPopulationStatisticsVO();
+        //查询人口数据
+        List<EventPopulationBasicsStatisticsVO> basicsList = comMngPopulationDAO.getBasicsList(streetId);
+        if(basicsList != null){
+            for (EventPopulationBasicsStatisticsVO basics : basicsList) {
+                statisticsVo.setPopulationNum(statisticsVo.getPopulationNum() + basics.getPopulationNum());
+                statisticsVo.setVillageNum(statisticsVo.getVillageNum() + basics.getVillageNum());
+                statisticsVo.setHouseNum(statisticsVo.getHouseNum() + basics.getHouseNum());
+            }
+            statisticsVo.setBasicsList(basicsList);
+        }
+        //查询特殊人群数据
+        EventPopulationSpecialStatisticsVO populationSpecial = comMngPopulationDAO.getPopulationSpecial(streetId);
+        if(populationSpecial != null){
+            populationSpecial.setOtherTotal(populationSpecial.getZjTotal() + populationSpecial.getSfTotal()
+                    + populationSpecial.getXsTotal() + populationSpecial.getXjTotal()
+                    + populationSpecial.getJzTotal() + populationSpecial.getXdTotal());
+            populationSpecial.setLnTotal(comMngPopulationDAO.getPopulationAge(streetId,60));
+            populationSpecial.setGlTotal(comMngPopulationDAO.getPopulationAge(streetId,80));
+            statisticsVo.setSpecialStatisticsVo(populationSpecial);
+        }
+        return R.ok(statisticsVo);
+    }
+
+    @Override
+    public R getComprehensiveStreetList(){
+        return R.ok(comMngPopulationDAO.getComprehensiveStreetList());
+    }
+
+    @Override
+    public R indexInfo(Long communityId) {
+        IndexInfo indexInfo=new IndexInfo();
+        //基础数据
+        BaseInfo baseInfo=this.comMngPopulationDAO.baseInfo(communityId);
+        indexInfo.setBaseInfo(baseInfo);
+        // 查询实有人口统计模块
+        IndexPopulationStatisticsVO populationStatisticsVO = new IndexPopulationStatisticsVO();
+        // 查询实有人口性别统计
+        List<IndexPopulationSexStatisticsVO> sexPopulationList =
+                comMngPopulationDAO.getScreenIndexByPopulationSex(communityId);
+        populationStatisticsVO.setSexPopulationList(sexPopulationList);
+        // 查询实有人口年龄统计
+        List<IndexPopulationAgeStatisticsVO> agePopulationList = statisticsAge(communityId);
+        populationStatisticsVO.setAgePopulationList(agePopulationList);
+        indexInfo.setIndexPopulationStatisticsVO(populationStatisticsVO);
+        // 查询特殊人群统计
+        List<IndexSpecialStatisticsVO> specialStatisticsVOList = new ArrayList<>();
+
+        // 查询特殊人群标签列表
+        List<ComMngUserTagVO> userTagList = comMngPopulationDAO.getUserTagListByCommunityId(communityId);
+        IndexSpecialStatisticsVO otherSpecialVO = new IndexSpecialStatisticsVO();
+        otherSpecialVO.setTitle("其他");
+        otherSpecialVO.setSum(0);
+        int countAll=comMngPopulationDAO.getSpecialStatistics(communityId);
+        if (!userTagList.isEmpty()) {
+            userTagList.forEach(userTag -> {
+                if (userTag != null) {
+                    if (userTag.getSysFlag().equals(0)) {
+                        Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName(),communityId);
+                        IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO();
+                        otherSpecialVO.setSum(otherSpecialVO.getSum()+count);
+                        specialStatisticsVO.setTitle(userTag.getTagName());
+                        specialStatisticsVO.setSum(count);
+                        specialStatisticsVO.setPercent(BigDecimal.valueOf(specialStatisticsVO.getSum()*100d/countAll).setScale(2,BigDecimal.ROUND_HALF_UP));
+                        specialStatisticsVOList.add(specialStatisticsVO);
+                    } else {
+                        if (StringUtils.isNotEmpty(userTag.getTagName())) {
+                                IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO();
+                                specialStatisticsVO.setTitle(userTag.getTagName());
+                                Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName(),communityId);
+                                otherSpecialVO.setSum(otherSpecialVO.getSum()+count);
+                                specialStatisticsVO.setSum(count);
+                                specialStatisticsVO.setPercent(BigDecimal.valueOf(specialStatisticsVO.getSum()*100d/countAll).setScale(2,BigDecimal.ROUND_HALF_UP));
+                                specialStatisticsVOList.add(specialStatisticsVO);
+                        }
+                    }
+                }
+            });
+        }
+        otherSpecialVO.setSum(countAll-otherSpecialVO.getSum());
+        otherSpecialVO.setPercent(BigDecimal.valueOf(otherSpecialVO.getSum()*100d/countAll).setScale(2,BigDecimal.ROUND_HALF_UP));
+        specialStatisticsVOList.add(otherSpecialVO);
+        indexInfo.setSpecialStatisticsVOList(specialStatisticsVOList);
+        // 查询网格化治理
+        IndexEventGridStatisticsVO eventGridStatisticsVO = new IndexEventGridStatisticsVO();
+        List<IndexGridStatisticsVO> gridStatisticsList = new ArrayList<>();
+        // 查询网格化事件数据
+        IndexGridEventStatisticsVO gridEventStatistics = comMngPopulationDAO.getGridEventStatisticsList(communityId);
+        int count=gridEventStatistics.getEventGGTotal()+gridEventStatistics.getEventBWDTotal()+gridEventStatistics.getEventMDTotal()+gridEventStatistics.getEventTFTotal()+gridEventStatistics.getEventTSTotal()+gridEventStatistics.getEventZATotal();
+        gridEventStatistics.setGgPercent(BigDecimal.valueOf(gridEventStatistics.getEventGGTotal()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
+        gridEventStatistics.setBwdPercent(BigDecimal.valueOf(gridEventStatistics.getEventBWDTotal()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
+        gridEventStatistics.setMdPercent(BigDecimal.valueOf(gridEventStatistics.getEventMDTotal()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
+        gridEventStatistics.setTfPercent(BigDecimal.valueOf(gridEventStatistics.getEventTFTotal()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
+        gridEventStatistics.setTsPercent(BigDecimal.valueOf(gridEventStatistics.getEventTSTotal()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
+        gridEventStatistics.setZaPercent(BigDecimal.valueOf(gridEventStatistics.getEventZATotal()*100d/count).setScale(2,BigDecimal.ROUND_HALF_UP));
+        eventGridStatisticsVO.setGridEventStatisticsList(gridEventStatistics);
+        // 查询网格数据
+        List<EventGridDataVO> gridDataList = comMngPopulationDAO.getGridDataListByCommunityId(communityId);
+        if (!gridDataList.isEmpty()) {
+            gridDataList.forEach(gridData -> {
+                if (gridData != null) {
+                    IndexGridStatisticsVO gridStatisticsVO = new IndexGridStatisticsVO();
+                    gridStatisticsVO.setEventData(gridData.getGridName());
+                    // 根据网格id查询网格事件列表
+                    IndexGridEventStatisticsVO gridEventList =
+                            comMngPopulationDAO.getGridEventByGirdId(gridData.getId());
+                    gridStatisticsVO.setGridEventStatisticsList(gridEventList);
+                    gridStatisticsList.add(gridStatisticsVO);
+                }
+            });
+        }
+        eventGridStatisticsVO.setGridStatisticsList(gridStatisticsList);
+        indexInfo.setEventGridStatisticsVO(eventGridStatisticsVO);
+        //首页业务统计
+        IndexDynamic indexDynamic=this.populationDAO.indexDynamic(communityId);
+        indexInfo.setIndexDynamic(indexDynamic);
+        //返攀登记居家隔离数据统计
+        IndexReserve indexReserve=new IndexReserve();
+        IndexBackReserve indexBackReserve=new IndexBackReserve();
+        indexBackReserve.setCount(comActReserveMapper.indexBackReserve(communityId));
+        indexBackReserve.setIndexReserveSubList(comActReserveMapper.indexBackReserveSub(communityId));
+        indexBackReserve.getIndexReserveSubList().forEach(indexReserveSub -> {
+            if(indexReserveSub.getAllCount()!=0){
+                indexReserveSub.setPercent(BigDecimal.valueOf(indexReserveSub.getNum()*100d/indexReserveSub.getAllCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+            }
+            else {
+                indexReserveSub.setPercent(BigDecimal.valueOf(0d));
+            }
+        });
+        IndexHomeQuarantine indexHomeQuarantine=new IndexHomeQuarantine();
+        indexHomeQuarantine.setCount(comActReserveMapper.indexHomeQuarantine(communityId));
+        indexHomeQuarantine.setIndexReserveSubList(comActReserveMapper.IndexHomeQuarantineSub(communityId));
+        indexHomeQuarantine.getIndexReserveSubList().forEach(indexReserveSub -> {
+            if(indexReserveSub.getAllCount()!=0){
+                indexReserveSub.setPercent(BigDecimal.valueOf(indexReserveSub.getNum()*100d/indexReserveSub.getAllCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+            }
+            else {
+                indexReserveSub.setPercent(BigDecimal.valueOf(0d));
+            }
+        });
+        indexReserve.setIndexBackReserve(indexBackReserve);
+        indexReserve.setIndexHomeQuarantine(indexHomeQuarantine);
+        indexInfo.setIndexReserve(indexReserve);
+        BigscreenGridsGovernanceStatisticsVO bigscreenGridsGovernanceStatisticsVO=comActEasyPhotoDAO.selectBigscreenGridsGovern(communityId);
+        indexInfo.setBigScreenGridStaticsReturn(setData(bigscreenGridsGovernanceStatisticsVO));
+
+        return R.ok(indexInfo);
     }
 
     private void setMistake(ComMngPopulationMistakeExcelVO mvo, ComMngPopulationServeExcelVO vo) {
@@ -7985,4 +8159,58 @@
         return ObjectUtils.isEmpty(hashMap.get(key));
     }
 
+
+    private BigScreenGridStaticsReturn setData(BigscreenGridsGovernanceStatisticsVO bigscreenGridsGovernanceStatisticsVO){
+        List<BigScreenGridStaticsReturn> bigScreenGridStaticsReturnList=new ArrayList<>();
+        BigScreenGridStaticsReturn bigScreenGridStaticsReturn=new BigScreenGridStaticsReturn();
+        bigScreenGridStaticsReturn.setCount(bigscreenGridsGovernanceStatisticsVO.getEventTotal()+bigscreenGridsGovernanceStatisticsVO.getOtherTotal()+bigscreenGridsGovernanceStatisticsVO.getSafety());
+        BigScreenGridStaticsReturn bigScreenGridStaticsReturn1=new BigScreenGridStaticsReturn();
+        bigScreenGridStaticsReturn1.setTitle("突发事件报告");
+        bigScreenGridStaticsReturn1.setNum(bigscreenGridsGovernanceStatisticsVO.getEventTFTotal());
+        bigScreenGridStaticsReturn1.setPercent(BigDecimal.valueOf(bigscreenGridsGovernanceStatisticsVO.getEventTFTotal()*100d/bigScreenGridStaticsReturn.getCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+        bigScreenGridStaticsReturnList.add(bigScreenGridStaticsReturn1);
+        BigScreenGridStaticsReturn bigScreenGridStaticsReturn2=new BigScreenGridStaticsReturn();
+        bigScreenGridStaticsReturn2.setTitle("特殊人群服务");
+        bigScreenGridStaticsReturn2.setNum(bigscreenGridsGovernanceStatisticsVO.getEventTSTotal());
+        bigScreenGridStaticsReturn2.setPercent(BigDecimal.valueOf(bigscreenGridsGovernanceStatisticsVO.getEventTSTotal()*100d/bigScreenGridStaticsReturn.getCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+        bigScreenGridStaticsReturnList.add(bigScreenGridStaticsReturn2);
+        BigScreenGridStaticsReturn bigScreenGridStaticsReturn3=new BigScreenGridStaticsReturn();
+        bigScreenGridStaticsReturn3.setTitle("治安防控");
+        bigScreenGridStaticsReturn3.setNum(bigscreenGridsGovernanceStatisticsVO.getEventZATotal());
+        bigScreenGridStaticsReturn3.setPercent(BigDecimal.valueOf(bigscreenGridsGovernanceStatisticsVO.getEventZATotal()*100d/bigScreenGridStaticsReturn.getCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+        bigScreenGridStaticsReturnList.add(bigScreenGridStaticsReturn3);
+        BigScreenGridStaticsReturn bigScreenGridStaticsReturn4=new BigScreenGridStaticsReturn();
+        bigScreenGridStaticsReturn4.setTitle("民生服务");
+        bigScreenGridStaticsReturn4.setNum(bigscreenGridsGovernanceStatisticsVO.getEventMSTotal());
+        bigScreenGridStaticsReturn4.setPercent(BigDecimal.valueOf(bigscreenGridsGovernanceStatisticsVO.getEventMSTotal()*100d/bigScreenGridStaticsReturn.getCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+        bigScreenGridStaticsReturnList.add(bigScreenGridStaticsReturn4);
+        BigScreenGridStaticsReturn bigScreenGridStaticsReturn5=new BigScreenGridStaticsReturn();
+        bigScreenGridStaticsReturn5.setTitle("矛盾劝解");
+        bigScreenGridStaticsReturn5.setNum(bigscreenGridsGovernanceStatisticsVO.getEventMDTotal());
+        bigScreenGridStaticsReturn5.setPercent(BigDecimal.valueOf(bigscreenGridsGovernanceStatisticsVO.getEventMDTotal()*100d/bigScreenGridStaticsReturn.getCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+        bigScreenGridStaticsReturnList.add(bigScreenGridStaticsReturn5);
+        BigScreenGridStaticsReturn bigScreenGridStaticsReturn6=new BigScreenGridStaticsReturn();
+        bigScreenGridStaticsReturn6.setTitle("防灾减灾");
+        bigScreenGridStaticsReturn6.setNum(bigscreenGridsGovernanceStatisticsVO.getEventFJTotal());
+        bigScreenGridStaticsReturn6.setPercent(BigDecimal.valueOf(bigscreenGridsGovernanceStatisticsVO.getEventFJTotal()*100d/bigScreenGridStaticsReturn.getCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+        bigScreenGridStaticsReturnList.add(bigScreenGridStaticsReturn6);
+        BigScreenGridStaticsReturn bigScreenGridStaticsReturn7=new BigScreenGridStaticsReturn();
+        bigScreenGridStaticsReturn7.setTitle("政策法规宣传");
+        bigScreenGridStaticsReturn7.setNum(bigscreenGridsGovernanceStatisticsVO.getEventFGTotal());
+        bigScreenGridStaticsReturn7.setPercent(BigDecimal.valueOf(bigscreenGridsGovernanceStatisticsVO.getEventFGTotal()*100d/bigScreenGridStaticsReturn.getCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+        bigScreenGridStaticsReturnList.add(bigScreenGridStaticsReturn7);
+        BigScreenGridStaticsReturn bigScreenGridStaticsReturn8=new BigScreenGridStaticsReturn();
+        bigScreenGridStaticsReturn8.setTitle("安全巡查");
+        bigScreenGridStaticsReturn8.setNum(bigscreenGridsGovernanceStatisticsVO.getSafety());
+        bigScreenGridStaticsReturn8.setPercent(BigDecimal.valueOf(bigscreenGridsGovernanceStatisticsVO.getSafety()*100d/bigScreenGridStaticsReturn.getCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+        bigScreenGridStaticsReturnList.add(bigScreenGridStaticsReturn8);
+        BigScreenGridStaticsReturn bigScreenGridStaticsReturn9=new BigScreenGridStaticsReturn();
+        bigScreenGridStaticsReturn9.setTitle("其他");
+        bigScreenGridStaticsReturn9.setNum(bigscreenGridsGovernanceStatisticsVO.getOtherTotal());
+        bigScreenGridStaticsReturn9.setPercent(BigDecimal.valueOf(bigscreenGridsGovernanceStatisticsVO.getOtherTotal()*100d/bigScreenGridStaticsReturn.getCount()).setScale(2,BigDecimal.ROUND_HALF_UP));
+        bigScreenGridStaticsReturnList.add(bigScreenGridStaticsReturn9);
+        bigScreenGridStaticsReturn.setBigScreenGridStaticsReturnList(bigScreenGridStaticsReturnList);
+        return bigScreenGridStaticsReturn;
+    }
+
 }
\ No newline at end of file

--
Gitblit v1.7.1