eride/eride-system/src/main/resources/mapper/system/EDeviceMapper.xml
2024-12-30 17:02:38 +08:00

453 lines
24 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.ruoyi.system.mapper.EDeviceMapper">
<resultMap type="EDeviceVO" id="EDeviceResult" autoMapping="true" />
<sql id="selectEDeviceVo">
select device_id, picture, device_name, mac, sn, model_id, hardware_version_id, vehicle_num, activation_time, online_status,full_voltage, low_voltage, full_endurance,
create_by, create_time, update_by, update_time, last_time, last_location_time, gps, remark, status, lock_status, location,
remaining_power, voltage, qrcode, longitude, latitude, lock_status, location, remaining_power, voltage, is_default,
version, user_id, is_senseless_unlock, is_auto_shutdown, is_auto_defense, is_vibration_alarm, is_admin_unlocking from e_device
</sql>
<select id="selectEDeviceList" parameterType="EDevice" resultMap="EDeviceResult">
select de.device_id, de.picture, de.device_name, de.mac, de.sn, de.model_id, de.hardware_version_id, de.vehicle_num, de.full_voltage, de.low_voltage, de.full_endurance,
de.activation_time, de.online_status, de.create_by, de.create_time, de.update_by,de.is_default,
de.update_time, de.last_time, de.last_location_time, de.gps, de.remark, de.status, de.lock_status, de.location,
de.remaining_power, de.voltage, de.qrcode, de.longitude, de.latitude from e_device de
where 1 = 1
<if test="deviceName != null and deviceName != ''"> and de.device_name like concat('%', #{deviceName}, '%')</if>
<if test="mac != null and mac != ''"> and de.mac = #{mac}</if>
<if test="sn != null and sn != ''"> and de.sn = #{sn}</if>
<if test="vehicleNum != null and vehicleNum != ''"> and de.vehicle_num = #{vehicleNum}</if>
<if test="modelId != null and modelId != ''"> and de.model_id = #{modelId}</if>
<if test="onlineStatus != null and onlineStatus != ''"> and de.online_status = #{onlineStatus}</if>
<if test="status != null and status != ''"> and de.status = #{status}</if>
<if test="lockStatus != null and lockStatus != ''"> and de.lock_status = #{lockStatus}</if>
<!-- 数据范围过滤 -->
${params.dataScope}
order by de.sn
</select>
<select id="selectEDeviceListWithIsolate" parameterType="EDevice" resultMap="EDeviceResult">
select de.device_id, de.picture, de.device_name, de.mac, de.sn, de.model_id, de.hardware_version_id, de.vehicle_num, de.full_voltage, de.low_voltage, de.full_endurance,
de.activation_time, de.online_status, de.create_by, de.create_time, de.update_by,de.user_id,de.is_default,mo.model,
de.update_time, de.last_time, de.last_location_time, de.gps, de.remark, de.status, de.lock_status, de.location,m.user_name userName,
de.remaining_power, de.voltage, de.version, de.qrcode, de.longitude, de.latitude, de.signal_strength, de.satellites, de.quality from e_device de
left join e_hardware_version hv on hv.id = de.hardware_version_id
left join e_user u on u.user_id = de.user_id
left join e_user m on m.user_id = de.user_id
left join e_model mo on mo.model_id = de.model_id
where 1 = 1
<if test="deviceName != null and deviceName != ''"> and de.device_name like concat('%', #{deviceName}, '%')</if>
<if test="mac != null and mac != ''"> and de.mac like concat('%', #{mac}, '%')</if>
<if test="sn != null and sn != ''"> and de.sn like concat('%', #{sn}, '%')</if>
<if test="vehicleNum != null and vehicleNum != ''"> and de.vehicle_num like concat('%', #{vehicleNum}, '%')</if>
<if test="deptId != null "> and d.dept_id = #{deptId}</if>
<if test="userId != null "> and de.user_id = #{userId}</if>
<if test="modelId != null and modelId != ''"> and de.model_id = #{modelId}</if>
<if test="onlineStatus != null and onlineStatus != ''"> and de.online_status = #{onlineStatus}</if>
<if test="version != null and version != ''"> and de.version = #{version}</if>
<if test="keywords != null and keywords != ''">
AND (de.sn LIKE CONCAT('%', #{keywords}, '%') OR de.vehicle_num LIKE CONCAT('%', #{keywords}, '%'))
</if>
<if test="hardwareVersion != null and hardwareVersion != ''"> and hv.version like concat('%', #{hardwareVersion}, '%') </if>
<choose>
<when test="status == '34'">
and (de.status = '3' or de.status = '4')
</when>
<otherwise>
<if test="status != null and status != ''">
and de.status = #{status}
</if>
</otherwise>
</choose>
<if test="lockStatus != null and lockStatus != ''"> and de.lock_status = #{lockStatus}</if>
<!-- 数据范围过滤 -->
${params.dataScope}
order by de.sn
</select>
<select id="selectEDeviceByDeviceId" parameterType="Long" resultMap="EDeviceResult">
<include refid="selectEDeviceVo"/>
where device_id = #{deviceId}
</select>
<select id="selectEDeviceByMac" parameterType="string" resultMap="EDeviceResult">
<include refid="selectEDeviceVo"/>
where mac = #{mac}
</select>
<select id="selectEDeviceBySn" parameterType="string" resultMap="EDeviceResult">
<include refid="selectEDeviceVo"/>
where sn = #{sn}
</select>
<select id="checkSNUnique" resultMap="EDeviceResult">
select device_id, sn, device_name from e_device where sn = #{sn} limit 1
</select>
<select id="checkMACUnique" resultMap="EDeviceResult">
select device_id, sn, device_name from e_device where mac = #{mac} limit 1
</select>
<select id="getTatalDeviceCount" resultType="java.lang.Integer">
select count(1) from e_device where 1=1
<if test="merchantId != null"> and user_id = #{merchantId}</if>
<if test="status != null"> and status = #{status}</if>
<if test="statusList != null and statusList !=''">
AND status IN
<foreach item="item" index="index" collection="statusList" open="(" separator="," close=")">
#{item}
</foreach>
</if>
</select>
<insert id="insertEDevice" parameterType="EDevice" useGeneratedKeys="true" keyProperty="deviceId">
insert into e_device
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="picture != null">picture,</if>
<if test="deviceName != null">device_name,</if>
<if test="mac != null">mac,</if>
<if test="sn != null">sn,</if>
<if test="modelId != null">model_id,</if>
<if test="hardwareVersionId != null">hardware_version_id,</if>
<if test="vehicleNum != null">vehicle_num,</if>
<if test="version != null">version,</if>
<if test="activationTime != null">activation_time,</if>
<if test="onlineStatus != null">online_status,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="lastTime != null">last_time,</if>
<if test="lastLocationTime != null">last_location_time,</if>
<if test="gps != null">gps,</if>
<if test="remark != null">remark,</if>
<if test="status != null">status,</if>
<if test="lockStatus != null">lock_status,</if>
<if test="location != null">location,</if>
<if test="remainingPower != null">remaining_power,</if>
<if test="voltage != null">voltage,</if>
<if test="qrcode != null">qrcode,</if>
<if test="longitude != null">longitude,</if>
<if test="latitude != null">latitude,</if>
<if test="signalStrength != null">signal_strength,</if>
<if test="satellites != null">satellites,</if>
<if test="quality != null">quality,</if>
<if test="userId != null">user_id,</if>
<if test="isAdminUnlocking != null">is_admin_unlocking,</if>
<if test="isSenselessUnlock != null">is_senseless_unlock,</if>
<if test="isAutoShutdown != null">is_auto_shutdown,</if>
<if test="isAutoDefense != null">is_auto_defense,</if>
<if test="isVibrationAlarm != null">is_vibration_alarm,</if>
<if test="isDefault != null">is_default,</if>
<if test="fullVoltage != null">full_voltage,</if>
<if test="lowVoltage != null">low_voltage,</if>
<if test="fullEndurance != null">full_endurance,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="picture != null">#{picture},</if>
<if test="deviceName != null">#{deviceName},</if>
<if test="mac != null">#{mac},</if>
<if test="sn != null">#{sn},</if>
<if test="modelId != null">#{modelId},</if>
<if test="hardwareVersionId != null">#{hardwareVersionId},</if>
<if test="vehicleNum != null">#{vehicleNum},</if>
<if test="version != null">#{version},</if>
<if test="activationTime != null">#{activationTime},</if>
<if test="onlineStatus != null">#{onlineStatus},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="lastTime != null">#{lastTime},</if>
<if test="lastLocationTime != null">#{lastLocationTime},</if>
<if test="gps != null">#{gps},</if>
<if test="remark != null">#{remark},</if>
<if test="status != null">#{status},</if>
<if test="lockStatus != null">#{lockStatus},</if>
<if test="location != null">#{location},</if>
<if test="remainingPower != null">#{remainingPower},</if>
<if test="voltage != null">#{voltage},</if>
<if test="qrcode != null">#{qrcode},</if>
<if test="longitude != null">#{longitude},</if>
<if test="latitude != null">#{latitude},</if>
<if test="signalStrength != null">#{signalStrength},</if>
<if test="satellites != null">#{satellites},</if>
<if test="quality != null">#{quality},</if>
<if test="userId != null">#{userId},</if>
<if test="isAdminUnlocking != null">#{isAdminUnlocking},</if>
<if test="isSenselessUnlock != null">#{isSenselessUnlock},</if>
<if test="isAutoShutdown != null">#{isAutoShutdown},</if>
<if test="isAutoDefense != null">#{isAutoDefense},</if>
<if test="isVibrationAlarm != null">#{isVibrationAlarm},</if>
<if test="isDefault != null">#{isDefault},</if>
<if test="fullVoltage != null">#{fullVoltage},</if>
<if test="lowVoltage != null">#{lowVoltage},</if>
<if test="fullEndurance != null">#{fullEndurance},</if>
</trim>
</insert>
<update id="updateEDevice" parameterType="EDevice">
update e_device
<trim prefix="SET" suffixOverrides=",">
<if test="picture != null">picture = #{picture},</if>
<if test="deviceName != null">device_name = #{deviceName},</if>
<if test="mac != null">mac = #{mac},</if>
<if test="sn != null">sn = #{sn},</if>
<if test="modelId != null">model_id = #{modelId},</if>
<if test="hardwareVersionId != null">hardware_version_id = #{hardwareVersionId},</if>
<if test="vehicleNum != null">vehicle_num = #{vehicleNum},</if>
<if test="version != null">version = #{version},</if>
<if test="activationTime != null">activation_time = #{activationTime},</if>
<if test="onlineStatus != null">online_status = #{onlineStatus},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="lastTime != null">last_time = #{lastTime},</if>
<if test="lastLocationTime != null">last_location_time = #{lastLocationTime},</if>
<if test="gps != null">gps = #{gps},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="status != null">status = #{status},</if>
<if test="lockStatus != null">lock_status = #{lockStatus},</if>
<if test="location != null">location = #{location},</if>
<if test="remainingPower != null">remaining_power = #{remainingPower},</if>
<if test="voltage != null">voltage = #{voltage},</if>
<if test="qrcode != null">qrcode = #{qrcode},</if>
<if test="longitude != null">longitude = #{longitude},</if>
<if test="latitude != null">latitude = #{latitude},</if>
<if test="signalStrength != null">signal_strength = #{signalStrength},</if>
<if test="satellites != null">satellites = #{satellites},</if>
<if test="quality != null">quality = #{quality},</if>
<if test="userId != null">user_id = #{userId},</if>
<if test="isAdminUnlocking != null">is_admin_unlocking = #{isAdminUnlocking},</if>
<if test="isSenselessUnlock != null">is_senseless_unlock = #{isSenselessUnlock},</if>
<if test="isAutoShutdown != null">is_auto_shutdown = #{isAutoShutdown},</if>
<if test="isAutoDefense != null">is_auto_defense = #{isAutoDefense},</if>
<if test="isVibrationAlarm != null">is_vibration_alarm = #{isVibrationAlarm},</if>
<if test="isDefault != null">is_default = #{isDefault},</if>
<if test="fullVoltage != null">full_voltage = #{fullVoltage},</if>
<if test="lowVoltage != null">low_voltage = #{lowVoltage},</if>
<if test="fullEndurance != null">full_endurance = #{fullEndurance},</if>
</trim>
where device_id = #{deviceId}
</update>
<update id="updateEDevice2" parameterType="EDevice">
update e_device
<trim prefix="SET" suffixOverrides=",">
<if test="picture != null">picture = #{picture},</if>
<if test="deviceName != null">device_name = #{deviceName},</if>
<if test="mac != null">mac = #{mac},</if>
<if test="sn != null">sn = #{sn},</if>
model_id = #{modelId},
hardware_version_id = #{hardwareVersionId},
<if test="vehicleNum != null">vehicle_num = #{vehicleNum},</if>
<if test="version != null">version = #{version},</if>
<if test="activationTime != null">activation_time = #{activationTime},</if>
<if test="onlineStatus != null">online_status = #{onlineStatus},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="lastTime != null">last_time = #{lastTime},</if>
<if test="lastLocationTime != null">last_location_time = #{lastLocationTime},</if>
<if test="gps != null">gps = #{gps},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="status != null">status = #{status},</if>
<if test="lockStatus != null">lock_status = #{lockStatus},</if>
<if test="location != null">location = #{location},</if>
<if test="remainingPower != null">remaining_power = #{remainingPower},</if>
<if test="voltage != null">voltage = #{voltage},</if>
<if test="qrcode != null">qrcode = #{qrcode},</if>
<if test="longitude != null">longitude = #{longitude},</if>
<if test="latitude != null">latitude = #{latitude},</if>
<if test="signalStrength != null">signal_strength = #{signalStrength},</if>
<if test="satellites != null">satellites = #{satellites},</if>
<if test="quality != null">quality = #{quality},</if>
<if test="userId != null">user_id = #{userId},</if>
<if test="isAdminUnlocking != null">is_admin_unlocking = #{isAdminUnlocking},</if>
<if test="isSenselessUnlock != null">is_senseless_unlock = #{isSenselessUnlock},</if>
<if test="isAutoShutdown != null">is_auto_shutdown = #{isAutoShutdown},</if>
<if test="isAutoDefense != null">is_auto_defense = #{isAutoDefense},</if>
<if test="isVibrationAlarm != null">is_vibration_alarm = #{isVibrationAlarm},</if>
<if test="isDefault != null">is_default = #{isDefault},</if>
<if test="fullVoltage != null">full_voltage = #{fullVoltage},</if>
<if test="lowVoltage != null">low_voltage = #{lowVoltage},</if>
<if test="fullEndurance != null">full_endurance = #{fullEndurance},</if>
</trim>
where device_id = #{deviceId}
</update>
<update id="updateEDeviceBySn" parameterType="EDevice">
update e_device
<trim prefix="SET" suffixOverrides=",">
<if test="picture != null">picture = #{picture},</if>
<if test="deviceName != null">device_name = #{deviceName},</if>
<if test="mac != null">mac = #{mac},</if>
<if test="modelId != null">model_id = #{modelId},</if>
<if test="hardwareVersionId != null">hardware_version_id = #{hardwareVersionId},</if>
<if test="vehicleNum != null">vehicle_num = #{vehicleNum},</if>
<if test="version != null">version = #{version},</if>
<if test="activationTime != null">activation_time = #{activationTime},</if>
<if test="onlineStatus != null">online_status = #{onlineStatus},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="lastTime != null">last_time = #{lastTime},</if>
<if test="lastLocationTime != null">last_location_time = #{lastLocationTime},</if>
<if test="gps != null">gps = #{gps},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="status != null">status = #{status},</if>
<if test="lockStatus != null">lock_status = #{lockStatus},</if>
<if test="location != null">location = #{location},</if>
<if test="remainingPower != null">remaining_power = #{remainingPower},</if>
<if test="voltage != null">voltage = #{voltage},</if>
<if test="qrcode != null">qrcode = #{qrcode},</if>
<if test="longitude != null">longitude = #{longitude},</if>
<if test="latitude != null">latitude = #{latitude},</if>
<if test="signalStrength != null">signal_strength = #{signalStrength},</if>
<if test="satellites != null">satellites = #{satellites},</if>
<if test="quality != null">quality = #{quality},</if>
<if test="userId != null">user_id = #{userId},</if>
<if test="isAdminUnlocking != null">is_admin_unlocking = #{isAdminUnlocking},</if>
<if test="isSenselessUnlock != null">is_senseless_unlock = #{isSenselessUnlock},</if>
<if test="isAutoShutdown != null">is_auto_shutdown = #{isAutoShutdown},</if>
<if test="isAutoDefense != null">is_auto_defense = #{isAutoDefense},</if>
<if test="isVibrationAlarm != null">is_vibration_alarm = #{isVibrationAlarm},</if>
<if test="isDefault != null">is_default = #{isDefault},</if>
</trim>
where sn = #{sn}
</update>
<update id="updateEDeviceByMac">
update e_device
<trim prefix="SET" suffixOverrides=",">
<if test="sn != null">sn = #{sn},</if>
<if test="hardwareVersionId != null">hardware_version_id = #{hardwareVersionId},</if>
<if test="onlineStatus != null">online_status = #{onlineStatus},</if>
</trim>
where mac = #{mac}
</update>
<delete id="deleteEDeviceByDeviceId" parameterType="Long">
delete from e_device where device_id = #{deviceId}
</delete>
<delete id="deleteEDeviceByDeviceIds" parameterType="String">
delete from e_device where device_id in
<foreach item="deviceId" collection="array" open="(" separator="," close=")">
#{deviceId}
</foreach>
</delete>
<delete id="oneClickOnline" parameterType="String">
update e_device d set d.status = '1' where device_id in
<foreach item="deviceId" collection="array" open="(" separator="," close=")">
#{deviceId}
</foreach>
</delete>
<delete id="oneClickOffline" parameterType="String">
update e_device d set d.status = '8' where device_id in
<foreach item="deviceId" collection="array" open="(" separator="," close=")">
#{deviceId}
</foreach>
</delete>
<delete id="oneClickWarehousing" parameterType="String">
update e_device d set d.status = '0' where device_id in
<foreach item="deviceId" collection="array" open="(" separator="," close=")">
#{deviceId}
</foreach>
</delete>
<update id="cancelDefault" >
update e_device set is_default = '0' where user_id = #{userId} and sn != #{sn}
</update>
<update id="untie">
update e_device set user_id = null where device_id = #{deviceId}
</update>
<select id="selectAllDeviceCountByStoreId" resultType="java.lang.Integer">
select count(1) from e_device where 1=1
<if test="storeId != null"> and store_id = #{storeId}</if>
</select>
<select id="getInProgressOrder" resultType="com.ruoyi.system.domain.device.EDeviceVO">
select
d.device_id,
d.picture,
d.device_name,
d.mac,
d.sn,
d.model_id,
m.model,
d.hardware_version_id,
d.vehicle_num,
d.activation_time,
d.online_status,
d.create_by,
d.create_time,
d.update_by,
d.update_time,
d.last_time,
d.last_location_time,
d.gps,
d.remark,
d.status,
d.lock_status,
d.location,
d.remaining_power,
d.voltage,
d.qrcode,
d.longitude,
d.latitude,
d.lock_status,
d.location,
d.remaining_power,
d.voltage,
d.is_default,
d.version,
d.user_id,
d.is_senseless_unlock,
d.is_auto_shutdown,
d.is_auto_defense,
d.is_vibration_alarm,
d.is_admin_unlocking from e_device d
left join e_order o on d.sn = o.sn
left join e_model m on d.model_id = m.model_id
where o.status = 4
<if test="userId != null and userId != ''">
and o.user_id = #{userId}
</if>
order by create_time desc
</select>
<select id="getInProgressOrderBySn" resultType="String">
select
o.order_no from e_order o
where o.status = 4
<if test="sn != null and sn != ''">
and o.sn = #{sn}
</if>
order by create_time desc
limit 1
</select>
<select id="selectBySns" resultMap="EDeviceResult">
<include refid="selectEDeviceVo"/>
where sn in
<foreach collection="sns" open="(" close=")" separator="," item="item">
#{item}
</foreach>
</select>
</mapper>