<?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.equipment.modules.eppatrolline.dao.EpPatrolLineDao">
  <!-- Result Map -->
  <resultMap id="BaseResultMap" type="com.devplatform.equipment.modules.eppatrolline.bean.EpPatrolLine">
    <result column="id" property="id"/>
    <result column="station_id" property="stationId"/>
    <result column="name" property="name"/>
    <result column="status" property="status"/>
    <result column="sys_sign" property="sysSign"/>
    <result column="deleted" property="deleted"/>
    <result column="create_user_id" property="createUserId"/>
    <result column="create_time" property="createTime"/>
    <result column="update_user_id" property="updateUserId"/>
    <result column="update_time" property="updateTime"/>
    <result column="byx1" property="byx1"/>
    <result column="byx2" property="byx2"/>
    <result column="byx3" property="byx3"/>
  </resultMap>

  <!-- ep_patrol_line table all fields -->
  <sql id="Base_Column_List">
		id,station_id,name,status,sys_sign,deleted,create_user_id,create_time,update_user_id,update_time,byx1,byx2,byx3
	</sql>

  <!-- 公共查询条件 -->
  <sql id="Example_Where_Clause">
    where deleted=0
    <if test="id!=null and id!=''">and id = #{id}</if>
    <if test="stationId!=null and stationId!=''">and station_id = #{stationId}</if>
    <if test="name!=null and name!=''">and name = #{name}</if>
    <if test="status!=null ">and status = #{status}</if>
    <if test="sysSign!=null and sysSign!=''">and sys_sign = #{sysSign}</if>
    <if test="deleted!=null ">and deleted = #{deleted}</if>
    <if test="createUserId!=null and createUserId!=''">and create_user_id = #{createUserId}</if>
    <if test="createTime!=null ">and create_time = #{createTime}</if>
    <if test="updateUserId!=null and updateUserId!=''">and update_user_id = #{updateUserId}</if>
    <if test="updateTime!=null ">and update_time = #{updateTime}</if>
    <if test="byx1!=null and byx1!=''">and byx1 = #{byx1}</if>
    <if test="byx2!=null and byx2!=''">and byx2 = #{byx2}</if>
    <if test="byx3!=null and byx3!=''">and byx3 = #{byx3}</if>
  </sql>
  <update id="deleteByLineId" parameterType="string">
    UPDATE ep_patrol_line SET deleted = 1,sys_sign = #{sysSign} WHERE id = #{id} AND deleted = 0
    <if test="stationId!=null and stationId!=''">and station_id = #{stationId}</if>
  </update>
  <select id="getTreeListByStationId" parameterType="string" resultType="com.devplatform.equipment.modules.eppatrolline.bean.EpPatrolLine">
		SELECT
			eq.*,
			COUNT(ep.id) as count
			FROM ep_patrol_line eq
			LEFT JOIN ep_patrol_plan ep ON ep.line_id = eq.id AND ep.deleted = 0 and ep.station_id = eq.station_id
		WHERE eq.station_id = #{stationId} AND  eq.deleted = 0
		GROUP BY eq.id
		ORDER BY eq.create_time DESC
	</select>


</mapper>