44112ace1cda50b3ed3de85f3a607b9d847802a4.svn-base
3.47 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
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<?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.thinkgem.jeesite.test.dao.TestDataDao">
<sql id="testDataColumns">
a.id AS "id",
a.user_id AS "user.id",
a.office_id AS "office.id",
a.area_id AS "area.id",
a.name AS "name",
a.sex AS "sex",
a.in_date AS "inDate",
a.create_by AS "createBy.id",
a.create_date AS "createDate",
a.update_by AS "updateBy.id",
a.update_date AS "updateDate",
a.remarks AS "remarks",
a.del_flag AS "delFlag",
u2.name AS "user.name",
o3.name AS "office.name",
a4.name AS "area.name"
</sql>
<sql id="testDataJoins">
LEFT JOIN sys_user u2 ON u2.id = a.user_id
LEFT JOIN sys_office o3 ON o3.id = a.office_id
LEFT JOIN sys_area a4 ON a4.id = a.area_id
</sql>
<select id="get" resultType="TestData">
SELECT
<include refid="testDataColumns"/>
FROM test_data a
<include refid="testDataJoins"/>
WHERE a.id = #{id}
</select>
<select id="findList" resultType="TestData">
SELECT
<include refid="testDataColumns"/>
FROM test_data a
<include refid="testDataJoins"/>
<where>
a.del_flag = #{DEL_FLAG_NORMAL}
<if test="user != null and user.id != null and user.id != ''">
AND a.user_id = #{user.id}
</if>
<if test="office != null and office.id != null and office.id != ''">
AND a.office_id = #{office.id}
</if>
<if test="area != null and area.id != null and area.id != ''">
AND a.area_id = #{area.id}
</if>
<if test="name != null and name != ''">
AND a.name LIKE
<if test="dbName == 'oracle'">'%'||#{name}||'%'</if>
<if test="dbName == 'mssql'">'%'+#{name}+'%'</if>
<if test="dbName == 'mysql'">concat('%',#{name},'%')</if>
</if>
<if test="sex != null and sex != ''">
AND a.sex = #{sex}
</if>
<if test="beginInDate != null and endInDate != null and beginInDate != '' and endInDate != ''">
AND a.in_date BETWEEN #{beginInDate} AND #{endInDate}
</if>
</where>
<choose>
<when test="page !=null and page.orderBy != null and page.orderBy != ''">
ORDER BY ${page.orderBy}
</when>
<otherwise>
ORDER BY a.update_date DESC
</otherwise>
</choose>
</select>
<select id="findAllList" resultType="TestData">
SELECT
<include refid="testDataColumns"/>
FROM test_data a
<include refid="testDataJoins"/>
<where>
a.del_flag = #{DEL_FLAG_NORMAL}
</where>
<choose>
<when test="page !=null and page.orderBy != null and page.orderBy != ''">
ORDER BY ${page.orderBy}
</when>
<otherwise>
ORDER BY a.update_date DESC
</otherwise>
</choose>
</select>
<insert id="insert">
INSERT INTO test_data(
id,
user_id,
office_id,
area_id,
name,
sex,
in_date,
create_by,
create_date,
update_by,
update_date,
remarks,
del_flag
) VALUES (
#{id},
#{user.id},
#{office.id},
#{area.id},
#{name},
#{sex},
#{inDate},
#{createBy.id},
#{createDate},
#{updateBy.id},
#{updateDate},
#{remarks},
#{delFlag}
)
</insert>
<update id="update">
UPDATE test_data SET
user_id = #{user.id},
office_id = #{office.id},
area_id = #{area.id},
name = #{name},
sex = #{sex},
in_date = #{inDate},
update_by = #{updateBy.id},
update_date = #{updateDate},
remarks = #{remarks}
WHERE id = #{id}
</update>
<update id="delete">
UPDATE test_data SET
del_flag = #{DEL_FLAG_DELETE}
WHERE id = #{id}
</update>
</mapper>