<?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.devplatform.admin.modules.eq.dao.SbInfoDao"> <!-- Result Map --> <resultMap id="BaseResultMap" type="com.devplatform.admin.modules.eq.bean.SbInfo"> <result column="id" property="id"/> <result column="resource_id" property="resourceId"/> <result column="current_frequency" property="currentFrequency"/> <result column="fault_alarm" property="faultAlarm"/> <result column="type" property="type"/> <result column="station_id" property="stationId"/> <result column="create_time" property="createTime"/> </resultMap> <!-- sb_info table all fields --> <sql id="Base_Column_List"> id,resource_id,current_frequency,fault_alarm,type,station_id,create_time </sql> <!-- 公共查询条件 --> <sql id="Example_Where_Clause"> where t.deleted=0 <if test="id!=null and id!=''">and t.id = #{id}</if> <if test="resourceId!=null and resourceId!=''">and t.resource_id = #{resourceId}</if> <if test="currentFrequency!=null and currentFrequency!=''">and t.current_frequency = #{currentFrequency}</if> <if test="faultAlarm!=null and faultAlarm!=''">and t.fault_alarm = #{faultAlarm}</if> <if test="type!=null ">and t.type = #{type}</if> <if test="stationId!=null and stationId!=''">and t.station_id = #{stationId}</if> <if test="createTime!=null ">and t.create_time = #{createTime}</if> </sql> <select id="queryPageByCount" parameterType="Object" resultType="java.lang.Integer"> select count(1) from sb_info t <include refid="Example_Where_Clause"/> </select> <select id="queryPageList" parameterType="Object" resultMap="BaseResultMap"> select t.* from sb_info t <include refid="Example_Where_Clause"/> <if test="pager.orderCondition != null and pager.orderCondition != ''"> ${pager.orderCondition} </if> <if test="pager.mysqlQueryCondition != null and pager.mysqlQueryCondition != ''"> ${pager.mysqlQueryCondition} </if> </select> <select id="getList" resultType="java.util.Map"> SELECT t1.*,li.name as resourceName,li.remark as remark,li.deploy_location as deployLocation,li.status as status,li.region as region FROM sb_info AS t1 INNER JOIN (SELECT t2.resource_id, MAX(t2.create_time) AS maxdate FROM sb_info AS t2 GROUP BY t2.resource_id) AS t3 ON t1.resource_id = t3.resource_id AND t1.create_time = t3.maxdate left join li_resource li on li.id = resource_id </select> </mapper>