<?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.AsDeviceMapper"> <resultMap type="AsDevice" id="AsDeviceResult"> <result property="deviceId" column="device_id" /> <result property="picture" column="picture" /> <result property="deviceName" column="device_name" /> <result property="mac" column="mac" /> <result property="sn" column="sn" /> <result property="modelId" column="model_id" /> <result property="hardwareVersionId" column="hardware_version_id" /> <result property="vehicleNum" column="vehicle_num" /> <result property="version" column="version" /> <result property="areaId" column="area_id" /> <result property="activationTime" column="activation_time" /> <result property="onlineStatus" column="online_status" /> <result property="createBy" column="create_by" /> <result property="createTime" column="create_time" /> <result property="updateBy" column="update_by" /> <result property="updateTime" column="update_time" /> <result property="lastTime" column="last_time" /> <result property="lastLocationTime" column="last_location_time" /> <result property="gps" column="gps" /> <result property="remark" column="remark" /> <result property="status" column="status" /> <result property="lockStatus" column="lock_status" /> <result property="location" column="location" /> <result property="remainingPower" column="remaining_power" /> <result property="voltage" column="voltage" /> <result property="qrcode" column="qrcode" /> <result property="longitude" column="longitude" /> <result property="latitude" column="latitude" /> <result property="isAreaOutOutage" column="is_area_out_outage" /> <result property="isAdminUnlocking" column="is_admin_unlocking" /> <result property="appid" column="appid" /> <result property="appName" column="app_name" /> <result property="deptId" column="dept_id" /> </resultMap> <sql id="selectAsDeviceVo"> select device_id, picture, device_name, mac, sn, model_id, hardware_version_id, vehicle_num, area_id, activation_time, online_status, 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, is_area_out_outage, is_admin_unlocking,appid, app_name, dept_id from et_device </sql> <select id="selectAsDeviceList" parameterType="AsDevice" resultMap="AsDeviceResult"> select de.device_id, de.picture, de.device_name, de.mac, de.sn, de.model_id, de.hardware_version_id, de.vehicle_num, de.area_id, de.activation_time, de.online_status, de.create_by, de.create_time, de.update_by, 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, de.is_area_out_outage, de.is_admin_unlocking,de.appid, de.app_name, de.dept_id from et_device de left join et_area_dept ad on ad.area_id = de.area_id left join sys_dept d on d.dept_id = ad.dept_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 = #{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="areaId != null and areaId != ''"> and de.area_id = #{areaId}</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="selectAsDeviceListWithIsolate" parameterType="AsDevice" resultMap="AsDeviceResult"> select de.device_id, de.picture, de.device_name, de.mac, de.sn, de.model_id, de.hardware_version_id, de.vehicle_num, de.area_id, de.activation_time, de.online_status, de.create_by, de.create_time, de.update_by, 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.version, de.qrcode, de.longitude, de.latitude, de.is_area_out_outage, de.is_admin_unlocking, de.signal_strength, de.satellites, de.quality,de.appid, de.app_name from et_device de left join et_area_dept ad on ad.area_id = de.area_id left join sys_dept d on d.dept_id = ad.dept_id left join et_hardware_version hv on hv.id = de.hardware_version_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="areaId != null "> and de.area_id = #{areaId}</if> <if test="deptId != null "> and d.dept_id = #{deptId}</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="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> <!-- 查询areaId是null --> <if test="unBand != null"> and de.area_id is null </if> <!-- 数据范围过滤 --> ${params.dataScope} order by de.sn </select> <select id="selectAsDeviceByDeviceId" parameterType="Long" resultMap="AsDeviceResult"> <include refid="selectAsDeviceVo"/> where device_id = #{deviceId} </select> <select id="selectAsDeviceByMac" parameterType="string" resultMap="AsDeviceResult"> <include refid="selectAsDeviceVo"/> where mac = #{mac} </select> <select id="selectAsDeviceBySn" parameterType="string" resultMap="AsDeviceResult"> <include refid="selectAsDeviceVo"/> where sn = #{sn} </select> <!--有订单车辆--> <select id="getInOrderDevice" resultType="java.lang.String"> SELECT count( 1 ) FROM ( SELECT o.sn FROM et_order o LEFT JOIN et_device d ON o.sn = d.sn WHERE date_format( o.create_time, '%y%m%d' ) >= date_format( #{timeStart}, '%y%m%d' ) AND date_format( o.create_time, '%y%m%d' ) <= date_format( #{timeEnd}, '%y%m%d' ) and o.sn IS NOT NULL and o.area_id = #{areaId} GROUP BY o.sn ) a </select> <select id="getNoOrderDevice" resultType="java.lang.String"> SELECT count( 1 ) from et_device de where de.sn not in ( SELECT o.sn FROM et_order o LEFT JOIN et_device d ON o.sn = d.sn WHERE date_format( o.create_time, '%y%m%d' ) >= date_format( #{timeStart}, '%y%m%d' ) AND date_format( o.create_time, '%y%m%d' ) <= date_format( #{timeEnd}, '%y%m%d' ) and o.sn IS NOT NULL and o.area_id = #{areaId} GROUP BY o.sn ) </select> <select id="checkSNUnique" resultMap="AsDeviceResult"> select device_id, sn, device_name from et_device where sn = #{sn} limit 1 </select> <select id="checkMACUnique" resultMap="AsDeviceResult"> select device_id, sn, device_name from et_device where mac = #{mac} limit 1 </select> <select id="countBoundNum" resultType="java.lang.Integer"> select count(1) from et_device where hardware_version_id = #{hardwareVersionId} and area_id is not null </select> <select id="countUnBoundNum" resultType="java.lang.Integer"> select count(1) from et_device where hardware_version_id = #{hardwareVersionId} and area_id is null </select> <select id="selectAllDevice" resultType="com.ruoyi.system.domain.vo.AsDeviceVO" > select mac, sn, online_status onlineStatus from et_device </select> <insert id="insertAsDevice" parameterType="AsDevice" useGeneratedKeys="true" keyProperty="deviceId"> insert into et_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="areaId != null">area_id,</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="isAreaOutOutage != null">is_area_out_outage,</if> <if test="appid != null">appid,</if> <if test="appName != null">app_name,</if> <if test="deptId != null">dept_id,</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="areaId != null">#{areaId},</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="isAreaOutOutage != null">#{isAreaOutOutage},</if> <if test="appid != null">#{appid},</if> <if test="appName != null">#{appName},</if> <if test="deptId != null">#{deptId},</if> </trim> </insert> <update id="updateAsDevice" parameterType="AsDevice"> update et_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="areaId != null">area_id = #{areaId},</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="isAreaOutOutage != null">is_area_out_outage = #{isAreaOutOutage},</if> <if test="isAdminUnlocking != null">is_admin_unlocking = #{isAdminUnlocking},</if> <if test="appid != null">appid = #{appid},</if> <if test="appName != null">app_name = #{appName},</if> <if test="deptId != null">dept_id = #{deptId},</if> </trim> where device_id = #{deviceId} </update> <update id="updateAsDevice2" parameterType="AsDevice"> update et_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> area_id = #{areaId}, <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="isAreaOutOutage != null">is_area_out_outage = #{isAreaOutOutage},</if> <if test="isAdminUnlocking != null">is_admin_unlocking = #{isAdminUnlocking},</if> <if test="appid != null">appid = #{appid},</if> <if test="appName != null">app_name = #{appName},</if> <if test="deptId != null">dept_id = #{deptId},</if> </trim> where device_id = #{deviceId} </update> <update id="updateAsDeviceBySn" parameterType="AsDevice"> update et_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="areaId != null">area_id = #{areaId},</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="isAreaOutOutage != null">is_area_out_outage = #{isAreaOutOutage},</if> <if test="isAdminUnlocking != null">is_admin_unlocking = #{isAdminUnlocking},</if> <if test="appid != null">appid = #{appid},</if> <if test="appName != null">app_name = #{appName},</if> <if test="deptId != null">dept_id = #{deptId},</if> </trim> where sn = #{sn} </update> <update id="updateAsDeviceByMac"> update et_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="deleteAsDeviceByDeviceId" parameterType="Long"> delete from et_device where device_id = #{deviceId} </delete> <delete id="deleteAsDeviceByDeviceIds" parameterType="String"> delete from et_device where device_id in <foreach item="deviceId" collection="array" open="(" separator="," close=")"> #{deviceId} </foreach> </delete> <delete id="oneClickOnline" parameterType="String"> update et_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 et_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 et_device d set d.status = '0' where device_id in <foreach item="deviceId" collection="array" open="(" separator="," close=")"> #{deviceId} </foreach> </delete> </mapper>