CompanyDictMapper.xml
4.04 KB
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
<?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="com.subsidy.mapper.CompanyDictMapper">
<select id="allOperators" resultType="com.subsidy.vo.company.OperatorsVO">
SELECT
distinct
t2.id as companyId,
t2.banner,
t2.short_name,
t2.company_name,
t2.logo,
t2.address,
t2.supervise_name,
t2.company_code,
t2.area_name
FROM
company_dict t2
left join company_field_mapping t3 on t2.id = t3.company_id
WHERE
t2.delete_date is null
and t3.delete_date is null
<if test="companyName != null and companyName != ''">
and t2.company_name like concat('%',#{companyName} ,'%')
</if>
<if test="fieldId != null and fieldId != ''">
and t3.field_id = #{fieldId}
</if>
<if test="superviseName != null and superviseName != ''">
and t2.supervise_name =#{superviseName}
</if>
order by t2.id
</select>
<select id="operators" resultType="com.subsidy.vo.company.OperatorsVO">
SELECT
distinct
t2.id as companyId,
IFNULL(t5.user_name,t2.company_name) as user_name,
t2.banner,
t2.short_name,
t2.company_name,
t2.logo,
t2.address,
t2.supervise_name,
t2.company_code,
t2.area_name
FROM
company_dict t2
left join administer_company_mapping t4 on t2.id = t4.company_id
left join company_field_mapping t3 on t2.id = t3.company_id
LEFT JOIN administer t5 on t5.id = t4.administer_id
WHERE
t2.delete_date is null
and t3.delete_date is null
and t4.delete_date is null
and t5.delete_date is null
<if test="companyName != null and companyName != ''">
and t2.company_name like concat('%',#{companyName} ,'%')
</if>
<if test="fieldId != null and fieldId != ''">
and t3.field_id = #{fieldId}
</if>
<if test="superviseName != null and superviseName != ''">
and t2.supervise_name =#{superviseName}
</if>
<if test="userId != null and userId != ''">
and t4.administer_id =#{userId}
</if>
order by t2.id
</select>
<select id="getCompanyMembers" resultType="com.subsidy.vo.company.GetCompanyMembersVO">
SELECT
t.id,
t.user_name,
t.id_card,
ifnull( t.id_card_photo, '尚未完成' ) AS id_card_photo,
t2.company_name,
if(t.first_login =1,'是','否') as first_login,
ifnull( t.check_image, '尚未完成' ) AS check_image,
t.check_time,
t.telephone,
t.account_name,
t5.member_status
FROM
member t
left join ( SELECT
t2.company_id,t2.member_status,t3.member_id
FROM
( SELECT t.member_id, max( t.id ) AS id FROM company_member_mapping t GROUP BY t.member_id ) t3
LEFT JOIN company_member_mapping t2 ON t3.id = t2.id) t5 on t5.member_id = t.id
LEFT JOIN company_dict t2 ON t5.company_id = t2.id
WHERE
t.delete_date IS NULL
AND t2.delete_date IS NULL
<if test="companyId != null and companyId != ''">
and t5.company_id = #{companyId}
</if>
<if test="userName != null and userName != ''">
and (t.user_name like concat('%',#{userName} ,'%') or t.telephone like concat('%',#{userName} ,'%') )
</if>
<if test="memberStatus != null and memberStatus != ''">
and t5.member_status = #{memberStatus}
</if>
and t.member_type = 2
and t.id not in (SELECT
t.member_id
FROM
service_member_mapping t
WHERE
t.delete_date IS NULL
AND t.service_id = 4
<if test="companyId != null and companyId != ''">
AND t.company_id =#{companyId}
</if>
)
</select>
</mapper>