liujie
2 天以前 39f8c0490eca08cd4fbde6c3518025c51edba204
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
<?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.ruoyi.system.mapper.TMissionMapper">
 
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.ruoyi.system.model.TMission">
        <id column="id" property="id" />
        <result column="urgency_level" property="urgencyLevel" />
        <result column="address" property="address" />
        <result column="mission_lon" property="missionLon" />
        <result column="mission_lat" property="missionLat" />
        <result column="mission_content" property="missionContent" />
        <result column="mission_audio" property="missionAudio" />
        <result column="mission_pictures" property="missionPictures" />
        <result column="mission_electronic" property="missionElectronic" />
        <result column="status" property="status" />
        <result column="mission_type_id" property="missionTypeId" />
        <result column="commit_user_name" property="commitUserName" />
        <result column="commit_time" property="commitTime" />
        <result column="commit_user_id" property="commitUserId" />
        <result column="commit_type" property="commitType" />
        <result column="address_score" property="addressScore" />
        <result column="time_score" property="timeScore" />
        <result column="person_count_score" property="personCountScore" />
        <result column="equipment_score" property="equipmentScore" />
        <result column="attempt_score" property="attemptScore" />
        <result column="assign_time" property="assignTime" />
        <result column="receive_time" property="receiveTime" />
        <result column="finish_time" property="finishTime" />
        <result column="is_mission_pool" property="isMissionPool" />
        <result column="create_time" property="createTime" />
        <result column="update_time" property="updateTime" />
        <result column="create_by" property="createBy" />
        <result column="update_by" property="updateBy" />
        <result column="disabled" property="disabled" />
    </resultMap>
 
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, urgency_level, address, mission_lon, mission_lat, mission_content, mission_audio, mission_pictures,
          mission_electronic, status, mission_type_id, commit_user_name, commit_time, commit_user_id, commit_type,
          address_score, time_score, person_count_score, equipment_score, attempt_score,assign_time,receive_time,
          finish_time,is_mission_pool, create_time,update_time, create_by, update_by, disabled
    </sql>
    <select id="pageNowList" resultType="com.ruoyi.system.model.TMission">
        select t1.id as userMissionId,t2.* from t_mission_user t1 left join t_mission t2 on t1.mission_id =t2.id
        where t1.status =0 and t1.app_user_id = #{userId}
        order by t2.create_time desc
    </select>
    <select id="pageHistoryList" resultType="com.ruoyi.system.model.TMission">
        select t2.*,t1.score,t1.status missionStatus from t_mission_user t1 left join t_mission t2 on t1.mission_id =t2.id
        where t1.status !=0 and t1.app_user_id = #{userId}
        order by t2.create_time desc
    </select>
    <select id="pageListAssigned" resultType="com.ruoyi.system.vo.TMissionVO">
        select tm.id, tm.urgency_level, tm.address, tm.mission_lon, tm.mission_lat, tm.mission_content, tm.mission_audio, tm.mission_pictures,
               tm.mission_electronic, tm.status, tm.mission_type_id, tm.assign_time,tm.receive_time,tm.finish_time,tmu.app_user_id,
               tau.nick_name as chargePerson,(tm.address_score, tm.time_score, tm.person_count_score, tm.equipment_score, tm.attempt_score) as missionScore
        from t_mission tm
        left join t_mission_user tmu on tm.id = tmu.mission_id and tmu.user_type = 1
        left join t_app_user tau on tau.id = tmu.app_user_id
        <where>
            <if test="query.urgencyLevel != null">
                and tm.urgency_level = #{query.urgencyLevel}
            </if>
            <if test="query.missionContent != null and query.missionContent != ''">
                and tm.mission_content like concat('%',#{query.missionContent},'%')
            </if>
            <if test="query.chargePerson != null and query.chargePerson != ''">
                and tau.nick_name like concat('%',#{query.chargePerson},'%')
            </if>
            <if test="query.status != null">
                and tm.status = #{query.status}
            </if>
            AND tm.is_mission_pool = 0
            AND tm.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
        </where>
        order by tm.create_time desc
    </select>
    <select id="pageListReassignAudit" resultType="com.ruoyi.system.vo.TMissionReassignVO">
        select
        tmr.id, tmr.mission_id, tmr.support_person_count, tmr.remark,tmr.reassign_type, tm.urgency_level, tm.mission_content, tm.mission_audio,
        tm.mission_pictures,tm.status, tmu.app_user_id,tau.nick_name as chargePerson
        from t_mission_reassign tmr
        left join t_mission tm on tmr.mission_id = tm.id
        left join t_mission_user tmu on tm.id = tmu.mission_id and tmu.user_type = 1
        left join t_app_user tau on tau.id = tmu.app_user_id
        <where>
            <if test="query.urgencyLevel != null">
                and tm.urgency_level = #{query.urgencyLevel}
            </if>
            <if test="query.missionContent != null and query.missionContent != ''">
                and tm.mission_content like concat('%',#{query.missionContent},'%')
            </if>
            <if test="query.chargePerson != null and query.chargePerson != ''">
                and tau.nick_name like concat('%',#{query.chargePerson},'%')
            </if>
            <if test="query.status != null">
                and tm.status = #{query.status}
            </if>
            <if test="query.reassignType != null">
                and tmr.reassign_type = #{query.reassignType}
            </if>
            AND tm.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
        </where>
        order by tmr.commit_time desc
    </select>
    <select id="pageListMissionPool" resultType="com.ruoyi.system.vo.TMissionVO">
        select tm.id, tm.urgency_level, tm.address, tm.mission_lon, tm.mission_lat, tm.mission_content, tm.mission_audio, tm.mission_pictures,
        tm.mission_electronic, tm.status, tm.mission_type_id, tm.assign_time,tm.receive_time,tm.finish_time,tmu.app_user_id,
        tau.nick_name as chargePerson,(tm.address_score, tm.time_score, tm.person_count_score, tm.equipment_score, tm.attempt_score) as missionScore
        from t_mission tm
        left join t_mission_user tmu on tm.id = tmu.mission_id and tmu.user_type = 1
        left join t_app_user tau on tau.id = tmu.app_user_id
        <where>
            <if test="query.urgencyLevel != null">
                and tm.urgency_level = #{query.urgencyLevel}
            </if>
            <if test="query.missionContent != null and query.missionContent != ''">
                and tm.mission_content like concat('%',#{query.missionContent},'%')
            </if>
            <if test="query.chargePerson != null and query.chargePerson != ''">
                and tau.nick_name like concat('%',#{query.chargePerson},'%')
            </if>
            <if test="query.status != null">
                and tm.status = #{query.status}
            </if>
            and tm.status in (1,2)
            AND tm.is_mission_pool = 1
            AND tm.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
        </where>
        order by tm.create_time desc
    </select>
 
</mapper>