linwe
2024-05-29 c10d6358b9f014375a13821465bc978d0c0da22e
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
<?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.messageRecord.mapper.MessageUserMapper">
 
 
    <select id="getPage" resultType="org.springblade.modules.messageRecord.vo.MessageUserVO">
 
        SELECT
        bmu.*,
        bmr.title,bmr.content,bmr.create_time as sendTime,bmr.create_user as sendUserId,
        bu.real_name as sendUserName,
        bu1.real_name as receiveUserName
        FROM blade_message_user bmu
        LEFT JOIN blade_message_record bmr ON bmr.id = bmu.message_record_id
        LEFT JOIN blade_user bu ON bu.id = bmr.create_user
        LEFT JOIN blade_user bu1 ON bu1.id = bmu.user_id
        where 1=1
        <if test="vo.userId != null and vo.userId !=''">
            and bmu.user_id = #{vo.userId}
        </if>
        <if test="vo.type != null and vo.type !=''">
            AND bmu.type LIKE CONCAT('%',#{vo.type},'%')
        </if>
 
        <if test="vo.title != null and vo.title !=''">
            AND bmr.title LIKE CONCAT('%',#{vo.title},'%')
        </if>
 
        <if test="vo.sendStatus != null and vo.sendStatus !=''">
            AND bmu.send_status  = #{vo.sendStatus}
        </if>
 
        <if test="vo.content != null and vo.content !=''">
            AND bmr.content LIKE CONCAT('%',#{vo.content},'%')
        </if>
        <if test="vo.sendUserId != null and vo.sendUserId !=''">
            AND bmr.create_user = #{vo.sendUserId}
        </if>
        <if test="vo.sendUserName != null and vo.sendUserName !=''">
            AND bu.real_name LIKE CONCAT('%',#{vo.sendUserName},'%')
        </if>
        <if test="vo.receiveUserName != null and vo.receiveUserName !=''">
            AND bu1.real_name LIKE CONCAT('%',#{vo.receiveUserName},'%')
        </if>
        ORDER BY bmu.create_time DESC
    </select>
 
 
    <select id="getMySendMessage" resultType="org.springblade.modules.messageRecord.vo.MessageUserVO">
        SELECT
        bmu.*,
        bmr.title,bmr.content,bmr.create_time as time,
        bu.real_name as userName,
        bd.dept_name as deptName,
        bd.id as deptId
        FROM blade_message_user bmu
        LEFT JOIN blade_message_record bmr ON bmr.id = bmu.message_record_id
        LEFT JOIN blade_user bu ON bu.id = bmu.user_id
        LEFT JOIN blade_dept bd ON bu.dept_id = bd.id
        where 1=1
        <if test="vo.userId != null and vo.userId !=''">
            and bmr.create_user = #{vo.userId}
        </if>
        <if test="vo.type != null and vo.type !=''">
            AND bmu.type LIKE CONCAT('%',#{vo.type},'%')
        </if>
 
        <if test="vo.title != null and vo.title !='' ">
            and bmr.title LIKE CONCAT('%',#{vo.title},'%')
        </if>
        <if test="vo.startTime!=null and vo.startTime!=''">
            AND date_format(bmr.create_time,'%Y-%m-%d')&gt;= #{vo.startTime}
        </if>
        <if test="vo.endTime!=null and vo.endTime!=''">
            AND date_format(bmr.create_time,'%Y-%m-%d')&lt;= #{vo.endTime}
        </if>
 
        ORDER BY bmu.create_time DESC
    </select>
    <select id="getMyReceiveMessage" resultType="org.springblade.modules.messageRecord.vo.MessageUserVO">
        SELECT
        bmu.id,
        bmu.message_record_id,
        bmu.is_read,
        bmu.type,
        bmu.email,
        bmu.phone,
        bmu.create_time,
        bmu.update_time,
        bmr.title,
        bmr.content,
        bmr.create_time as time,
        bmr.create_user as userId,
        bu.real_name as userName,
        bd.dept_name as deptName,
        bd.id as deptId
        FROM blade_message_user bmu
        LEFT JOIN blade_message_record bmr ON bmr.id = bmu.message_record_id
        LEFT JOIN blade_user bu ON bu.id = bmr.create_user
        LEFT JOIN blade_dept bd ON bu.dept_id = bd.id
        where 1=1
        <if test="vo.userId != null and vo.userId !=''">
            and bmu.user_id = #{vo.userId}
        </if>
        <if test="vo.type != null and vo.type !=''">
            AND bmu.type LIKE CONCAT('%',#{vo.type},'%')
        </if>
        <if test="vo.title != null and vo.title !='' ">
            and bmr.title LIKE CONCAT('%',#{vo.title},'%')
        </if>
 
        <if test="vo.startTime!=null and vo.startTime!=''">
            AND date_format(bmr.create_time,'%Y-%m-%d')&gt;= #{vo.startTime}
        </if>
        <if test="vo.endTime!=null and vo.endTime!=''">
            AND date_format(bmr.create_time,'%Y-%m-%d')&lt;= #{vo.endTime}
        </if>
        <if test="vo.isRead != null and vo.isRead !=''">
            AND is_read = #{vo.isRead}
        </if>
 
        ORDER BY bmu.create_time DESC
    </select>
</mapper>