101captain
2021-12-23 5a8a90c095280fbd2106869ecd2bad10e01a57a6
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngPopulationDAO.java
@@ -7,6 +7,10 @@
import com.panzhihua.common.model.dtos.community.CascadeHouseDTO;
import com.panzhihua.common.model.dtos.property.CommonPage;
import com.panzhihua.common.model.vos.community.*;
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.BaseInfo;
import com.panzhihua.common.model.vos.community.bigscreen.IndexDynamic;
import com.panzhihua.service_community.model.dos.ComMngPopulationCommunityTagsDO;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
@@ -25,8 +29,6 @@
import com.panzhihua.common.model.dtos.grid.admin.PageComMngVillagePopulationDTO;
import com.panzhihua.common.model.dtos.user.PageInputUserDTO;
import com.panzhihua.common.model.vos.area.AreaAddressVO;
import com.panzhihua.common.model.vos.community.screen.civil.CivilPopulationStatisticsVO;
import com.panzhihua.common.model.vos.community.screen.civil.CivilVillageStatisticsVO;
import com.panzhihua.common.model.vos.community.screen.event.*;
import com.panzhihua.common.model.vos.community.screen.index.*;
import com.panzhihua.common.model.vos.grid.EventGridDataVO;
@@ -117,6 +119,8 @@
        + "AND cmp.unit_no = #{comMngPopulationVO.unitNo} " + " </if> "
        + "<if test='comMngPopulationVO.houseNo != null and comMngPopulationVO.houseNo != &quot;&quot;'>"
        + "AND cmp.house_no = #{comMngPopulationVO.houseNo} " + " </if> "
        + "<if test='comMngPopulationVO.isDeath != null'>"
        + "AND cmp.death = #{comMngPopulationVO.isDeath} " + " </if> "
        + "<if test='comMngPopulationVO.sex != null and comMngPopulationVO.sex != &quot;&quot;'>"
        + "AND cmp.sex = #{comMngPopulationVO.sex} " + " </if> "
        + "<if test='comMngPopulationVO.ageStartTime != null and comMngPopulationVO.ageStartTime != &quot;&quot; and comMngPopulationVO.ageEndTime == null'>"
@@ -151,6 +155,13 @@
     */
    IPage<InputUserInfoVO> specialInputUser(Page page, @Param("pageInputUserDTO") PageInputUserDTO pageInputUserDTO);
    /**
     *
     * @param pageInputUserDTO
     * @return
     */
    List<InputUserInfoVO> specialInputUserExport(@Param("pageInputUserDTO") PageInputUserDTO pageInputUserDTO);
    @Select("<script> "
        + "select id,tag_name,community_id,create_at,sys_flag from com_mng_user_tag <where> "
        + "<if test='comMngUserTagDTO.tagName != null and comMngUserTagDTO.tagName != &quot;&quot;'>"
@@ -179,7 +190,7 @@
        + ",(select count(cmpct.id) from com_mng_population_community_tags cmpct left join com_mng_population cmp on cmpct.population_id = cmp.id where cmpct.community_id = #{communityId} and cmp.out_or_local = 1) as localTotal "
        + ",(select count(cmpct.id) from com_mng_population_community_tags cmpct left join com_mng_population cmp on cmpct.population_id = cmp.id where cmpct.community_id = #{communityId} and cmp.out_or_local = 2) as outTotal "
        + ",(select count(cmpct.id) from com_mng_population_community_tags cmpct left join com_mng_population cmp on cmpct.population_id = cmp.id where cmpct.community_id = #{communityId} and cmpct.label is not null) as specialTotal "
        + ",(select count(village_id) from com_mng_village where community_id = #{communityId}) as villageTotal "
        + ",(select count(DISTINCT `name`) from com_mng_village where community_id = #{communityId}) as villageTotal "
        + ",(select count(id) from com_mng_population_community_tags where community_id = #{communityId} and label LIKE CONCAT('%','吸毒人员','%')) as drugTotal "
        + ",(select count(id) from com_mng_population_community_tags where community_id = #{communityId} and label LIKE CONCAT('%','社区矫正','%')) as correctTotal "
        + ",(select count(id) from com_mng_population_community_tags where community_id = #{communityId} and label LIKE CONCAT('%','精神障碍患者','%')) as majorTotal "
@@ -197,18 +208,15 @@
    @Select("select count(id) as populationTotal," +
            "IFNULL((select count(id) from com_mng_population_house where community_id = cmpct.community_id),0) as houseTotal, " +
            "IFNULL((select count(id) from com_mng_real_company where community_id = cmpct.community_id),0) as companyTotal, " +
            "IFNULL((select count(village_id) from com_mng_village where community_id = cmpct.community_id),0) as villageTotal " +
            "IFNULL((select count(DISTINCT `name`) from com_mng_village where community_id = cmpct.community_id),0) as villageTotal " +
            " from com_mng_population_community_tags AS cmpct " +
            " where cmpct.community_id = #{communityId}")
    IndexBasicsStatisticsVO getScreenIndexByBasics(@Param("communityId") Long communityId);
    @Select("SELECT " + " IFNULL( NULL, 1 ) AS type, " + " count( cmpct.id ) AS sum  " + "FROM "
        + " com_mng_population_community_tags as cmpct  "
        + " left join com_mng_population  as cmp on cmpct.population_id = cmp.id " + "WHERE " + " cmp.sex = 1  "
        + " AND cmpct.community_id = #{communityId} UNION ALL " + "SELECT " + " IFNULL( NULL, 2 ) AS type, "
        + " count( cmpct.id ) AS sum  " + "FROM " + " com_mng_population_community_tags as cmpct  "
        + " left join com_mng_population  as cmp on cmpct.population_id = cmp.id " + "WHERE " + " cmp.sex = 2  "
        + " AND cmpct.community_id = #{communityId}")
    @Select("SELECT    cmp.sex as type,    count( cmpct.id ) AS sum,  count( cmpct.id )*100/(select count(*) from com_mng_population_community_tags as cmpct  \n" +
            "          left join com_mng_population  as cmp on cmpct.population_id = cmp.id   WHERE    cmpct.community_id = #{communityId} ) as percent    FROM \n" +
            "          com_mng_population_community_tags as cmpct  \n" +
            "          left join com_mng_population  as cmp on cmpct.population_id = cmp.id   WHERE cmp.sex is not null  and  cmpct.community_id = #{communityId} GROUP BY cmp.sex")
    List<IndexPopulationSexStatisticsVO> getScreenIndexByPopulationSex(@Param("communityId") Long communityId);
    @Select("SELECT " + " e.happen_time as createAt, " + " e.event_des, " + " e.event_deal_status  " + "FROM "
@@ -240,8 +248,8 @@
        + "   event_category = 1  " + "   AND event_type = 6  " + "   AND event_status = 2  "
        + "   AND egd3.grid_community_id = #{communityId}  " + "   ), " + "  0  " + " ) AS eventTSTotal, "
        + " IFNULL(( " + "  SELECT " + "   count( e4.id )  " + "  FROM " + "   `event` AS e4 "
        + "   LEFT JOIN event_grid_data AS egd4 ON egd4.id = e4.grid_id  " + "  WHERE " + "   event_category = 1  "
        + "   AND event_type = 4  " + "   AND event_status = 2  " + "   AND egd4.grid_community_id = #{communityId}  "
        + "   LEFT JOIN event_grid_data AS egd4 ON egd4.id = e4.grid_id  " + "  WHERE " + "   event_category = 2  "
        + "   AND event_status = 2  " + "   AND egd4.grid_community_id = #{communityId}  "
        + "   ), " + "  0  " + " ) AS eventBWDTotal, " + " IFNULL(( " + "  SELECT " + "   count( e5.id )  " + "  FROM "
        + "   `event` AS e5 " + "   LEFT JOIN event_grid_data AS egd5 ON egd5.id = e5.grid_id  " + "  WHERE "
        + "   event_category = 1  " + "   AND event_type = 2  " + "   AND event_status = 2  "
@@ -271,6 +279,10 @@
    @Select("SELECT " + " count( id )  " + "FROM " + " com_mng_population_community_tags  " + "WHERE "
        + " community_id = #{communityId} and label like concat('%',#{label},'%')")
    Integer getSpecialStatisticsByLabel(@Param("label") String label,@Param("communityId") Long communityId);
    @Select("SELECT " + " count( id )  " + "FROM " + " com_mng_population_community_tags  " + "WHERE "
            + " community_id = #{communityId} ")
    Integer getSpecialStatistics(@Param("communityId") Long communityId);
    @Select("<script> " + "SELECT " + " count( egd.id ) AS gridTotal, "
        + " ( select count(egmr.id) from event_grid_member_relation as egmr"
@@ -328,7 +340,7 @@
        + "FROM " + " event_grid_data AS egd  " + "WHERE " + " egd.grid_community_id = #{communityId}")
    List<EventGridStatisticsVO> getEventScreenGridData(@Param("communityId") Long communityId);
    @Select("<script> " + "SELECT " + " event_type AS type, " + " e.id AS eventId, " + " happent_lat_lng AS latLng  "
    @Select("<script> " + "(SELECT " + " event_type AS type, " + " e.id AS eventId, " + " happent_lat_lng AS latLng,e.create_at as createAt  "
        + "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 IN ( 1, 2, 3, 4, 5, 6 )  " + " AND e.event_status = 2  "
        + " AND egd.grid_community_id = #{screenEventDTO.communityId}  "
@@ -340,14 +352,14 @@
        + " AND e.event_process_status = #{screenEventDTO.eventProcessStatus} " + " </if> "
        + "<if test='screenEventDTO.redCard != null'>" + " AND e.red_card = #{screenEventDTO.redCard} " + " </if> "
        + "<if test='screenEventDTO.yellowCard != null'>" + " AND e.yellow_card = #{screenEventDTO.yellowCard} "
        + " </if> " + "UNION ALL SELECT " + " IFNULL( NULL, 7 ) AS type, " + " id AS eventId, " + " lng_lat AS latLng  "
        + " </if> )" + "UNION ALL (SELECT " + " IFNULL( NULL, 7 ) AS type, " + " id AS eventId, " + " lng_lat AS latLng,create_at as createAt  "
        + "FROM " + " com_act_easy_photo  " + "WHERE " + " community_id = #{screenEventDTO.communityId}  "
        + "<if test='screenEventDTO.startTime != null and screenEventDTO.startTime != &quot;&quot;'>"
        + " AND create_at <![CDATA[>=]]> #{screenEventDTO.startTime} " + " </if> "
        + "<if test='screenEventDTO.endTime != null and screenEventDTO.endTime != &quot;&quot;'>"
        + " AND create_at <![CDATA[<=]]> #{screenEventDTO.endTime} " + " </if> "
        + "<if test='screenEventDTO.eventProcessStatus != null'>"
        + " AND handle_status = #{screenEventDTO.eventProcessStatus} " + " </if> " + " </script>")
        + " AND handle_status = #{screenEventDTO.eventProcessStatus} " + " </if> )" + "order by createAt desc </script>")
    List<EventGridIncidentStatisticsVO>
        getEventScreenEventList(@Param("screenEventDTO") BigScreenEventDTO screenEventDTO);
@@ -358,7 +370,7 @@
    CivilPopulationStatisticsVO getCivilScreenPopulation(@Param("communityId") Long communityId,
        @Param("lastMonth") Date lastMonth);
    @Select("SELECT `NAME`, " + " user_sum, " + " lng, " + " lat, " + " village_images, " + " village_id  " + "FROM "
    @Select("SELECT `NAME`, " + "user_sum, " + " lng, " + " lat, " + " village_images, " + " village_id  " + "FROM "
        + " com_mng_village AS cmv  " + "WHERE " + " community_id = #{communityId}")
    List<CivilVillageStatisticsVO> getCivilScreenVillageList(@Param("communityId") Long communityId);
@@ -418,7 +430,7 @@
    @Select("SELECT " + " id, " + " su.nick_name AS userName, " + " su.image_url, " + " caep.create_at, "
        + " caep.detail AS eventDes, " + " caep.happen_addr AS happenAddress, " + " caep.lng_lat AS happentLatLng, "
        + " caep.photo_path_list, " + " IFNULL( NULL, 7 ) AS eventType, " + " caep.handle_status AS eventDealStatus  "
        + " caep.photo_path_list, " + " IFNULL( NULL, 7 ) AS eventType, " + " caep.status AS eventDealStatus  "
        + "FROM " + " com_act_easy_photo AS caep " + " LEFT JOIN sys_user AS su ON su.user_id = caep.sponsor_id  "
        + "WHERE " + " id = #{eventId}")
    EventNewStatisticsVO getEventScreenSSPDateil(@Param("eventId") Long eventId);
@@ -606,4 +618,57 @@
     * @param newUnitNo 新单元号
     */
    void updatePopulationUnit(@Param("villageId") Long villageId, @Param("floor") String floor,@Param("oldUnitNo") String oldUnitNo,@Param("newUnitNo") String newUnitNo);
    /**
     * 根据villageId查询特殊人群数
     * @param villageId
     * @param label
     * @return
     */
    Integer selectCountByVillageId(@Param("villageId") Long villageId,@Param("label")String label);
    CivilPartyStatisticsVO getCivilParty(@Param("communityId") Long communityId);
    CivilGovernmentStatisticsVO getCivilGovernment(@Param("communityId") Long communityId);
    CivilGridStatisticsVO getCivilGrid(@Param("communityId") Long communityId);
    CivilConvenienceStatisticsVO getCivilConvenience(@Param("communityId") Long communityId);
    /**
     * 西区治理数据统计
     * @return
     */
    WestScreenStatics westScreenStatics();
    List<EventPopulationBasicsStatisticsVO> getBasicsList(@Param("streetId") Long streetId);
    EventPopulationSpecialStatisticsVO getPopulationSpecial(@Param("streetId") Long streetId);
    List<String> getPopulationListCardNo(@Param("streetId") Long streetId);
    Integer getPopulationAge(@Param("streetId") Long streetId, @Param("age") Integer age);
    List<EventPopulationStreetVO> getComprehensiveStreetList();
    /**
     * 基础数据统计
     * @param communityId
     * @return
     */
    BaseInfo baseInfo(Long communityId);
    /**
     * 业务数据统计
     * @param communityId
     * @return
     */
    IndexDynamic indexDynamic(Long communityId);
    /**
     * 大屏事件数据
     * @param communityId
     * @return
     */
    List<EventGridIncidentStatisticsVO> getGridsGovernanceEventList(@Param("communityId") Long communityId);
}