TpPEqpGatewaySMapper.xml 5.56 KB
<?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.zteits.park.mapper.smapper.TpPEqpGatewaySMapper">
  <resultMap id="BaseResultMap" type="com.zteits.park.domain.TpPEqpGateway">
    <id column="id" jdbcType="BIGINT" property="id" />
    <result column="pl_no" jdbcType="VARCHAR" property="plNo" />
    <result column="org_id" jdbcType="BIGINT" property="orgId" />
    <result column="pl_name" jdbcType="VARCHAR" property="plName" />
    <result column="eqp_no" jdbcType="VARCHAR" property="eqpNo" />
    <result column="eqp_name" jdbcType="VARCHAR" property="eqpName" />
    <result column="eqp_is_online" jdbcType="CHAR" property="eqpIsOnline" />
    <result column="error_type" jdbcType="INTEGER" property="errorType" />
    <result column="error_type_remark" jdbcType="VARCHAR" property="errorTypeRemark" />
    <result column="heartbeat_interval" jdbcType="INTEGER" property="heartbeatInterval" />
    <result column="heartbeat_time" jdbcType="TIMESTAMP" property="heartbeatTime" />
    <result column="lon_id" jdbcType="DECIMAL" property="lonId" />
    <result column="lat_id" jdbcType="DECIMAL" property="latId" />
    <result column="remark" jdbcType="VARCHAR" property="remark" />
    <result column="data_state" jdbcType="INTEGER" property="dataState" />
    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
    <result column="create_op" jdbcType="BIGINT" property="createOp" />
    <result column="create_op_name" jdbcType="VARCHAR" property="createOpName" />
    <result column="modify_time" jdbcType="TIMESTAMP" property="modifyTime" />
    <result column="modify_op" jdbcType="BIGINT" property="modifyOp" />
    <result column="modify_op_name" jdbcType="VARCHAR" property="modifyOpName" />
  </resultMap>
  <sql id="Example_Where_Clause">
    <where>
      <foreach collection="oredCriteria" item="criteria" separator="or">
        <if test="criteria.valid">
          <trim prefix="(" prefixOverrides="and" suffix=")">
            <foreach collection="criteria.criteria" item="criterion">
              <choose>
                <when test="criterion.noValue">
                  and ${criterion.condition}
                </when>
                <when test="criterion.singleValue">
                  and ${criterion.condition} #{criterion.value}
                </when>
                <when test="criterion.betweenValue">
                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
                </when>
                <when test="criterion.listValue">
                  and ${criterion.condition}
                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
                    #{listItem}
                  </foreach>
                </when>
              </choose>
            </foreach>
          </trim>
        </if>
      </foreach>
    </where>
  </sql>
  <sql id="Update_By_Example_Where_Clause">
    <where>
      <foreach collection="example.oredCriteria" item="criteria" separator="or">
        <if test="criteria.valid">
          <trim prefix="(" prefixOverrides="and" suffix=")">
            <foreach collection="criteria.criteria" item="criterion">
              <choose>
                <when test="criterion.noValue">
                  and ${criterion.condition}
                </when>
                <when test="criterion.singleValue">
                  and ${criterion.condition} #{criterion.value}
                </when>
                <when test="criterion.betweenValue">
                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
                </when>
                <when test="criterion.listValue">
                  and ${criterion.condition}
                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
                    #{listItem}
                  </foreach>
                </when>
              </choose>
            </foreach>
          </trim>
        </if>
      </foreach>
    </where>
  </sql>
  <sql id="Base_Column_List">
    id, pl_no, org_id, pl_name, eqp_no, eqp_name, eqp_is_online, error_type, error_type_remark,
    heartbeat_interval, heartbeat_time, lon_id, lat_id, remark, data_state, create_time,
    create_op, create_op_name, modify_time, modify_op, modify_op_name
  </sql>
  <select id="statisticEqpCountByCondition" resultType="com.zteits.clouds.api.dto.park.dto.StaticEqpConutForGatewayDTO">

    select
    count(1) allNum,
    SUM(CASE WHEN eqp_is_online = 0 THEN 1 ELSE 0 END) onLineNum,
    SUM(CASE WHEN eqp_is_online = 1 THEN 1 ELSE 0 END) offLineNum,
    SUM(CASE WHEN eqp_is_online = 2 THEN 1 ELSE 0 END) failNum

    from tp_p_eqp_gateway
    where data_state =1
    and org_id = #{req.orgId}
    <if test="req.plNo != null ">
      and pl_no = #{req.plNo}
    </if>
    <if test="req.eqpNo != null ">
      and eqp_no = #{req.eqpNo}
    </if>
    <if test="req.eqpIsOnline != null ">
      and eqp_is_online = #{req.eqpIsOnline}
    </if>
   group by eqp_is_online

  </select>
  <select id="queryTpPEqpGateway" resultMap="BaseResultMap">
        select
        <include refid="Base_Column_List"/>
        from tp_p_eqp_gateway
        where data_state =1
        and org_id = #{req.orgId}
        <if test="req.plNo != null ">
          and pl_no = #{req.plNo}
        </if>
        <if test="req.eqpNo != null ">
          and eqp_no = #{req.eqpNo}
        </if>
        <if test="req.eqpIsOnline != null ">
         and eqp_is_online = #{req.eqpIsOnline}
        </if>


  </select>

</mapper>