From 2e2bcc55ea6eb6fd63dae451bdd26f4b9875db40 Mon Sep 17 00:00:00 2001
From: 张天森 <1292933220@qq.com>
Date: 星期一, 06 二月 2023 16:57:49 +0800
Subject: [PATCH] #add 普达大屏接口

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ScreenWorkServiceImpl.java |   86 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 86 insertions(+), 0 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ScreenWorkServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ScreenWorkServiceImpl.java
index e978d53..a2dd032 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ScreenWorkServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ScreenWorkServiceImpl.java
@@ -6,6 +6,16 @@
 
 import javax.annotation.Resource;
 
+import cn.hutool.core.util.NumberUtil;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.panzhihua.common.model.vos.DateVO;
+import com.panzhihua.common.model.vos.community.building.admin.BuildingListHeaderStatisticsAdminVo;
+import com.panzhihua.common.model.vos.community.building.admin.PageBuildingListAdminVo;
+import com.panzhihua.common.model.vos.puda.BasicDataVO;
+import com.panzhihua.common.model.vos.puda.CitizenInfoVO;
+import com.panzhihua.common.model.vos.puda.DynamicVO;
+import com.panzhihua.common.model.vos.puda.SpecialPeopleVO;
+import com.panzhihua.common.service.community.CommunityService;
 import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -47,6 +57,10 @@
     private ComPbDynDAO comPbDynDAO;
     @Resource
     private ComActEasyPhotoDAO comActEasyPhotoDAO;
+    @Resource
+    private ComScreenDao comScreenDao;
+    @Resource
+    private CommunityService communityService;
 
     @Override
     public R statisticNeighborCircle(Long communityId) {
@@ -317,6 +331,78 @@
         return R.ok(workScreenVO);
     }
 
+    @Override
+    public R autonomyDynamic(Long communityId) {
+        DynamicVO dynamicVO =comScreenDao.autonomyDynamic(communityId);
+        return R.ok(dynamicVO);
+    }
+
+    @Override
+    public R property(Long communityId) {
+        return R.ok(comScreenDao.propertyData(communityId));
+    }
+
+    @Override
+    public R partyData(Long communityId) {
+        return R.ok(comScreenDao.partyData(communityId));
+    }
+
+    @Override
+    public R yard(Long communityId) {
+        return R.ok(comScreenDao.yard(communityId));
+    }
+
+    @Override
+    public R citizenInfo(Long communityId) {
+        DateVO vo=new DateVO();
+        //当前日期
+        vo.setNow(DateUtil.now());
+        //16年前
+        vo.setOffset16(DateUtil.offsetMonth(DateUtil.date(), -192).toDateStr());
+        //27年前
+        vo.setOffset27(DateUtil.offsetMonth(DateUtil.date(), -324).toDateStr());
+        //35年前
+        vo.setOffset35(DateUtil.offsetMonth(DateUtil.date(), -420).toDateStr());
+        //45年前
+        vo.setOffset45(DateUtil.offsetMonth(DateUtil.date(), -540).toDateStr());
+        //55年前
+        vo.setOffset55(DateUtil.offsetMonth(DateUtil.date(), -660).toDateStr());
+        CitizenInfoVO citizenInfoVO = comScreenDao.ageRange(vo);
+        citizenInfoVO.setTotal(comScreenDao.peopleInfoAdmin(communityId).getPopulationNum());
+        citizenInfoVO.setMaleRate(NumberUtil.div(citizenInfoVO.getMaleNum(), citizenInfoVO.getTotal(), 2));
+        citizenInfoVO.setFemaleRate(NumberUtil.div(citizenInfoVO.getFemaleNum(), citizenInfoVO.getTotal(), 2));
+        //男性占比
+        return R.ok(citizenInfoVO);
+    }
+
+    @Override
+    public R specialPeople(Long communityId) {
+        SpecialPeopleVO vo=new SpecialPeopleVO();
+        vo.setTotal(0);
+        List<SpecialPeopleVO> specialPeopleVOS = comScreenDao.specialPeople(communityId);
+        //求和
+        for (SpecialPeopleVO specialPeopleVO : specialPeopleVOS) {
+            vo.setTotal(vo.getTotal()+specialPeopleVO.getCount());
+        }
+        //计算占比
+        for (SpecialPeopleVO specialPeopleVO : specialPeopleVOS) {
+            specialPeopleVO.setRate(NumberUtil.div(specialPeopleVO.getCount(),vo.getTotal() ,2 ));
+        }
+        vo.setChildList(specialPeopleVOS);
+        return R.ok(vo);
+    }
+
+    @Override
+    public R basicData(Long communityId) {
+        //PageBuildingListAdminVo pageBuildingListAdminVo = comScreenDao.peopleInfoAdmin(communityId);
+        R r = communityService.buildingListHeaderStatisticsAdmin(communityId);
+        BuildingListHeaderStatisticsAdminVo buildingListHeaderStatisticsAdminVo = (BuildingListHeaderStatisticsAdminVo)r.getData();
+        BasicDataVO vo=new BasicDataVO();
+        vo.setPeople(buildingListHeaderStatisticsAdminVo.getPopulationNum());
+        vo.setBuildings(buildingListHeaderStatisticsAdminVo.getBuildNum());
+        return R.ok(vo);
+    }
+
     private List<DynamicWorkVO> listHalfYearByDyn() {
         List<DynamicWorkVO> dateList = new ArrayList<>();
         Date now = new Date();

--
Gitblit v1.7.1