<?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.casic.missiles.mapper.DeviceMapper"> <!-- 通用查询映射结果 --> <resultMap id="BaseResultMap" type="com.casic.missiles.model.Device"> <id column="id" property="id" /> <result column="group_id" property="groupId" /> <result column="product_id" property="productId" /> <result column="devcode" property="devcode" /> <result column="device_type" property="deviceType" /> <result column="unit" property="unit" /> <result column="model" property="model" /> <result column="name" property="name" /> <result column="status" property="status" /> <result column="imei" property="imei" /> <result column="create_time" property="createTime" /> <result column="create_user_name" property="createUserName" /> <result column="valid" property="valid" /> </resultMap> <!-- 通用查询结果列 --> <sql id="Base_Column_List"> id, devcode, device_type, unit, name, product_id, status, imei, create_time, create_user_id </sql> <select id="listPage" resultType="com.casic.missiles.dto.device.DeviceListVO"> SELECT device_type AS "deviceType",create_time AS "createTime",d.devcode, model,imei,name AS "deviceName",status,d.id,create_user_id AS "createUserId", create_user_name AS "createUserName", group_id as groupId, product_id as productId,ds.cell as cell,ds.LOG_TIME as logtime,ds.MONITOR_VALUE as dataValue FROM ( SELECT * FROM device WHERE VALID=1 <if test="request.groupId!='' and request.groupId != null"> AND group_id =#{request.groupId} </if> <if test="request.devcode!='' and request.devcode != null"> AND devcode like CONCAT('%',#{request.devcode},'%') </if> <if test="request.imei!='' and request.imei != null"> AND imei like CONCAT('%',#{request.imei},'%') </if> <if test="request.deviceType!='' and request.deviceType != null"> AND device_type =#{request.deviceType} </if> <if test="request.status!='' and request.status != null"> AND status =#{request.status} </if> <if test="request.productId!='' and request.productId != null"> AND product_id =#{request.productId} </if> <if test="request.ids != null"> and id in <foreach collection="request.ids" index="index" item="id" open="(" separator="," close=")"> #{id} </foreach> </if> )d left JOIN device_latest_state ds on d.id = ds.DEVICE_ID JOIN ( SELECT deptid,id FROM device_group WHERE VALID =1 <if test="request.groupId!='' and request.groupId != null"> AND id =#{request.groupId} </if> )dg ON dg.id=d.group_id <where> <if test="request.beginCell!='' and request.beginCell!=null"> AND ds.cell <![CDATA[ >= ]]> #{request.beginCell} </if> <if test="request.endCell!='' and request.endCell!=null"> AND ds.cell <![CDATA[ <= ]]> #{request.endCell} </if> </where> order by create_time desc </select> <select id="listCtnbByDevCode" resultType="com.casic.missiles.dto.device.DeviceCtnbDTO"> SELECT id, group_id, product_id, devcode, device_type, model, name, imei, iccid, sm4_key, version, status, valid, ctnb_device_id, ctnb_product_id, ctnb_master_key FROM device_ctnb_view WHERE devcode = #{devCode} </select> </mapper>