| | |
| | | <!--@mbg.generated--> |
| | | <!--@Table pr_controller--> |
| | | <id column="id" jdbcType="BIGINT" property="id" /> |
| | | <result column="code" jdbcType="VARCHAR" property="code" /> |
| | | <result column="intakeId" jdbcType="BIGINT" property="intakeId" /> |
| | | <result column="rtuAddr" jdbcType="VARCHAR" property="rtuAddr" /> |
| | | <result column="protocol" jdbcType="VARCHAR" property="protocol" /> |
| | | <result column="onlineState" jdbcType="TINYINT" property="onlinestate" /> |
| | | <result column="reportTime" jdbcType="TIMESTAMP" property="reporttime" /> |
| | | <result column="addWays" jdbcType="TINYINT" property="addways" /> |
| | | <result column="findDt" jdbcType="TIMESTAMP" property="findDt" /> |
| | | <result column="orgTag" jdbcType="VARCHAR" property="orgTag" /> |
| | | <result column="addWays" jdbcType="TINYINT" property="addWays" /> |
| | | <result column="operator" jdbcType="BIGINT" property="operator" /> |
| | | <result column="operateDt" jdbcType="TIMESTAMP" property="operatedt" /> |
| | | <result column="operateDt" jdbcType="TIMESTAMP" property="operateDt" /> |
| | | <result column="deleted" jdbcType="TINYINT" property="deleted" /> |
| | | </resultMap> |
| | | <resultMap id="PartResultMap" type="com.dy.pipIrrGlobal.pojoPr.PrController"> |
| | | <id column="id" jdbcType="BIGINT" property="id" /> |
| | | <result column="intakeId" jdbcType="BIGINT" property="intakeId" /> |
| | | <result column="rtuAddr" jdbcType="VARCHAR" property="rtuAddr" /> |
| | | </resultMap> |
| | | |
| | | <sql id="Base_Column_List"> |
| | | <!--@mbg.generated--> |
| | | id, code, protocol, onlineState, reportTime, addWays, `operator`, operateDt, deleted |
| | | id, intakeId, rtuAddr, protocol, findDt, orgTag, addWays, `operator`, operateDt, deleted |
| | | </sql> |
| | | <sql id="Part_Column_List"> |
| | | <!--@mbg.generated--> |
| | | id, rtuAddr, intakeId |
| | | </sql> |
| | | <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> |
| | | <!--@mbg.generated--> |
| | | select |
| | | select |
| | | <include refid="Base_Column_List" /> |
| | | from pr_controller |
| | | where id = #{id,jdbcType=BIGINT} |
| | |
| | | delete from pr_controller |
| | | where id = #{id,jdbcType=BIGINT} |
| | | </delete> |
| | | |
| | | <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoPr.PrController"> |
| | | <!--@mbg.generated--> |
| | | insert into pr_controller (id, code, protocol, |
| | | onlineState, reportTime, addWays, |
| | | insert into pr_controller (id, intakeId, rtuAddr, |
| | | protocol, findDt, orgTag, addWays, |
| | | `operator`, operateDt, deleted |
| | | ) |
| | | values (#{id,jdbcType=BIGINT}, #{code,jdbcType=VARCHAR}, #{protocol,jdbcType=VARCHAR}, |
| | | #{onlinestate,jdbcType=TINYINT}, #{reporttime,jdbcType=TIMESTAMP}, #{addways,jdbcType=TINYINT}, |
| | | #{operator,jdbcType=BIGINT}, #{operatedt,jdbcType=TIMESTAMP}, #{deleted,jdbcType=TINYINT} |
| | | values (#{id,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT}, #{rtuAddr,jdbcType=VARCHAR}, |
| | | #{protocol,jdbcType=VARCHAR}, #{findDt,jdbcType=TIMESTAMP}, #{orgTag,jdbcType=VARCHAR}, |
| | | #{addWays,jdbcType=TINYINT}, #{operator,jdbcType=BIGINT}, #{operateDt,jdbcType=TIMESTAMP}, |
| | | #{deleted,jdbcType=TINYINT} |
| | | ) |
| | | </insert> |
| | | |
| | | <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrController"> |
| | | <!--@mbg.generated--> |
| | | insert into pr_controller |
| | |
| | | <if test="id != null"> |
| | | id, |
| | | </if> |
| | | <if test="code != null"> |
| | | code, |
| | | <if test="intakeId != null"> |
| | | intakeId, |
| | | </if> |
| | | <if test="rtuAddr != null"> |
| | | rtuAddr, |
| | | </if> |
| | | <if test="protocol != null"> |
| | | protocol, |
| | | </if> |
| | | <if test="onlinestate != null"> |
| | | onlineState, |
| | | <if test="findDt != null"> |
| | | findDt, |
| | | </if> |
| | | <if test="reporttime != null"> |
| | | reportTime, |
| | | <if test="orgTag != null"> |
| | | orgTag, |
| | | </if> |
| | | <if test="addways != null"> |
| | | <if test="addWays != null"> |
| | | addWays, |
| | | </if> |
| | | <if test="operator != null"> |
| | | `operator`, |
| | | </if> |
| | | <if test="operatedt != null"> |
| | | <if test="operateDt != null"> |
| | | operateDt, |
| | | </if> |
| | | <if test="deleted != null"> |
| | |
| | | <if test="id != null"> |
| | | #{id,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="code != null"> |
| | | #{code,jdbcType=VARCHAR}, |
| | | <if test="intakeId != null"> |
| | | #{intakeId,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="rtuAddr != null"> |
| | | #{rtuAddr,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="protocol != null"> |
| | | #{protocol,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="onlinestate != null"> |
| | | #{onlinestate,jdbcType=TINYINT}, |
| | | <if test="findDt != null"> |
| | | #{findDt,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="reporttime != null"> |
| | | #{reporttime,jdbcType=TIMESTAMP}, |
| | | <if test="orgTag != null"> |
| | | #{orgTag,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="addways != null"> |
| | | #{addways,jdbcType=TINYINT}, |
| | | <if test="addWays != null"> |
| | | #{addWays,jdbcType=TINYINT}, |
| | | </if> |
| | | <if test="operator != null"> |
| | | #{operator,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="operatedt != null"> |
| | | #{operatedt,jdbcType=TIMESTAMP}, |
| | | <if test="operateDt != null"> |
| | | #{operateDt,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="deleted != null"> |
| | | #{deleted,jdbcType=TINYINT}, |
| | |
| | | <!--@mbg.generated--> |
| | | update pr_controller |
| | | <set> |
| | | <if test="code != null"> |
| | | code = #{code,jdbcType=VARCHAR}, |
| | | <if test="intakeId != null"> |
| | | intakeId = #{intakeId,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="rtuAddr != null"> |
| | | rtuAddr = #{rtuAddr,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="protocol != null"> |
| | | protocol = #{protocol,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="onlinestate != null"> |
| | | onlineState = #{onlinestate,jdbcType=TINYINT}, |
| | | <if test="findDt != null"> |
| | | findDt = #{findDt,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="reporttime != null"> |
| | | reportTime = #{reporttime,jdbcType=TIMESTAMP}, |
| | | <if test="orgTag != null"> |
| | | orgTag = #{orgTag,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="addways != null"> |
| | | addWays = #{addways,jdbcType=TINYINT}, |
| | | <if test="addWays != null"> |
| | | addWays = #{addWays,jdbcType=TINYINT}, |
| | | </if> |
| | | <if test="operator != null"> |
| | | `operator` = #{operator,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="operatedt != null"> |
| | | operateDt = #{operatedt,jdbcType=TIMESTAMP}, |
| | | <if test="operateDt != null"> |
| | | operateDt = #{operateDt,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="deleted != null"> |
| | | deleted = #{deleted,jdbcType=TINYINT}, |
| | |
| | | <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoPr.PrController"> |
| | | <!--@mbg.generated--> |
| | | update pr_controller |
| | | set code = #{code,jdbcType=VARCHAR}, |
| | | set intakeId = #{intakeId,jdbcType=BIGINT}, |
| | | rtuAddr = #{rtuAddr,jdbcType=VARCHAR}, |
| | | protocol = #{protocol,jdbcType=VARCHAR}, |
| | | onlineState = #{onlinestate,jdbcType=TINYINT}, |
| | | reportTime = #{reporttime,jdbcType=TIMESTAMP}, |
| | | addWays = #{addways,jdbcType=TINYINT}, |
| | | findDt = #{findDt,jdbcType=TIMESTAMP}, |
| | | orgTag = #{orgTag,jdbcType=VARCHAR}, |
| | | addWays = #{addWays,jdbcType=TINYINT}, |
| | | `operator` = #{operator,jdbcType=BIGINT}, |
| | | operateDt = #{operatedt,jdbcType=TIMESTAMP}, |
| | | operateDt = #{operateDt,jdbcType=TIMESTAMP}, |
| | | deleted = #{deleted,jdbcType=TINYINT} |
| | | where id = #{id,jdbcType=BIGINT} |
| | | </update> |
| | | |
| | | <!--根据指定获取控制器记录数--> |
| | | <!--根据控制器编号删除取水口编号--> |
| | | <update id="deleteIntakeId"> |
| | | UPDATE pr_controller SET intakeId = null WHERE id = ${controllerId} |
| | | </update> |
| | | |
| | | <!--根据指定条件获取控制器记录数--> |
| | | <select id="getRecordCount" resultType="java.lang.Long"> |
| | | SELECT |
| | | COUNT(*) AS recordCount |
| | | COUNT(*) AS recordCount |
| | | FROM pr_controller con |
| | | INNER JOIN pr_intake_controller ic ON ic.controllerId = con.id |
| | | INNER JOIN pr_intake inta ON ic.intakeId = inta.id |
| | | , (SELECT @i:=0) AS itable |
| | | LEFT JOIN pr_intake_controller ic ON ic.controllerId = con.id |
| | | INNER JOIN pr_intake inta ON con.intakeId = inta.id |
| | | left JOIN JSON_TABLE( |
| | | <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',--> |
| | | #{onLineMap}, |
| | | '$[*]' COLUMNS( |
| | | rtuAddr VARCHAR(20) PATH '$.rtuAddr', |
| | | isOnLine BOOLEAN PATH '$.isOnLine' |
| | | ) |
| | | ) rtus ON con.rtuAddr = rtus.rtuAddr |
| | | <where> |
| | | AND ic.operateType = 1 |
| | | AND con.deleted = 0 |
| | | |
| | | <if test = "id != null and id > 0"> |
| | | AND con.id = ${id} |
| | | </if> |
| | | |
| | | <if test = "controllerCode != null and controllerCode !=''"> |
| | | AND con.code like CONCAT('%',#{controllerCode},'%') |
| | | <if test = "rtuAddr != null and rtuAddr !=''"> |
| | | AND con.rtuAddr like CONCAT('%',#{rtuAddr},'%') |
| | | </if> |
| | | |
| | | <if test = "onlineState != null and onlineState > 0"> |
| | | AND con.onlineState = ${onlineState} |
| | | <if test="isOnLine != null and isOnLine !='' "> |
| | | AND rtus.isOnLine = #{isOnLine} |
| | | </if> |
| | | |
| | | <if test = "bindNumber != null and bindNumber > 0"> |
| | | AND (SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND intakeId = inta.id AND operateType = 1) = ${bindNumber} |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | | <!--根据指定获取控制器记录--> |
| | | <!--根据指定条件获取控制器记录--> |
| | | <select id="getControllers" resultType="com.dy.pipIrrGlobal.voPr.VoController"> |
| | | SELECT |
| | | (@i:=@i+1) AS id, |
| | | t.* FROM( |
| | | SELECT |
| | | con.code AS controllerCode, |
| | | (CASE |
| | | WHEN con.onlineState = 1 THEN "在线" |
| | | WHEN con.onlineState = 2 THEN "离线" |
| | | END) AS onlineState, |
| | | inta.name AS intakeName, |
| | | (SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND intakeId = inta.id AND operateType = 1) AS bindNumber, |
| | | con.reportTime |
| | | FROM pr_controller con |
| | | INNER JOIN pr_intake_controller ic ON ic.controllerId = con.id |
| | | INNER JOIN pr_intake inta ON ic.intakeId = inta.id |
| | | <where> |
| | | AND ic.operateType = 1 |
| | | CAST(con.id AS char) AS id, |
| | | con.rtuAddr AS rtuAddr, |
| | | inta.name AS intakeName, |
| | | con.protocol, |
| | | inta.remarks, |
| | | rtus.isOnLine, |
| | | (SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND operateType = 1) AS bindNumber, |
| | | con.findDt AS findDt |
| | | FROM pr_controller con |
| | | LEFT JOIN pr_intake_controller ic ON ic.controllerId = con.id |
| | | INNER JOIN pr_intake inta ON con.intakeId = inta.id |
| | | left JOIN JSON_TABLE( |
| | | <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',--> |
| | | #{onLineMap}, |
| | | '$[*]' COLUMNS( |
| | | rtuAddr VARCHAR(20) PATH '$.rtuAddr', |
| | | isOnLine BOOLEAN PATH '$.isOnLine' |
| | | ) |
| | | ) rtus ON con.rtuAddr = rtus.rtuAddr |
| | | <where> |
| | | AND con.deleted = 0 |
| | | |
| | | <if test = "id != null and id > 0"> |
| | | AND con.id = ${id} |
| | | </if> |
| | | |
| | | <if test = "controllerCode != null and controllerCode !=''"> |
| | | AND con.code like CONCAT('%',#{controllerCode},'%') |
| | | </if> |
| | | |
| | | <if test = "onlineState != null and onlineState > 0"> |
| | | AND con.onlineState = ${onlineState} |
| | | </if> |
| | | |
| | | <if test = "bindNumber != null and bindNumber > 0"> |
| | | AND (SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND intakeId = inta.id AND operateType = 1) = ${bindNumber} |
| | | </if> |
| | | </where> |
| | | ORDER BY con.operateDt DESC |
| | | <if test="pageCurr != null and pageSize != null"> |
| | | LIMIT ${pageCurr}, ${pageSize} |
| | | </if> |
| | | ) t |
| | | , (SELECT @i:=0) AS itable |
| | | <if test = "id != null and id > 0"> |
| | | AND con.id = ${id} |
| | | </if> |
| | | <if test = "rtuAddr != null and rtuAddr !=''"> |
| | | AND con.rtuAddr like CONCAT('%',#{rtuAddr},'%') |
| | | </if> |
| | | <if test="isOnLine != null and isOnLine !='' "> |
| | | AND rtus.isOnLine = #{isOnLine} |
| | | </if> |
| | | <if test = "bindNumber != null and bindNumber > 0"> |
| | | AND (SELECT COUNT(*) FROM pr_intake_controller WHERE controllerId = con.id AND intakeId = inta.id AND operateType = 1) = ${bindNumber} |
| | | </if> |
| | | </where> |
| | | ORDER BY con.operateDt DESC |
| | | <trim prefix="limit " > |
| | | <if test="start != null and count != null"> |
| | | #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} |
| | | </if> |
| | | </trim> |
| | | </select> |
| | | |
| | | <!--根据控制器编号获取控制器列表--> |
| | | <select id="getControllersByCode" resultType="java.util.Map"> |
| | | SELECT id, code FROM pr_controller WHERE code LIKE CONCAT('%',#{controllerCode},'%') |
| | | <!--根据控制器地址获取控制器列表--> |
| | | <select id="getControllersByAddr" resultType="java.util.Map"> |
| | | SELECT id, rtuAddr FROM pr_controller WHERE deleted = 0 AND rtuAddr LIKE CONCAT('%',#{rtuAddr},'%') |
| | | </select> |
| | | |
| | | <!--根据控制器地址获取控制器列表--> |
| | | <select id="getControllersByRtuAddrAndIntakeNotNull" parameterType="java.lang.String" resultType="com.dy.pipIrrGlobal.pojoPr.PrController"> |
| | | SELECT tb.id id, |
| | | tb.rtuAddr rtuAddr, |
| | | tb.intakeId intakeId, |
| | | itb.name intakeName |
| | | FROM pr_controller tb |
| | | INNER JOIN pr_intake itb on tb.intakeId = itb.id |
| | | WHERE tb.deleted = 0 AND tb.intakeId is not null AND tb.rtuAddr=#{rtuAddr,jdbcType=VARCHAR} |
| | | </select> |
| | | |
| | | <!--根据控制器编号逻辑删除控制--> |
| | | <update id="deleteControllerById"> |
| | | UPDATE pr_controller SET deleted = 1 WHERE id = ${controllerId} |
| | | </update> |
| | | |
| | | <!--根据控制器编号获取未删除的控制器数量--> |
| | | <select id="getRecordCountOfController" resultType="java.lang.Integer"> |
| | | SELECT COUNT(*) AS recordCount FROM pr_controller WHERE deleted = 0 AND id = ${controllerId} |
| | | </select> |
| | | |
| | | <!--根据流浪控制器编号获取已绑定记录数--> |
| | | <select id="getBindedCount" resultType="java.lang.Integer"> |
| | | SELECT COUNT(*) AS recordCount FROM pr_controller WHERE rtuAddr = (SELECT rtuAddr FROM pr_controller_tramp WHERE id = ${controllerId}) AND intakeId IS NOT NULL |
| | | </select> |
| | | |
| | | <!--根据取水口ID或阀控器地址获取阀控器对象--> |
| | | <select id="getRtu" resultType="com.dy.pipIrrGlobal.pojoPr.PrController"> |
| | | SELECT * FROM pr_controller |
| | | <where> |
| | | AND deleted = 0 |
| | | <if test = "intakeId != null"> |
| | | AND intakeId = #{intakeId} |
| | | </if> |
| | | <if test = "rtuAddr != null"> |
| | | AND rtuAddr = #{rtuAddr} |
| | | </if> |
| | | </where> |
| | | LIMIT 0,1 |
| | | </select> |
| | | </mapper> |