skyeyesystem/backend/Skyeye-sys-dev/skyeye-service-manager/target/classes/mapping/jm/JmJobUavMapping.xml

115 lines
3.5 KiB
XML

<?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.zhangy.skyeye.jm.mapper.JmJobUavMapper">
<sql id="selectSql">
select
ju.job_id,
ju.uav_id,
u.name as uav_name,
u.ip,
ju.start_lon,
ju.start_lat,
ju.end_lon,
ju.end_lat,
ju.start_altitude,
ju.begin_time,
ju.end_time,
ju.speed,
ju.height
from jm_job_uav ju
left join se_uav u on u.id = ju.uav_id
</sql>
<select id="selectByJob" resultType="com.zhangy.skyeye.jm.entity.JmJobUav">
<include refid="selectSql"/>
where ju.job_id in
<foreach item="item" collection="array" open="(" separator="," close=")">
#{item}
</foreach>
</select>
<insert id="insert">
insert into jm_job_uav(
job_id,
uav_id,
start_lon,
start_lat,
end_lon,
end_lat,
start_altitude,
begin_time,
end_time,
speed,
height
) values
<foreach item="item" index="index" collection="array" separator=",">
(
#{item.jobId},
#{item.uavId},
#{item.startLon},
#{item.startLat},
#{item.endLon},
#{item.endLat},
#{item.startAltitude},
#{item.beginTime},
#{item.endTime},
#{item.speed},
#{item.height}
)
</foreach>
</insert>
<update id="updateNotNull">
update jm_job_uav
<trim prefix="SET" suffixOverrides=",">
<if test="startLon != null">start_lon = #{startLon},</if>
<if test="startLat != null">start_lat = #{startLat},</if>
<if test="endLon != null">end_lon = #{endLon},</if>
<if test="endLat != null">end_lat = #{endLat},</if>
<if test="startAltitude != null">start_altitude = #{startAltitude},</if>
<if test="beginTime != null">begin_time = #{beginTime},</if>
<if test="endTime != null">end_time = #{endTime},</if>
<if test="speed != null">speed = #{speed},</if>
<if test="height != null">height = #{height},</if>
</trim>
where job_id = #{jobId}
and uav_id = #{uavId}
</update>
<update id="update">
update jm_job_uav
<trim prefix="SET" suffixOverrides=",">
start_lon = #{startLon},
start_lat = #{startLat},
end_lon = #{endLon},
end_lat = #{endLat},
start_altitude = #{startAltitude},
begin_time = #{beginTime},
end_time = #{endTime},
speed = #{speed},
height = #{height},
</trim>
where job_id = #{jobId}
and uav_id = #{uavId}
</update>
<delete id="deleteByJob">
delete from jm_job_uav
where job_id in
<foreach item="item" collection="array" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<delete id="deleteByUav">
delete from jm_job_uav
where job_id = #{jobId}
<if test="array != null and array.length > 0">
and uav_id in
<foreach item="item" collection="array" open="(" separator="," close=")">
#{item}
</foreach>
</if>
</delete>
</mapper>