huanghongfa
2021-06-16 6af3a9c58565a5616105d8c76b1cf91bae36d38a
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngPopulationDAO.java
@@ -6,6 +6,7 @@
import com.panzhihua.common.model.dtos.community.ComMngPopulationDTO;
import com.panzhihua.common.model.dtos.user.PageInputUserDTO;
import com.panzhihua.common.model.vos.area.AreaAddressVO;
import com.panzhihua.common.model.vos.community.ComActMessageVO;
import com.panzhihua.common.model.vos.community.ComMngPopulationTotalVO;
import com.panzhihua.common.model.vos.community.ComMngPopulationVO;
import com.panzhihua.common.model.vos.community.screen.civil.CivilPopulationStatisticsVO;
@@ -14,6 +15,11 @@
import com.panzhihua.common.model.vos.community.screen.index.*;
import com.panzhihua.common.model.vos.grid.EventGridDataVO;
import com.panzhihua.common.model.vos.user.*;
import com.panzhihua.common.model.vos.community.PageComActMessageVO;
import com.panzhihua.common.model.vos.user.ComHouseMemberVo;
import com.panzhihua.common.model.vos.user.ComMngFamilyInfoVO;
import com.panzhihua.common.model.vos.user.InputUserInfoVO;
import com.panzhihua.common.model.vos.user.UserElectronicFileVO;
import com.panzhihua.service_community.model.dos.ComMngPopulationDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -21,6 +27,7 @@
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
 * 实有人口Dao
@@ -267,7 +274,7 @@
    List<IndexPopulationSexStatisticsVO> getScreenIndexByPopulationSex(@Param("communityId") Long communityId);
    @Select("SELECT " +
            " e.create_at, " +
            " e.happen_time as createAt, " +
            " e.event_des, " +
            " e.event_deal_status  " +
            "FROM " +
@@ -298,18 +305,19 @@
    @Select("SELECT " +
            " count( e.id ) AS eventTFTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 1 AND event_deal_status = 4 AND grid_id = egd.id ),0) AS eventZATotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 3 AND event_deal_status = 4 AND grid_id = egd.id ),0) AS eventMDTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 6 AND event_deal_status = 4 AND grid_id = egd.id ),0) AS eventTSTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 4 AND event_deal_status = 4 AND grid_id = egd.id ),0) AS eventBWDTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 2 AND event_deal_status = 4 AND grid_id = egd.id ),0) AS eventGGTotal  " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 1 AND event_status = 2 AND event_deal_status in (1,2,3) AND grid_id = egd.id ),0) AS eventZATotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 3 AND event_status = 2 AND event_deal_status in (1,2,3) AND grid_id = egd.id ),0) AS eventMDTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 6 AND event_status = 2 AND event_deal_status in (1,2,3) AND grid_id = egd.id ),0) AS eventTSTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 4 AND event_status = 2 AND event_deal_status in (1,2,3) AND grid_id = egd.id ),0) AS eventBWDTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 2 AND event_status = 2 AND event_deal_status in (1,2,3) AND grid_id = egd.id ),0) AS eventGGTotal  " +
            "FROM " +
            " `event` AS e " +
            " LEFT JOIN event_grid_data AS egd ON egd.id = e.grid_id  " +
            "WHERE " +
            " e.event_category = 1  " +
            " AND e.event_type = 5  " +
            " AND e.event_deal_status = 4  " +
            " AND e.event_deal_status in (1,2,3)  " +
            " AND e.event_status = 2  " +
            " AND egd.grid_community_id = #{communityId}")
    IndexGridEventStatisticsVO getGridEventStatisticsList(@Param("communityId") Long communityId);
@@ -318,17 +326,18 @@
    @Select("SELECT " +
            " count( e.id ) AS eventTFTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 1 AND event_deal_status = 4 AND grid_id = e.grid_id ),0) AS eventZATotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 3 AND event_deal_status = 4 AND grid_id = e.grid_id) ,0) AS eventMDTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 6 AND event_deal_status = 4 AND grid_id = e.grid_id ),0) AS eventTSTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 4 AND event_deal_status = 4 AND grid_id = e.grid_id ),0) AS eventBWDTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 2 AND event_deal_status = 4 AND grid_id = e.grid_id ),0) AS eventGGTotal  " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 1 AND event_status = 2 AND event_deal_status in (1,2,3) AND grid_id = e.grid_id ),0) AS eventZATotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 3 AND event_status = 2 AND event_deal_status in (1,2,3) AND grid_id = e.grid_id) ,0) AS eventMDTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 6 AND event_status = 2 AND event_deal_status in (1,2,3) AND grid_id = e.grid_id ),0) AS eventTSTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 4 AND event_status = 2 AND event_deal_status in (1,2,3) AND grid_id = e.grid_id ),0) AS eventBWDTotal, " +
            " IFNULL(( SELECT count( id ) FROM `event` WHERE event_category = 1 AND event_type = 2 AND event_status = 2 AND event_deal_status in (1,2,3) AND grid_id = e.grid_id ),0) AS eventGGTotal  " +
            "FROM " +
            " `event` AS e " +
            "WHERE " +
            " e.event_category = 1  " +
            " AND e.event_type = 5  " +
            " AND e.event_deal_status = 4  " +
            " AND e.event_deal_status in (1,2,3)  " +
            " AND e.event_status = 2  " +
            " AND e.grid_id = #{gridId}")
    IndexGridEventStatisticsVO getGridEventByGirdId(@Param("gridId") Long gridId);
@@ -615,8 +624,8 @@
    List<EventGridStatisticsVO> getEventScreenGridData(@Param("communityId") Long communityId);
    @Select("SELECT " +
            " event_type as type, " +
            " happent_lat_lng as latLng  " +
            " event_type AS type, " +
            " happent_lat_lng AS latLng  " +
            "FROM " +
            " `event` AS e " +
            " LEFT JOIN event_grid_data AS egd ON egd.id = e.grid_id  " +
@@ -625,7 +634,9 @@
            " AND e.event_type IN ( 1, 2, 3, 4, 5, 6 )  " +
            " AND e.event_status = 2  " +
            " AND e.event_deal_status = 1  " +
            " AND egd.grid_community_id = #{communityId} UNION ALL " +
            " AND egd.grid_community_id = #{communityId}  " +
            " AND e.happen_time BETWEEN date_add( curdate(), INTERVAL - DAY ( curdate())+ 1 DAY )  " +
            " AND date_add( curdate()- DAY ( curdate())+ 1, INTERVAL 1 MONTH ) UNION ALL " +
            "SELECT " +
            " IFNULL( NULL, 7 ) AS type, " +
            " lng_lat AS latLng  " +
@@ -635,7 +646,9 @@
            " community_id = #{communityId}  " +
            " AND handle_status = 1  " +
            " AND del_tag = 0  " +
            " AND lng_lat IS NOT NULL")
            " AND lng_lat IS NOT NULL  " +
            " AND create_at BETWEEN date_add( curdate(), INTERVAL - DAY ( curdate())+ 1 DAY )  " +
            " AND date_add( curdate()- DAY ( curdate())+ 1, INTERVAL 1 MONTH )")
    List<EventGridIncidentStatisticsVO> getEventScreenEventList(@Param("communityId") Long communityId);
    @Select("SELECT " +
@@ -661,4 +674,38 @@
    List<CivilVillageStatisticsVO> getCivilScreenVillageList(@Param("communityId") Long communityId);
   @Select("SELECT COUNT(id) AS man,(SELECT COUNT(id) FROM com_mng_population WHERE sex = 2 AND act_id = #{communityId}) AS woman FROM com_mng_population WHERE sex = 1 AND act_id = #{communityId}")
    Map<String, Long> countBySex(@Param("communityId") Long communityId);
    @Select(
            "SELECT " +
                    "(SELECT COUNT(aa.age) FROM " +
                    "(SELECT (SELECT  TIMESTAMPDIFF(YEAR, birthday, CURDATE()) ) AS age FROM com_mng_population WHERE act_id = #{communityId}) as aa where aa.age<= 16) as age16," +
                    "(SELECT COUNT(aa.age) FROM " +
                    "(SELECT (SELECT  TIMESTAMPDIFF(YEAR, birthday, CURDATE()) ) AS age FROM com_mng_population WHERE act_id = #{communityId}) AS aa WHERE aa.age > 16 and aa.age<= 25) AS age25," +
                    "(SELECT COUNT(aa.age) FROM " +
                    "(SELECT (SELECT  TIMESTAMPDIFF(YEAR, birthday, CURDATE()) ) AS age FROM com_mng_population WHERE act_id = #{communityId}) AS aa WHERE aa.age > 25 and aa.age<= 35) AS age35," +
                    "(SELECT COUNT(aa.age) FROM " +
                    "(SELECT (SELECT  TIMESTAMPDIFF(YEAR, birthday, CURDATE()) ) AS age FROM com_mng_population WHERE act_id = #{communityId}) AS aa WHERE aa.age > 35 and aa.age<= 45) AS age45," +
                    "(SELECT COUNT(aa.age) FROM " +
                    "(SELECT (SELECT  TIMESTAMPDIFF(YEAR, birthday, CURDATE()) ) AS age FROM com_mng_population WHERE act_id = #{communityId}) AS aa WHERE aa.age > 45 and aa.age<= 55) AS age55," +
                    "(SELECT COUNT(aa.age) FROM " +
                    "(SELECT (SELECT  TIMESTAMPDIFF(YEAR, birthday, CURDATE()) ) AS age FROM com_mng_population WHERE act_id = #{communityId}) AS aa WHERE aa.age > 55) AS age55over")
    Map<String, Long> countByAge(@Param("communityId")Long communityId);
    @Select("SELECT COUNT(id)AS xx," +
            "(SELECT COUNT(id) FROM com_mng_population WHERE culture_level = 2 AND act_id = #{communityId}) as cz," +
            "(SELECT COUNT(id) FROM com_mng_population WHERE culture_level = 3 AND act_id = #{communityId}) as gz," +
            "(SELECT COUNT(id) FROM com_mng_population WHERE culture_level = 4 AND act_id = #{communityId}) as zz," +
            "(SELECT COUNT(id) FROM com_mng_population WHERE culture_level = 5 AND act_id = #{communityId}) as dz," +
            "(SELECT COUNT(id) FROM com_mng_population WHERE culture_level = 6 AND act_id = #{communityId}) as bk," +
            "(SELECT COUNT(id) FROM com_mng_population WHERE culture_level = 7 AND act_id = #{communityId}) as ss," +
            "(SELECT COUNT(id) FROM com_mng_population WHERE culture_level = 8 AND act_id = #{communityId}) as bs," +
            "(SELECT COUNT(id) FROM com_mng_population WHERE culture_level = 9 AND act_id = #{communityId}) as qt" +
            " FROM com_mng_population WHERE culture_level = 1 AND act_id = #{communityId}")
    Map<String, Long> countByCulture(@Param("communityId")Long communityId);
    @Select("select count(user_id) from sys_user where community_id = #{communityId} and type = 1")
    Long countUsedCommunityPopulation(@Param("communityId")Long communityId);
}