yangys
2024-09-04 04c57331cf84c8f606c2838dcb6fe5463fb9b68c
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
<?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.qianwen.smartman.modules.tpm.mapper.RepairApplyMapper">
 
    <select id="exportApplyVo" resultType="com.qianwen.smartman.modules.tpm.vo.excel.RepairApplyExcelVO"
            parameterType="com.qianwen.smartman.modules.tpm.vo.RepairApplyExportVO">
        select
        r.apply_code as applyCode,
        r.urgency as urgency,
        r.device_code as deviceCode,
        r.device_name as deviceName,
        r.device_type_name as deviceTypeName,
        r.malfunction_time as malfunctionTime,
        r.apply_user_name as applyUserName,
        r.description as description
        from blade_repair_apply r
        where r.is_deleted = 0
        <if test="tenantId != null and tenantId != ''">
            AND r.tenant_id = #{tenantId}
        </if>
        <if test="repairApplyExportVO.deviceTypeId != null">
            AND r.device_type_id = #{repairApplyExportVO.deviceTypeId}
        </if>
 
        <if test="repairApplyExportVO.deviceId != null">
            AND r.device_id = #{repairApplyExportVO.deviceId}
        </if>
        <if test="repairApplyExportVO.applyStatusList != null and repairApplyExportVO.applyStatusList.size() > 0">
            AND r.apply_status IN
            <foreach collection="repairApplyExportVO.applyStatusList" item="item" open="(" separator="," close=")">
                #{item}
            </foreach>
        </if>
        <if test="repairApplyExportVO.keyWord != null and repairApplyExportVO.keyWord != ''">
            AND (r.apply_code like concat(#{repairApplyExportVO.keyWord},'%')
            OR r.device_code like concat(#{repairApplyExportVO.keyWord},'%')
            OR r.device_name like concat(#{repairApplyExportVO.keyWord},'%')
            )
        </if>
        order by r.is_affect asc,isnull(r.urgency),r.urgency desc,r.create_time desc,id desc
    </select>
    <select id="pageRepairApplyToday" resultType="com.qianwen.smartman.modules.tpm.vo.RepairApplyVO">
        select * from blade_repair_apply where is_deleted = 0
        <if test="repairApplySearchVO.applyCode != null and repairApplySearchVO.applyCode != ''">
            AND apply_code like concat(#{repairApplySearchVO.applyCode},'%')
        </if>
        <if test="repairApplySearchVO.deviceCode != null and repairApplySearchVO.deviceCode != ''">
            AND device_code like concat(#{repairApplySearchVO.deviceCode},'%')
        </if>
        <if test="repairApplySearchVO.deviceName != null and repairApplySearchVO.deviceName != ''">
            AND device_name like concat(#{repairApplySearchVO.deviceName},'%')
        </if>
        AND
        (apply_status = 1 OR apply_status = 2)
        order by is_affect asc,urgency desc,malfunction_time asc
    </select>
 
    <select id="getPageApplyForHmi" resultType="com.qianwen.smartman.modules.tpm.vo.RepairApplyVO">
        SELECT bra.*,
               brr.id AS recordId
        FROM blade_repair_apply bra
                 LEFT JOIN blade_repair_record brr ON bra.id = brr.repair_apply_id
            AND brr.is_deleted = 0
        WHERE bra.device_id = #{machineId}
          AND bra.is_deleted = 0
          AND bra.apply_status IN (1, 2, 3)
        ORDER BY bra.is_affect ASC,
                 bra.urgency DESC,
                 bra.create_time DESC,
                 bra.id DESC
    </select>
</mapper>