liusuyi
2026-06-01 3496700a5ba18be8ca0590a79e21a867782d1ea9
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
<?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.ard.work.point.well.mapper.ArdWellGuideCameraMapper">
 
    <resultMap type="ArdWellGuideCamera" id="ArdWellGuideCameraResult">
        <result property="id" column="id"/>
        <result property="cameraId" column="camera_id"/>
        <result property="chanNo" column="chan_no"/>
        <result property="p" column="p"/>
        <result property="t" column="t"/>
        <result property="z" column="z"/>
        <result property="wellId" column="well_id"/>
        <result property="cameraName" column="camera_name"/>
        <result property="chanName" column="chan_name"/>
    </resultMap>
 
    <sql id="selectArdWellGuideCameraVo">
        SELECT
            a.id,
            a.camera_id,
            a.chan_no,
            a.p,
            a.t,
            a.z,
            a.well_id,
            b.name as camera_name,
            c.name as chan_name
        FROM
            ard_well_guide_camera a
                LEFT JOIN ard_camera b ON a.camera_id = b.id COLLATE utf8mb4_general_ci
                LEFT JOIN ard_channel c ON a.camera_id = c.device_id COLLATE utf8mb4_general_ci
                AND a.chan_no = c.chan_no COLLATE utf8mb4_general_ci
    </sql>
 
    <select id="selectArdWellGuideCameraList" parameterType="ArdWellGuideCamera" resultMap="ArdWellGuideCameraResult">
        <include refid="selectArdWellGuideCameraVo"/>
        <where>
            <if test="cameraId != null  and cameraId != ''">and a.camera_id = #{cameraId}</if>
            <if test="chanNo != null  and chanNo != ''">and  a.chan_no = #{chanNo}</if>
            <if test="p != null ">and  a.p = #{p}</if>
            <if test="t != null ">and  a.t = #{t}</if>
            <if test="z != null ">and  a.z = #{z}</if>
            <if test="wellId != null  and wellId != ''">and  a.well_id = #{wellId}</if>
        </where>
    </select>
 
    <select id="selectArdWellGuideCameraById" parameterType="String" resultMap="ArdWellGuideCameraResult">
        <include refid="selectArdWellGuideCameraVo"/>
        where  a.id = #{id}
    </select>
 
    <insert id="insertArdWellGuideCamera" parameterType="ArdWellGuideCamera">
        insert into ard_well_guide_camera
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="cameraId != null">camera_id,</if>
            <if test="chanNo != null">chan_no,</if>
            <if test="p != null">p,</if>
            <if test="t != null">t,</if>
            <if test="z != null">z,</if>
            <if test="wellId != null">well_id,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="cameraId != null">#{cameraId},</if>
            <if test="chanNo != null">#{chanNo},</if>
            <if test="p != null">#{p},</if>
            <if test="t != null">#{t},</if>
            <if test="z != null">#{z},</if>
            <if test="wellId != null">#{wellId},</if>
        </trim>
    </insert>
 
    <update id="updateArdWellGuideCamera" parameterType="ArdWellGuideCamera">
        update ard_well_guide_camera
        <trim prefix="SET" suffixOverrides=",">
            <if test="cameraId != null">camera_id = #{cameraId},</if>
            <if test="chanNo != null">chan_no = #{chanNo},</if>
            <if test="p != null">p = #{p},</if>
            <if test="t != null">t = #{t},</if>
            <if test="z != null">z = #{z},</if>
            <if test="wellId != null">well_id = #{wellId},</if>
        </trim>
        where id = #{id}
    </update>
 
    <delete id="deleteArdWellGuideCameraById" parameterType="String">
        delete
        from ard_well_guide_camera
        where id = #{id}
    </delete>
 
    <delete id="deleteArdWellGuideCameraByIds" parameterType="String">
        delete from ard_well_guide_camera where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
 
    <select id="checkGuideCameraUnique" resultMap="ArdWellGuideCameraResult">
        select *
        from ard_well_guide_camera
        where camera_id = #{cameraId}
          and chan_no = #{chanNo}
          and well_id = #{wellId} limit 1
    </select>
</mapper>