linwe
2024-08-09 8b7258c9427882bb1798f1502eaa35184c6e374e
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
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.springblade.modules.property.mapper.PropertyCompanyDistrictMapper">
 
    <!-- 通用查询映射结果 -->
    <resultMap id="propertyCompanyDistrictResultMap"
               type="org.springblade.modules.property.entity.PropertyCompanyDistrictEntity">
        <result column="id" property="id"/>
        <result column="property_company_id" property="propertyCompanyId"/>
        <result column="district_id" property="districtId"/>
        <result column="principal" property="principal"/>
        <result column="principal_phone" property="principalPhone"/>
        <result column="server_num" property="serverNum"/>
        <result column="butler_num" property="butlerNum"/>
        <result column="satisfaction" property="satisfaction"/>
        <result column="property_stage" property="propertyStage"/>
        <result column="start_time" property="startTime"/>
        <result column="end_time" property="endTime"/>
        <result column="remark" property="remark"/>
        <result column="create_user" property="createUser"/>
        <result column="create_time" property="createTime"/>
        <result column="update_user" property="updateUser"/>
        <result column="update_time" property="updateTime"/>
        <result column="is_deleted" property="isDeleted"/>
    </resultMap>
 
    <!--自定义分页查询-->
    <select id="selectPropertyCompanyDistrictPage"
            resultType="org.springblade.modules.property.vo.PropertyCompanyDistrictVO">
        select
        jpcd.*,
        jd.name as districtName,
        jpc.name as propertyCompanyName,
        br.name communityName,
        br.name streetName,
        jg.grid_name,
        bu.name principalName
        FROM
        jczz_property_company_district jpcd
        LEFT JOIN jczz_district jd ON jd.id = jpcd.district_id AND jd.is_deleted = 0
        LEFT JOIN jczz_property_company jpc ON jpc.id = jpcd.property_company_id AND jpc.is_deleted = 0
        LEFT JOIN blade_region br on br.code= jd.community_code
        LEFT JOIN jczz_grid_range jgr on jgr.district_code=jd.id
        LEFT JOIN jczz_grid jg on jg.id = jgr.grid_id
        LEFT JOIN blade_user bu on bu.id = jpcd.principal
        where jpcd.is_deleted = 0
        <if test="propertyCompanyDistrict.communityName!=null and propertyCompanyDistrict.communityName!=''">
            and br.name like concat('%', #{propertyCompanyDistrict.communityName},'%')
        </if>
 
        <if test="propertyCompanyDistrict.streetName!=null and propertyCompanyDistrict.streetName!=''">
            and br.name like concat('%', #{propertyCompanyDistrict.streetName},'%')
        </if>
 
        <if test="propertyCompanyDistrict.gridName!=null and propertyCompanyDistrict.gridName!=''">
            and jg.grid_name like concat('%', #{propertyCompanyDistrict.gridName},'%')
        </if>
 
        <if test="propertyCompanyDistrict.propertyCompanyId!=null">
            and jpcd.property_company_id = #{propertyCompanyDistrict.propertyCompanyId}
        </if>
 
        <if test="propertyCompanyDistrict.districtId!=null">
            and jpcd.district_id = #{propertyCompanyDistrict.districtId}
        </if>
        <if test="propertyCompanyDistrict.propertyStage!=null">
            and jpcd.property_stage = #{propertyCompanyDistrict.propertyStage}
        </if>
        <if test="propertyCompanyDistrict.deptId!=null and propertyCompanyDistrict.deptId != ''">
            and jpc.dept_id = #{propertyCompanyDistrict.deptId}
        </if>
        <if test="propertyCompanyDistrict.principal!=null and propertyCompanyDistrict.principal!=''">
            and jpcd.principal like concat('%',#{propertyCompanyDistrict.principal},'%')
        </if>
        <if test="propertyCompanyDistrict.districtName!=null and propertyCompanyDistrict.districtName!=''">
            and jd.name like concat('%',#{propertyCompanyDistrict.districtName},'%')
        </if>
        <if test="propertyCompanyDistrict.propertyCompanyName!=null and propertyCompanyDistrict.propertyCompanyName!=''">
            and jpc.name like concat('%',#{propertyCompanyDistrict.propertyCompanyName},'%')
        </if>
        <if test="propertyCompanyDistrict.districtIds != null and propertyCompanyDistrict.districtIds.size()>0">
            and jpcd.district_id in
            <foreach collection="propertyCompanyDistrict.districtIds" item="id" open="(" close=")" separator=",">
                #{id}
            </foreach>
        </if>
    </select>
 
    <select id="getDistictUserByCode" resultType="org.springblade.modules.system.vo.UserVO">
        SELECT bu.*,
               jpc.name distictName
        FROM blade_user bu
                 LEFT JOIN jczz_property_district_user jpdu ON bu.id = jpdu.user_id and bu.is_deleted = 0
                 LEFT JOIN jczz_property_company_district jpcd ON jpdu.property_company_district_id = jpcd.id
                 LEFT JOIN jczz_property_company jpc on jpc.id = jpcd.property_company_id
                 LEFT JOIN jczz_district jd ON jd.id = jpcd.district_id
                 LEFT JOIN jczz_doorplate_address jda ON jda.aoi_code = jd.aoi_code
        WHERE jda.address_code = #{houseCode}
          and bu.is_deleted = 0
    </select>
 
 
</mapper>