<?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.sandu.ximon.dao.mapper.PlcReportErrorMapper">
|
|
<resultMap type="com.sandu.ximon.dao.domain.PlcReportError" id="BaseResultMap">
|
<result property="plcReportErrorId" column="plc_report_error_id" jdbcType="INTEGER"/>
|
<result property="plcDeviceCode" column="plc_device_code" jdbcType="VARCHAR"/>
|
<result property="plcAddress" column="plc_address" jdbcType="VARCHAR"/>
|
<result property="errorCode" column="error_code" jdbcType="BIGINT"/>
|
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
|
</resultMap>
|
<resultMap id="listReportError" type="com.sandu.ximon.dao.bo.PlcReportErrorBo" extends="BaseResultMap">
|
<result property="poleName" column="pole_name" jdbcType="VARCHAR"/>
|
</resultMap>
|
|
<select id="listReportError" resultType="com.sandu.ximon.dao.bo.PlcReportErrorBo">
|
SELECT
|
t1.*,
|
t3.pole_name,
|
t3.id
|
FROM
|
plc_report_error t1
|
LEFT JOIN pole_binding t2 ON t1.plc_device_code = t2.device_code
|
AND t2.device_type = 13
|
LEFT JOIN pole t3 ON t3.id = t2.pole_id
|
<where>
|
t1.error_code != 0
|
<if test="keyword != null and keyword != ''">
|
AND (
|
t3.id LIKE CONCAT('%', #{keyword},'%')
|
OR t3.pole_name LIKE CONCAT('%', #{keyword},'%')
|
OR t1.plc_device_code LIKE CONCAT('%', #{keyword},'%')
|
)
|
</if>
|
<if test="userid != null">
|
AND (t3.user_id = #{userid} OR t3.client_id = #{userid})
|
</if>
|
<if test="error_code != null">
|
AND t1.error_code = #{error_code}
|
</if>
|
</where>
|
ORDER BY t1.plc_report_error_id DESC
|
|
</select>
|
<select id="listError" resultType="com.sandu.ximon.dao.bo.PlcReportErrorBo" parameterType="java.lang.Long">
|
SELECT
|
t1.*
|
FROM
|
plc_report_error t1
|
LEFT JOIN pole t3 ON t1.plc_device_code = t3.device_code
|
WHERE
|
t1.plc_report_error_id IN ( SELECT t.max_id FROM ( SELECT Max( plc_report_error.plc_report_error_id ) AS
|
max_id FROM plc_report_error GROUP BY plc_report_error.plc_device_code ) AS t )
|
<if test="userid != null">
|
AND t3.client_id = #{userId} OR t3.user_id = #{userId}
|
</if>
|
ORDER BY
|
t1.create_time DESC
|
</select>
|
|
|
</mapper>
|