mitao
2025-02-21 31573d6180d15ef65ed0df9c2732495f40b12663
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
package com.panzhihua.service_community.dao;
 
import java.util.List;
 
import com.panzhihua.common.model.dtos.community.building.BuildingDto;
import com.panzhihua.common.model.dtos.community.large.AreaStreetDetailResp;
import com.panzhihua.common.model.dtos.community.large.SumAreaStreetResp;
import com.panzhihua.common.model.dtos.partybuilding.QryReportResp;
import com.panzhihua.common.model.vos.area.StreetAndBuildVO;
import com.panzhihua.common.model.vos.community.ComActPasswordVo;
import com.panzhihua.common.model.vos.community.bigscreen.ScreenStatics;
import com.panzhihua.common.model.vos.community.screen.event.EventPopulationSpecialStatisticsVO;
import com.panzhihua.common.model.vos.neighbor.UnitActivityAnalysisVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
 
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.dtos.community.PageComActDTO;
import com.panzhihua.common.model.dtos.community.switchs.SearchCommunityDTO;
import com.panzhihua.common.model.vos.community.ComActVO;
import com.panzhihua.common.model.vos.community.ComPopulationActVO;
import com.panzhihua.common.model.vos.community.switchs.CommunitySwitchAllAppletsVO;
import com.panzhihua.common.model.vos.community.switchs.StreetAllAppletsVO;
import com.panzhihua.common.model.vos.grid.EventGridCommunityAdminVO;
import com.panzhihua.service_community.model.dos.ComActDO;
 
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: 社区
 * @author: huang.hongfa weixin hhf9596 qq 959656820
 * @create: 2020-12-07 14:13
 **/
@Mapper
public interface ComActDAO extends BaseMapper<ComActDO> {
    // @Select("<script> " +
    // " <where>" +
    // "<if test='nameCn != null and nameCn.trim() != &quot;&quot;'>" +
    // " </if> " +
    // "<if test='nameCn != null and nameCn.trim() != &quot;&quot;'>" +
    // " </if> " +
    // "<if test='nameCn != null and nameCn.trim() != &quot;&quot;'>" +
    // " </if> " +
    // " </where>" +
    // "</script>")
 
    @Select("<script> " + "SELECT\n" + "c.community_id,\n" + "c.`name`,\n"
        + "ST_Distance_Sphere ( Point ( #{lng}, #{lat} ), Point ( c.lng, c.lat ) ) AS distance \n" + "FROM\n"
        + "com_act c \n" + " <where>" + "<if test='areaCode != null and areaCode.trim() != &quot;&quot;'>"
        + "c.area_code = #{areaCode} \n" + " </if> " + " </where>" + "ORDER BY\n" + "distance ASC"
        + "<if test='lng != null and lng.trim() != &quot;&quot;'>" + " limit 100 " + " </if> " + "</script>")
    List<ComActVO> listCommunity(ComActVO comActVO);
 
    @Select("select district_name from com_mng_struct_area_district where district_adcode=#{areaCode}")
    String selectAreaName(String areaCode);
 
    @Select("<script> " + "SELECT\n" + "a.* \n" + "FROM\n" + "com_act a \n" + " <where>"
        + "<if test='pageComActDTO.name != null and pageComActDTO.name.trim() != &quot;&quot;'>"
        + "and a.name LIKE concat( #{pageComActDTO.name}, '%' ) \n" + " </if> "
        + "<if test='pageComActDTO.areaCode != null and pageComActDTO.areaCode.trim() != &quot;&quot;'>"
        + "AND a.area_code = #{pageComActDTO.areaCode} \n" + " </if> "
        + "<if test='pageComActDTO.createAtBegin != null '>"
            + "AND a.create_at BETWEEN "
        + "#{pageComActDTO.createAtBegin} \n" + "AND #{pageComActDTO.createAtEnd}" + " </if> " + " </where>"
        + " order by a.create_at desc" + "</script>")
    IPage<ComActVO> pageCommunity(Page page, @Param("pageComActDTO") PageComActDTO pageComActDTO);
 
    @Update("update sys_user u set u.password=#{password} where u.account=#{account} and u.type=3 and u.community_id = ${communityId}")
    void updateAccountPassword(@Param("password") String password, @Param("account") String account,
        @Param("communityId") Long communityId);
 
    @Select("select community_id,`name`,lng,lat from com_act where state = 0 and app_id =#{appId}")
    List<EventGridCommunityAdminVO> getCommunityLists(@Param("appId") String appId);
 
    @Select("select ca.`name`,cmsap.province_name,cmsac.city_name,cmsad.district_name,ca.street_id,ca.community_id,cs.`name` as streetName from com_act as ca \n"
        + "left join com_mng_struct_area_province as cmsap on cmsap.province_adcode = ca.province_code\n"
        + "left join com_mng_struct_area_city as cmsac on cmsac.city_adcode = ca.city_code\n"
        + "left join com_mng_struct_area_district as cmsad on cmsad.district_adcode = ca.area_code\n"
        + "left join com_street as cs on cs.street_id = ca.street_id\n" + "where ca.community_id = ${communityId}")
    ComPopulationActVO getPopulationActById(@Param("communityId") Long communityId);
 
    @Select("select `name`,street_id from com_street where app_id = #{appId}")
    List<StreetAllAppletsVO> getStreetList(String appId);
 
    @Select("select ca.`name`,ca.street_id,ca.community_id,cs.`name` as streetName from com_act as ca left join com_street as cs on cs.street_id = ca.street_id where ca.state = 0 and ca.street_id = #{streetId}")
    List<CommunitySwitchAllAppletsVO> getCommunityListByStreetId(@Param("streetId") Long streetId);
 
//    @Select("<script> select ca.`name`,ca.street_id,ca.community_id,cs.`name` as streetName " +
//            "from com_act as ca " +
//            "left join com_street as cs on cs.street_id = ca.street_id " +
//            "where ca.state = 0 and ca.name like concat('%',#{name},'%') <if test='appId !=null and appId !=&quot;&quot;'> and cs.app_id = #{appId} </if> </script> ")
    List<CommunitySwitchAllAppletsVO> getCommunityListByName(@Param("name") String name,@Param("appId") String appId);
 
    @Select("SELECT   c.community_id,    c.`name`,    c.street_id,    cs.`name` as streetName," +
            "round( ST_Distance_Sphere ( Point ( #{communityDTO.longitude}, #{communityDTO.latitude} ), Point ( c.lng, c.lat ) )/ 1000, 2 ) AS distance  " +
            "FROM    com_act c     left join com_street as cs on cs.street_id = c.street_id  " +
            "where cs.area_code = #{communityDTO.areaCode} " +
            "HAVING distance >= 0 and distance <= #{communityDTO.distance}   ORDER BY    distance ASC")
    List<CommunitySwitchAllAppletsVO> getCommunityListByNearby(@Param("communityDTO") SearchCommunityDTO communityDTO);
 
    @Select("<script> select community_id,name,lng,lat from com_act  where state = 0 <if test='areaCode !=null and areaCode !=&quot;&quot;'> and area_code = #{areaCode} </if> </script>")
    List<EventGridCommunityAdminVO> getWestCommunityLists(@Param("areaCode") String areCode);
 
    @Select("select account,plaintext_password as password from com_act where community_id = #{communityId}")
    ComActPasswordVo getCommunityPassword(@Param("communityId") Long communityId);
 
    @Select("select name from com_pb_check_unit where id=#{id}")
    String getUnitName(@Param("id") Long unitId);
 
    @Select("select count(id) from com_pb_check_unit")
    Integer getUnitCount();
 
    @Select("select count(id) from com_pb_member where audit_result=1")
    Integer selectUnitCount();
 
    @Select("select count(id) from com_pb_check_unit")
    Integer selectMemberCount();
 
    @Select("select name from com_pb_check_unit where id=#{id}")
    String selectUnitName(@Param("id") Long id);
 
    @Select("select community_id from com_act where street_id=#{id}")
    List<Long> selectCommunityByStreetId(Long id);
    @Select("SELECT  caa.community_id FROM com_act caa WHERE caa.`name` = ( select ca.`name` FROM com_act ca WHERE ca.community_id =#{id})")
    List<Long> selectIds(@Param("id") Long id);
 
 
    /**
     * 统计全部社区/村落数量
     * @return
     */
    @Select("SELECT count(1) FROM `com_act` WHERE app_id = 'wx118de8a734d269f0' and community_id not in ( 11 ,22)")
    Integer countCommunity();
 
    /**
     * 统计实有人口数
     * @return
     */
    @Select(" SELECT count(1) FROM com_mng_population WHERE death = 0")
    Integer countPopulation();
 
    /**
     * 统计实有房屋数
     * @return
     */
    @Select(" SELECT count(1) FROM com_mng_population_house")
    Integer countPopulationHouse();
 
 
    /**
     * 统计报道在职干部 西区+花城
     * @return
     */
    @Select("  SELECT sum(a.member) FROM (SELECT count(1) member FROM com_pb_member union all  SELECT count(1) member FROM com_pb_member_west) a")
    Integer countPbMember();
    /**
     * 统计报到单位
     * @return
     */
    @Select("  SELECT count(1) FROM com_pb_check_unit")
    Integer countPbUnit();
 
    /**
     * 统计商家
     * @return
     */
    @Select(" SELECT count(1) FROM com_convenient_merchants WHERE is_del = 0")
    Integer countMerchants();
 
    /**
     * 统计自愿者
     * @return
     */
    @Select("SELECT count(1) FROM sys_user WHERE is_volunteer = 1")
    Integer countVolunteer();
 
    /**
     * 统计社会组织
     * @return
     */
    @Select("SELECT count(1) FROM com_act_social_org")
    Integer countSocialOrg();
 
    @Select("select * from com_act where area_code = #{areaCode}")
    List<ComActVO> panzhihuaMap(@Param("areaCode")String areaCode);
 
    List<StreetAndBuildVO> oneTagThreeReal(@Param("streetId") Long streetId);
 
    ScreenStatics getScreenStatics();
 
    EventPopulationSpecialStatisticsVO getPopulationSpecial(@Param("streetId") Long streetId);
 
    Integer getPopulationAge(@Param("streetId") Long streetId, @Param("age") Integer age);
 
    List<UnitActivityAnalysisVO>  institutionalUnitServiceAnalysis(@Param("beginTime") String beginTime, @Param("endTime") String endTIme);
 
    List<UnitActivityAnalysisVO>  institutionalUnitActivityAnalysis(@Param("beginTime") String beginTime, @Param("endTime") String endTIme);
 
    @Select("SELECT count(1) FROM com_pb_check_unit WHERE belong_to = #{belongTo}")
    Integer arriveUnit(@Param("belongTo") String belongTo);
 
    SumAreaStreetResp sumAreaStreet();
 
    AreaStreetDetailResp selectVillage(@Param("ids") List<Long> ids,@Param("type") String type);
 
    EventPopulationSpecialStatisticsVO selectEvent(@Param("ids") List<Long> ids);
 
    List<QryReportResp> qryReport(String yearTime);
}