Merge remote-tracking branch 'git-pipIrr/master'
|  |  |  | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voRm.VoOnHour; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoBatteryVolt; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoCumulativeFlow; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoSignalIntensity; | 
|---|
|  |  |  | import org.apache.ibatis.annotations.Mapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoBatteryVolt> getUnderVoltIntakes(Map<?, ?> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定信号强度的取水口数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getSpecifiedSignalIntakesCount(Map<?, ?> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定信号强度的取水口 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoSignalIntensity> getSpecifiedSignalIntakes(Map<?, ?> params); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.core.mapper.BaseMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveHistory; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voRm.VoOpenCloseValve; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoIntake; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoIntakeOpenCount; | 
|---|
|  |  |  | import org.apache.ibatis.annotations.Mapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoOpenCloseValve> getOpenCloseValveReports_history(Map<?, ?> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内从未开过阀的取水口数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getNeverOpenValveIntakesCount(Map<?, ?> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内从未开过阀的取水口 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoIntake> getNeverOpenValveIntakes(Map<?, ?> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数超过指定值的取水口数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getOpenValveGtIntakesCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数超过指定值的取水口 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoIntakeOpenCount> getOpenValveGtIntakes(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数低于指定值的取水口数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getOpenValveLtIntakesCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数低于指定值的取水口 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoIntakeOpenCount> getOpenValveLtIntakes(Map<String, Object> params); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | private Double lat; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 累计流量 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private Double totalAmount; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 是否在线 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private Boolean isOnLine; | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.dy.pipIrrGlobal.voSt; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.alibaba.fastjson2.annotation.JSONField; | 
|---|
|  |  |  | import com.alibaba.fastjson2.writer.ObjectWriterImplToString; | 
|---|
|  |  |  | import lombok.Data; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @author :WuZeYu | 
|---|
|  |  |  | * @Date :2024/8/5  10:45 | 
|---|
|  |  |  | * @LastEditTime :2024/8/5  10:45 | 
|---|
|  |  |  | * @Description 取水口开阀 指定值 次数 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | public class VoIntakeOpenCount extends VoIntake{ | 
|---|
|  |  |  | private static final long serialVersionUID = 202408051046001L; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 指定值 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private Long recordCount; | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.dy.pipIrrGlobal.voSt; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.fasterxml.jackson.annotation.JsonFormat; | 
|---|
|  |  |  | import lombok.Data; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @author ZhuBaoMin | 
|---|
|  |  |  | * @date 2024-08-05 8:39 | 
|---|
|  |  |  | * @LastEditTime 2024-08-05 8:39 | 
|---|
|  |  |  | * @Description 信号强度视图 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | public class VoSignalIntensity extends VoIntake { | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 信号强度 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private Integer signValue; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 数据获取日期 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @JsonFormat(pattern = "yyyy-MM-dd") | 
|---|
|  |  |  | private Date getDate; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | pipIrr: | 
|---|
|  |  |  | global: | 
|---|
|  |  |  | dev: false   #是否开发阶段,true或false | 
|---|
|  |  |  | dev: flase   #是否开发阶段,true或false | 
|---|
|  |  |  | dsName: ym  #开发阶段,设置临时的数据库名称 | 
|---|
|  |  |  | mw: | 
|---|
|  |  |  | webPort: 8070 | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #阀控器参数 | 
|---|
|  |  |  | rtu: | 
|---|
|  |  |  | batteryVolt: 17 | 
|---|
|  |  |  | batteryVolt: 17 | 
|---|
|  |  |  | signalIntensity: | 
|---|
|  |  |  | weak: 10 | 
|---|
|  |  |  | ordinary: 20 | 
|---|
|  |  |  | #        strong: 20 | 
|---|
|  |  |  | 
|---|
|  |  |  | <?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.dy.pipIrrGlobal.daoPr.PrIntakeMapper"> | 
|---|
|  |  |  | <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoPr.PrIntake"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | <!--@Table pr_intake--> | 
|---|
|  |  |  | <id column="id" jdbcType="BIGINT" property="id" /> | 
|---|
|  |  |  | <result column="countyId" jdbcType="BIGINT" property="countyId" /> | 
|---|
|  |  |  | <result column="townId" jdbcType="BIGINT" property="townId" /> | 
|---|
|  |  |  | <result column="villageId" jdbcType="BIGINT" property="villageId" /> | 
|---|
|  |  |  | <result column="divideId" jdbcType="BIGINT" property="divideId" /> | 
|---|
|  |  |  | <result column="blockId" jdbcType="BIGINT" property="blockId" /> | 
|---|
|  |  |  | <result column="name" jdbcType="VARCHAR" property="name" /> | 
|---|
|  |  |  | <result column="lng" jdbcType="DOUBLE" property="lng" /> | 
|---|
|  |  |  | <result column="lat" jdbcType="DOUBLE" property="lat" /> | 
|---|
|  |  |  | <result column="remarks" jdbcType="VARCHAR" property="remarks" /> | 
|---|
|  |  |  | <result column="operator" jdbcType="BIGINT" property="operator" /> | 
|---|
|  |  |  | <result column="operateDt" jdbcType="TIMESTAMP" property="operateDt" /> | 
|---|
|  |  |  | <result column="deleted" jdbcType="TINYINT" property="deleted" /> | 
|---|
|  |  |  | </resultMap> | 
|---|
|  |  |  | <sql id="Base_Column_List"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | id, countyId, townId, villageId, divideId, blockId, `name`, lng, lat, remarks, `operator`, | 
|---|
|  |  |  | operateDt, deleted | 
|---|
|  |  |  | </sql> | 
|---|
|  |  |  | <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | select | 
|---|
|  |  |  | <include refid="Base_Column_List" /> | 
|---|
|  |  |  | from pr_intake | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} and deleted = 0 | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <delete id="deleteLogicById" parameterType="java.lang.Long"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update pr_intake | 
|---|
|  |  |  | set deleted = 1 | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </delete> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="selectAll" resultMap="BaseResultMap"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | select | 
|---|
|  |  |  | <include refid="Base_Column_List"/> | 
|---|
|  |  |  | from pr_intake | 
|---|
|  |  |  | where deleted != 1 | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | delete from pr_intake | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </delete> | 
|---|
|  |  |  | <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoPr.PrIntake"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | insert into pr_intake (id, countyId, townId, | 
|---|
|  |  |  | villageId, divideId, blockId, | 
|---|
|  |  |  | `name`, lng, lat, remarks, | 
|---|
|  |  |  | `operator`, operateDt, deleted | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | values (#{id,jdbcType=BIGINT}, #{countyId,jdbcType=BIGINT}, #{townId,jdbcType=BIGINT}, | 
|---|
|  |  |  | #{villageId,jdbcType=BIGINT}, #{divideId,jdbcType=BIGINT}, #{blockId,jdbcType=BIGINT}, | 
|---|
|  |  |  | #{name,jdbcType=VARCHAR}, #{lng,jdbcType=DOUBLE}, #{lat,jdbcType=DOUBLE}, #{remarks,jdbcType=VARCHAR}, | 
|---|
|  |  |  | #{operator,jdbcType=BIGINT}, #{operateDt,jdbcType=TIMESTAMP}, #{deleted,jdbcType=TINYINT} | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | </insert> | 
|---|
|  |  |  | <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrIntake"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | insert into pr_intake | 
|---|
|  |  |  | <trim prefix="(" suffix=")" suffixOverrides=","> | 
|---|
|  |  |  | <if test="id != null"> | 
|---|
|  |  |  | <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoPr.PrIntake"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | <!--@Table pr_intake--> | 
|---|
|  |  |  | <id column="id" jdbcType="BIGINT" property="id"/> | 
|---|
|  |  |  | <result column="countyId" jdbcType="BIGINT" property="countyId"/> | 
|---|
|  |  |  | <result column="townId" jdbcType="BIGINT" property="townId"/> | 
|---|
|  |  |  | <result column="villageId" jdbcType="BIGINT" property="villageId"/> | 
|---|
|  |  |  | <result column="divideId" jdbcType="BIGINT" property="divideId"/> | 
|---|
|  |  |  | <result column="blockId" jdbcType="BIGINT" property="blockId"/> | 
|---|
|  |  |  | <result column="name" jdbcType="VARCHAR" property="name"/> | 
|---|
|  |  |  | <result column="lng" jdbcType="DOUBLE" property="lng"/> | 
|---|
|  |  |  | <result column="lat" jdbcType="DOUBLE" property="lat"/> | 
|---|
|  |  |  | <result column="remarks" jdbcType="VARCHAR" property="remarks"/> | 
|---|
|  |  |  | <result column="operator" jdbcType="BIGINT" property="operator"/> | 
|---|
|  |  |  | <result column="operateDt" jdbcType="TIMESTAMP" property="operateDt"/> | 
|---|
|  |  |  | <result column="deleted" jdbcType="TINYINT" property="deleted"/> | 
|---|
|  |  |  | </resultMap> | 
|---|
|  |  |  | <sql id="Base_Column_List"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="countyId != null"> | 
|---|
|  |  |  | countyId, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="townId != null"> | 
|---|
|  |  |  | townId, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="villageId != null"> | 
|---|
|  |  |  | villageId, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="divideId != null"> | 
|---|
|  |  |  | divideId, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="blockId != null"> | 
|---|
|  |  |  | blockId, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="name != null"> | 
|---|
|  |  |  | `name`, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lng != null"> | 
|---|
|  |  |  | lng, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lat != null"> | 
|---|
|  |  |  | lat, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="remarks != null"> | 
|---|
|  |  |  | remarks, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operator != null"> | 
|---|
|  |  |  | `operator`, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operateDt != null"> | 
|---|
|  |  |  | operateDt, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="deleted != null"> | 
|---|
|  |  |  | deleted, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | <trim prefix="values (" suffix=")" suffixOverrides=","> | 
|---|
|  |  |  | <if test="id != null"> | 
|---|
|  |  |  | #{id,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="countyId != null"> | 
|---|
|  |  |  | #{countyId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="townId != null"> | 
|---|
|  |  |  | #{townId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="villageId != null"> | 
|---|
|  |  |  | #{villageId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="divideId != null"> | 
|---|
|  |  |  | #{divideId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="blockId != null"> | 
|---|
|  |  |  | #{blockId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="name != null"> | 
|---|
|  |  |  | #{name,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lng != null"> | 
|---|
|  |  |  | #{lng,jdbcType=DOUBLE}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lat != null"> | 
|---|
|  |  |  | #{lat,jdbcType=DOUBLE}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="remarks != null"> | 
|---|
|  |  |  | #{remarks,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operator != null"> | 
|---|
|  |  |  | #{operator,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operateDt != null"> | 
|---|
|  |  |  | #{operateDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="deleted != null"> | 
|---|
|  |  |  | #{deleted,jdbcType=TINYINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | </insert> | 
|---|
|  |  |  | <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrIntake"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update pr_intake | 
|---|
|  |  |  | <set> | 
|---|
|  |  |  | <if test="countyId != null"> | 
|---|
|  |  |  | countyId = #{countyId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="townId != null"> | 
|---|
|  |  |  | townId = #{townId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="villageId != null"> | 
|---|
|  |  |  | villageId = #{villageId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="divideId != null"> | 
|---|
|  |  |  | divideId = #{divideId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="blockId != null"> | 
|---|
|  |  |  | blockId = #{blockId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="name != null"> | 
|---|
|  |  |  | `name` = #{name,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lng != null"> | 
|---|
|  |  |  | lng = #{lng,jdbcType=DOUBLE}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lat != null"> | 
|---|
|  |  |  | lat = #{lat,jdbcType=DOUBLE}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="remarks != null"> | 
|---|
|  |  |  | remarks = #{remarks,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operator != null"> | 
|---|
|  |  |  | `operator` = #{operator,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operateDt != null"> | 
|---|
|  |  |  | operateDt = #{operateDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="deleted != null"> | 
|---|
|  |  |  | deleted = #{deleted,jdbcType=TINYINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </set> | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  | <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoPr.PrIntake"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update pr_intake | 
|---|
|  |  |  | set countyId = #{countyId,jdbcType=BIGINT}, | 
|---|
|  |  |  | townId = #{townId,jdbcType=BIGINT}, | 
|---|
|  |  |  | villageId = #{villageId,jdbcType=BIGINT}, | 
|---|
|  |  |  | divideId = #{divideId,jdbcType=BIGINT}, | 
|---|
|  |  |  | blockId = #{blockId,jdbcType=BIGINT}, | 
|---|
|  |  |  | `name` = #{name,jdbcType=VARCHAR}, | 
|---|
|  |  |  | lng = #{lng,jdbcType=DOUBLE}, | 
|---|
|  |  |  | lat = #{lat,jdbcType=DOUBLE}, | 
|---|
|  |  |  | remarks = #{remarks,jdbcType=VARCHAR}, | 
|---|
|  |  |  | `operator` = #{operator,jdbcType=BIGINT}, | 
|---|
|  |  |  | operateDt = #{operateDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | deleted = #{deleted,jdbcType=TINYINT} | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  | deleted | 
|---|
|  |  |  | </sql> | 
|---|
|  |  |  | <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | select | 
|---|
|  |  |  | <include refid="Base_Column_List"/> | 
|---|
|  |  |  | from pr_intake | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | and deleted = 0 | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据指定条件获取取水口记录数--> | 
|---|
|  |  |  | <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake ge | 
|---|
|  |  |  | INNER JOIN pr_divide divi ON ge.divideId = divi.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON divi.blockId = blo.id | 
|---|
|  |  |  | LEFT JOIN ba_district country ON ge.countyId = country.id | 
|---|
|  |  |  | LEFT JOIN ba_district town ON ge.townId = town.id | 
|---|
|  |  |  | LEFT JOIN ba_district village ON ge.villageId = village.id | 
|---|
|  |  |  | LEFT JOIN pr_controller cont ON ge.id = cont.intakeId | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | ge.deleted = 0 | 
|---|
|  |  |  | AND divi.deleted = 0 | 
|---|
|  |  |  | and blo.deleted = 0 | 
|---|
|  |  |  | <if test="intakeName != null and intakeName != ''"> | 
|---|
|  |  |  | AND ge.name LIKE CONCAT('%', #{intakeName}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <delete id="deleteLogicById" parameterType="java.lang.Long"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update pr_intake | 
|---|
|  |  |  | set deleted = 1 | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </delete> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test = "divideId != null and divideId !=''"> | 
|---|
|  |  |  | AND divi.id = #{divideId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <select id="selectAll" resultMap="BaseResultMap"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | select | 
|---|
|  |  |  | <include refid="Base_Column_List"/> | 
|---|
|  |  |  | from pr_intake | 
|---|
|  |  |  | where deleted != 1 | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | delete | 
|---|
|  |  |  | from pr_intake | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </delete> | 
|---|
|  |  |  | <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoPr.PrIntake"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | insert into pr_intake (id, countyId, townId, | 
|---|
|  |  |  | villageId, divideId, blockId, | 
|---|
|  |  |  | `name`, lng, lat, remarks, | 
|---|
|  |  |  | `operator`, operateDt, deleted) | 
|---|
|  |  |  | values (#{id,jdbcType=BIGINT}, #{countyId,jdbcType=BIGINT}, #{townId,jdbcType=BIGINT}, | 
|---|
|  |  |  | #{villageId,jdbcType=BIGINT}, #{divideId,jdbcType=BIGINT}, #{blockId,jdbcType=BIGINT}, | 
|---|
|  |  |  | #{name,jdbcType=VARCHAR}, #{lng,jdbcType=DOUBLE}, #{lat,jdbcType=DOUBLE}, #{remarks,jdbcType=VARCHAR}, | 
|---|
|  |  |  | #{operator,jdbcType=BIGINT}, #{operateDt,jdbcType=TIMESTAMP}, #{deleted,jdbcType=TINYINT}) | 
|---|
|  |  |  | </insert> | 
|---|
|  |  |  | <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrIntake"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | insert into pr_intake | 
|---|
|  |  |  | <trim prefix="(" suffix=")" suffixOverrides=","> | 
|---|
|  |  |  | <if test="id != null"> | 
|---|
|  |  |  | id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="countyId != null"> | 
|---|
|  |  |  | countyId, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="townId != null"> | 
|---|
|  |  |  | townId, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="villageId != null"> | 
|---|
|  |  |  | villageId, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="divideId != null"> | 
|---|
|  |  |  | divideId, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="blockId != null"> | 
|---|
|  |  |  | blockId, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="name != null"> | 
|---|
|  |  |  | `name`, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lng != null"> | 
|---|
|  |  |  | lng, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lat != null"> | 
|---|
|  |  |  | lat, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="remarks != null"> | 
|---|
|  |  |  | remarks, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operator != null"> | 
|---|
|  |  |  | `operator`, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operateDt != null"> | 
|---|
|  |  |  | operateDt, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="deleted != null"> | 
|---|
|  |  |  | deleted, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | <trim prefix="values (" suffix=")" suffixOverrides=","> | 
|---|
|  |  |  | <if test="id != null"> | 
|---|
|  |  |  | #{id,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="countyId != null"> | 
|---|
|  |  |  | #{countyId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="townId != null"> | 
|---|
|  |  |  | #{townId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="villageId != null"> | 
|---|
|  |  |  | #{villageId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="divideId != null"> | 
|---|
|  |  |  | #{divideId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="blockId != null"> | 
|---|
|  |  |  | #{blockId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="name != null"> | 
|---|
|  |  |  | #{name,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lng != null"> | 
|---|
|  |  |  | #{lng,jdbcType=DOUBLE}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lat != null"> | 
|---|
|  |  |  | #{lat,jdbcType=DOUBLE}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="remarks != null"> | 
|---|
|  |  |  | #{remarks,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operator != null"> | 
|---|
|  |  |  | #{operator,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operateDt != null"> | 
|---|
|  |  |  | #{operateDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="deleted != null"> | 
|---|
|  |  |  | #{deleted,jdbcType=TINYINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | </insert> | 
|---|
|  |  |  | <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoPr.PrIntake"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update pr_intake | 
|---|
|  |  |  | <set> | 
|---|
|  |  |  | <if test="countyId != null"> | 
|---|
|  |  |  | countyId = #{countyId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="townId != null"> | 
|---|
|  |  |  | townId = #{townId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="villageId != null"> | 
|---|
|  |  |  | villageId = #{villageId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="divideId != null"> | 
|---|
|  |  |  | divideId = #{divideId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="blockId != null"> | 
|---|
|  |  |  | blockId = #{blockId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="name != null"> | 
|---|
|  |  |  | `name` = #{name,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lng != null"> | 
|---|
|  |  |  | lng = #{lng,jdbcType=DOUBLE}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lat != null"> | 
|---|
|  |  |  | lat = #{lat,jdbcType=DOUBLE}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="remarks != null"> | 
|---|
|  |  |  | remarks = #{remarks,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operator != null"> | 
|---|
|  |  |  | `operator` = #{operator,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="operateDt != null"> | 
|---|
|  |  |  | operateDt = #{operateDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="deleted != null"> | 
|---|
|  |  |  | deleted = #{deleted,jdbcType=TINYINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </set> | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  | <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoPr.PrIntake"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update pr_intake | 
|---|
|  |  |  | set countyId   = #{countyId,jdbcType=BIGINT}, | 
|---|
|  |  |  | townId     = #{townId,jdbcType=BIGINT}, | 
|---|
|  |  |  | villageId  = #{villageId,jdbcType=BIGINT}, | 
|---|
|  |  |  | divideId   = #{divideId,jdbcType=BIGINT}, | 
|---|
|  |  |  | blockId    = #{blockId,jdbcType=BIGINT}, | 
|---|
|  |  |  | `name`     = #{name,jdbcType=VARCHAR}, | 
|---|
|  |  |  | lng        = #{lng,jdbcType=DOUBLE}, | 
|---|
|  |  |  | lat        = #{lat,jdbcType=DOUBLE}, | 
|---|
|  |  |  | remarks    = #{remarks,jdbcType=VARCHAR}, | 
|---|
|  |  |  | `operator` = #{operator,jdbcType=BIGINT}, | 
|---|
|  |  |  | operateDt  = #{operateDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | deleted    = #{deleted,jdbcType=TINYINT} | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test = "blockId != null and blockId !=''"> | 
|---|
|  |  |  | AND blo.id = #{blockId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <!--根据指定条件获取取水口记录数--> | 
|---|
|  |  |  | <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake ge | 
|---|
|  |  |  | INNER JOIN pr_divide divi ON ge.divideId = divi.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON divi.blockId = blo.id | 
|---|
|  |  |  | LEFT JOIN ba_district country ON ge.countyId = country.id | 
|---|
|  |  |  | LEFT JOIN ba_district town ON ge.townId = town.id | 
|---|
|  |  |  | LEFT JOIN ba_district village ON ge.villageId = village.id | 
|---|
|  |  |  | LEFT JOIN pr_controller cont ON ge.id = cont.intakeId | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | ge.deleted = 0 | 
|---|
|  |  |  | AND divi.deleted = 0 | 
|---|
|  |  |  | and blo.deleted = 0 | 
|---|
|  |  |  | <if test="intakeName != null and intakeName != ''"> | 
|---|
|  |  |  | AND ge.name LIKE CONCAT('%', #{intakeName}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test="isBinded == 0"> | 
|---|
|  |  |  | AND ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == 1"> | 
|---|
|  |  |  | AND ge.id IN(SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == null"> | 
|---|
|  |  |  | <if test="divideId != null and divideId != ''"> | 
|---|
|  |  |  | AND divi.id = #{divideId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="address != null and address != ''"> | 
|---|
|  |  |  | AND CONCAT(country.`name`, town.`name`, village.`name`) LIKE CONCAT('%', #{address}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <if test="blockId != null and blockId != ''"> | 
|---|
|  |  |  | AND blo.id = #{blockId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据指定条件获取取水口记录--> | 
|---|
|  |  |  | <select id="getIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoIntake"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | CAST(ge.id AS char)                                 AS intakeId, | 
|---|
|  |  |  | ge.`name`                                           AS intakeName, | 
|---|
|  |  |  | CAST(divi.id AS char)                               AS divideId, | 
|---|
|  |  |  | divi.`name`                                         AS divideName, | 
|---|
|  |  |  | CAST(blo.id AS char)                                AS blockId, | 
|---|
|  |  |  | blo.`name`                                          AS blockName, | 
|---|
|  |  |  | CAST(cont.id AS char)                               AS controllerId, | 
|---|
|  |  |  | cont.rtuAddr                                        AS rtuAddr, | 
|---|
|  |  |  | ge.lng, | 
|---|
|  |  |  | ge.lat, | 
|---|
|  |  |  | ge.remarks, | 
|---|
|  |  |  | ge.operator, | 
|---|
|  |  |  | ge.operateDt                                        As operateDt, | 
|---|
|  |  |  | (CASE | 
|---|
|  |  |  | WHEN ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0)  THEN "未绑定" | 
|---|
|  |  |  | WHEN ge.id IN(SELECT intakeId FROM pr_controller  where deleted = 0)  THEN "已绑定" | 
|---|
|  |  |  | END) AS isBind, | 
|---|
|  |  |  | CONCAT(country.`name`, town.`name`, village.`name`) AS address | 
|---|
|  |  |  | FROM pr_intake ge | 
|---|
|  |  |  | INNER JOIN pr_divide divi ON ge.divideId = divi.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON divi.blockId = blo.id | 
|---|
|  |  |  | LEFT JOIN ba_district country ON ge.countyId = country.id | 
|---|
|  |  |  | LEFT JOIN ba_district town ON ge.townId = town.id | 
|---|
|  |  |  | LEFT JOIN ba_district village ON ge.villageId = village.id | 
|---|
|  |  |  | LEFT JOIN pr_controller cont ON ge.id = cont.intakeId | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | ge.deleted = 0 | 
|---|
|  |  |  | AND divi.deleted = 0 | 
|---|
|  |  |  | and blo.deleted = 0 | 
|---|
|  |  |  | <if test="intakeName != null and intakeName != ''"> | 
|---|
|  |  |  | AND ge.name LIKE CONCAT('%', #{intakeName}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == 0"> | 
|---|
|  |  |  | AND ge.id NOT IN (SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == 1"> | 
|---|
|  |  |  | AND ge.id IN (SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == null"> | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="address != null and address != ''"> | 
|---|
|  |  |  | AND CONCAT(country.`name`, town.`name`, village.`name`) LIKE CONCAT('%', #{address}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test = "divideId != null and divideId !=''"> | 
|---|
|  |  |  | AND divi.id = #{divideId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <!--根据指定条件获取取水口记录--> | 
|---|
|  |  |  | <select id="getIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoIntake"> | 
|---|
|  |  |  | SELECT CAST(ge.id AS char)                                 AS intakeId, | 
|---|
|  |  |  | ge.`name`                                           AS intakeName, | 
|---|
|  |  |  | CAST(divi.id AS char)                               AS divideId, | 
|---|
|  |  |  | divi.`name`                                         AS divideName, | 
|---|
|  |  |  | CAST(blo.id AS char)                                AS blockId, | 
|---|
|  |  |  | blo.`name`                                          AS blockName, | 
|---|
|  |  |  | CAST(cont.id AS char)                               AS controllerId, | 
|---|
|  |  |  | cont.rtuAddr                                        AS rtuAddr, | 
|---|
|  |  |  | ge.lng, | 
|---|
|  |  |  | ge.lat, | 
|---|
|  |  |  | ge.remarks, | 
|---|
|  |  |  | ge.operator, | 
|---|
|  |  |  | ge.operateDt                                        As operateDt, | 
|---|
|  |  |  | (CASE | 
|---|
|  |  |  | WHEN ge.id NOT IN (SELECT intakeId FROM pr_controller where deleted = 0) THEN '未绑定' | 
|---|
|  |  |  | WHEN ge.id IN (SELECT intakeId FROM pr_controller where deleted = 0) THEN '已绑定' | 
|---|
|  |  |  | END)                                            AS isBind, | 
|---|
|  |  |  | CONCAT(country.`name`, town.`name`, village.`name`) AS address | 
|---|
|  |  |  | FROM pr_intake ge | 
|---|
|  |  |  | INNER JOIN pr_divide divi ON ge.divideId = divi.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON divi.blockId = blo.id | 
|---|
|  |  |  | LEFT JOIN ba_district country ON ge.countyId = country.id | 
|---|
|  |  |  | LEFT JOIN ba_district town ON ge.townId = town.id | 
|---|
|  |  |  | LEFT JOIN ba_district village ON ge.villageId = village.id | 
|---|
|  |  |  | LEFT JOIN pr_controller cont ON ge.id = cont.intakeId | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | ge.deleted = 0 | 
|---|
|  |  |  | AND divi.deleted = 0 | 
|---|
|  |  |  | and blo.deleted = 0 | 
|---|
|  |  |  | <if test="intakeName != null and intakeName != ''"> | 
|---|
|  |  |  | AND ge.name LIKE CONCAT('%', #{intakeName}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test = "blockId != null and blockId !=''"> | 
|---|
|  |  |  | AND blo.id = #{blockId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="divideId != null and divideId != ''"> | 
|---|
|  |  |  | AND divi.id = #{divideId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <if test="isBinded == 0"> | 
|---|
|  |  |  | AND ge.id NOT IN(SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == 1"> | 
|---|
|  |  |  | AND ge.id IN(SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == null"> | 
|---|
|  |  |  | <if test="blockId != null and blockId != ''"> | 
|---|
|  |  |  | AND blo.id = #{blockId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="address != null and address != ''"> | 
|---|
|  |  |  | AND CONCAT(country.`name`, town.`name`, village.`name`) LIKE CONCAT('%', #{address}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | ORDER BY ge.operateDt DESC | 
|---|
|  |  |  | <if test="pageCurr != null and pageSize != null"> | 
|---|
|  |  |  | LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <if test="isBinded == 0"> | 
|---|
|  |  |  | AND ge.id NOT IN (SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == 1"> | 
|---|
|  |  |  | AND ge.id IN (SELECT intakeId FROM pr_controller where deleted = 0) | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == null"> | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="address != null and address != ''"> | 
|---|
|  |  |  | AND CONCAT(country.`name`, town.`name`, village.`name`) LIKE CONCAT('%', #{address}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | ORDER BY ge.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="getSupperByVillageId" parameterType="_long" resultType="java.lang.Long"> | 
|---|
|  |  |  | select dis_tow.* | 
|---|
|  |  |  | from ba_district dis_vil | 
|---|
|  |  |  | inner join | 
|---|
|  |  |  | ba_district dis_tow | 
|---|
|  |  |  | on dis_vil.supperId = dis_tow.id | 
|---|
|  |  |  | where dis_vil.id = #{vaId,jdbcType=BIGINT} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--根据下级获取上一级地址--> | 
|---|
|  |  |  | <select id="getSupperByVillageId" parameterType="_long" resultType="java.lang.Long"> | 
|---|
|  |  |  | select dis_tow.* | 
|---|
|  |  |  | from ba_district dis_vil | 
|---|
|  |  |  | inner join | 
|---|
|  |  |  | ba_district dis_tow | 
|---|
|  |  |  | on dis_vil.supperId = dis_tow.id | 
|---|
|  |  |  | where dis_vil.id = #{vaId,jdbcType=BIGINT} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据取水口编号获取未删除的取水口数量--> | 
|---|
|  |  |  | <select id="getRecordCountOfIntake" resultType="java.lang.Integer"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount FROM pr_intake WHERE deleted = 0 AND id = ${intakeId} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--根据取水口编号获取未删除的取水口数量--> | 
|---|
|  |  |  | <select id="getRecordCountOfIntake" resultType="java.lang.Integer"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake | 
|---|
|  |  |  | WHERE deleted = 0 | 
|---|
|  |  |  | AND id = #{intakeId} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据村ID获取全部地址--> | 
|---|
|  |  |  | <select id="getAddressByVillageId" parameterType="_long" resultType="java.lang.String"> | 
|---|
|  |  |  | select | 
|---|
|  |  |  | CONCAT(dis_province.`name`, dis_city.`name`, dis_county.`name`, dis_town.`name`, dis_village.`name`) AS address | 
|---|
|  |  |  | from ba_district dis_village | 
|---|
|  |  |  | inner join ba_district dis_town    on dis_village.supperId = dis_town.id | 
|---|
|  |  |  | inner join ba_district dis_county    on dis_town.supperId = dis_county.id | 
|---|
|  |  |  | inner join ba_district dis_city    on dis_county.supperId = dis_city.id | 
|---|
|  |  |  | inner join ba_district dis_province    on dis_city.supperId = dis_province.id | 
|---|
|  |  |  | where dis_village.id = #{villageId,jdbcType=BIGINT} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--根据村ID获取全部地址--> | 
|---|
|  |  |  | <select id="getAddressByVillageId" parameterType="_long" resultType="java.lang.String"> | 
|---|
|  |  |  | select CONCAT(dis_province.`name`, dis_city.`name`, dis_county.`name`, dis_town.`name`, | 
|---|
|  |  |  | dis_village.`name`) AS address | 
|---|
|  |  |  | from ba_district dis_village | 
|---|
|  |  |  | inner join ba_district dis_town on dis_village.supperId = dis_town.id | 
|---|
|  |  |  | inner join ba_district dis_county on dis_town.supperId = dis_county.id | 
|---|
|  |  |  | inner join ba_district dis_city on dis_county.supperId = dis_city.id | 
|---|
|  |  |  | inner join ba_district dis_province on dis_city.supperId = dis_province.id | 
|---|
|  |  |  | where dis_village.id = #{villageId,jdbcType=BIGINT} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据区域Id获取区域等级--> | 
|---|
|  |  |  | <select id="getLevelByRegionId" parameterType="_long" resultType="java.lang.Integer"> | 
|---|
|  |  |  | select | 
|---|
|  |  |  | region.level | 
|---|
|  |  |  | from ba_district region | 
|---|
|  |  |  | where region.id = #{regionId,jdbcType=BIGINT} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--根据区域Id获取区域等级--> | 
|---|
|  |  |  | <select id="getLevelByRegionId" parameterType="_long" resultType="java.lang.Integer"> | 
|---|
|  |  |  | select region.level | 
|---|
|  |  |  | from ba_district region | 
|---|
|  |  |  | where region.id = #{regionId,jdbcType=BIGINT} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--获取未绑控制器的取水口列表--> | 
|---|
|  |  |  | <select id="getNoBindingIntakes" resultType="java.util.HashMap"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | CAST(inta.id AS char)AS intakeId, | 
|---|
|  |  |  | name AS intakeName | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | WHERE id NOT IN(SELECT intakeId FROM pr_controller) AND deleted = 0 | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--获取未绑控制器的取水口列表--> | 
|---|
|  |  |  | <select id="getNoBindingIntakes" resultType="java.util.HashMap"> | 
|---|
|  |  |  | SELECT CAST(inta.id AS char) AS intakeId, | 
|---|
|  |  |  | name                  AS intakeName | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | WHERE id NOT IN (SELECT intakeId FROM pr_controller) | 
|---|
|  |  |  | AND deleted = 0 | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--获取取水口数量(在线和不在先)--> | 
|---|
|  |  |  | <select id="getOnLineIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | LEFT JOIN pr_controller con ON con.intakeId = inta.id | 
|---|
|  |  |  | LEFT JOIN( | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | intake_id AS intakeId, | 
|---|
|  |  |  | CONCAT( | 
|---|
|  |  |  | IF(alarm_loss = 1, IF(alarm_water_meter_fault = 1, '流量计故障,', ''), IF(alarm_water_meter_fault = 1, '流量计故障', '')), | 
|---|
|  |  |  | IF(alarm_battery_volt = 1, IF(alarm_loss = 1, '漏损(偷水)报警,', ''), IF(alarm_loss = 1, '漏损(偷水)报警', '')), | 
|---|
|  |  |  | IF(alarm_valve = 1, IF(alarm_battery_volt = 1, '蓄电池电压报警,', ''), IF(alarm_battery_volt = 1, '蓄电池电压报警', '')), | 
|---|
|  |  |  | IF(alarm_valve = 1, '阀门报警', '') | 
|---|
|  |  |  | ) AS alarm | 
|---|
|  |  |  | <!--获取取水口数量(在线和不在先)--> | 
|---|
|  |  |  | <select id="getOnLineIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | LEFT JOIN pr_controller con ON con.intakeId = inta.id | 
|---|
|  |  |  | LEFT JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | LEFT JOIN( | 
|---|
|  |  |  | SELECT intake_id AS intakeId, | 
|---|
|  |  |  | CONCAT( | 
|---|
|  |  |  | IF(alarm_loss = 1, IF(alarm_water_meter_fault = 1, '流量计故障,', ''), | 
|---|
|  |  |  | IF(alarm_water_meter_fault = 1, '流量计故障', '')), | 
|---|
|  |  |  | IF(alarm_battery_volt = 1, IF(alarm_loss = 1, '漏损(偷水)报警,', ''), | 
|---|
|  |  |  | IF(alarm_loss = 1, '漏损(偷水)报警', '')), | 
|---|
|  |  |  | IF(alarm_valve = 1, IF(alarm_battery_volt = 1, '蓄电池电压报警,', ''), | 
|---|
|  |  |  | IF(alarm_battery_volt = 1, '蓄电池电压报警', '')), | 
|---|
|  |  |  | IF(alarm_valve = 1, '阀门报警', '') | 
|---|
|  |  |  | )     AS alarm | 
|---|
|  |  |  | FROM rm_alarm_state_last | 
|---|
|  |  |  | WHERE (alarm_water_meter_fault = 1 OR alarm_loss = 1 OR alarm_battery_volt = 1 OR alarm_valve = 1) | 
|---|
|  |  |  | AND dt >= DATE_SUB(NOW(),INTERVAL 12 HOUR) | 
|---|
|  |  |  | AND dt >= DATE_SUB(NOW(), INTERVAL 12 HOUR) | 
|---|
|  |  |  | ) alarm ON alarm.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> | 
|---|
|  |  |  | <if test="isOnLine != null"> | 
|---|
|  |  |  | rtus.isOnLine = #{isOnLine} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeNum != null and intakeNum != ''"> | 
|---|
|  |  |  | AND inta.name = #{intakeNum} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == false "> | 
|---|
|  |  |  | AND con.rtuAddr IS  NULL | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == true "> | 
|---|
|  |  |  | AND con.rtuAddr IS NOT NULL | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--获取取水口列表(在线和不在先)--> | 
|---|
|  |  |  | <select id="getOnLineIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoOnLineIntake"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | inta.id AS intakeId, | 
|---|
|  |  |  | con.rtuAddr, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | inta.lng, | 
|---|
|  |  |  | inta.lat, | 
|---|
|  |  |  | (CASE | 
|---|
|  |  |  | WHEN con.rtuAddr IS  NULL  THEN "false" | 
|---|
|  |  |  | WHEN con.rtuAddr IS NOT NULL THEN "true" | 
|---|
|  |  |  | END) AS isBinded, | 
|---|
|  |  |  | rtus.isOnLine, | 
|---|
|  |  |  | alarm.alarm | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | LEFT JOIN pr_controller con ON con.intakeId = inta.id | 
|---|
|  |  |  | LEFT JOIN( | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | intake_id AS intakeId, | 
|---|
|  |  |  | CONCAT( | 
|---|
|  |  |  | IF(alarm_loss = 1, IF(alarm_water_meter_fault = 1, '流量计故障,', ''), IF(alarm_water_meter_fault = 1, '流量计故障', '')), | 
|---|
|  |  |  | IF(alarm_battery_volt = 1, IF(alarm_loss = 1, '漏损(偷水)报警,', ''), IF(alarm_loss = 1, '漏损(偷水)报警', '')), | 
|---|
|  |  |  | IF(alarm_valve = 1, IF(alarm_battery_volt = 1, '蓄电池电压报警,', ''), IF(alarm_battery_volt = 1, '蓄电池电压报警', '')), | 
|---|
|  |  |  | IF(alarm_valve = 1, '阀门报警', '') | 
|---|
|  |  |  | ) AS alarm | 
|---|
|  |  |  | FROM rm_alarm_state_last | 
|---|
|  |  |  | WHERE (alarm_water_meter_fault = 1 OR alarm_loss = 1 OR alarm_battery_volt = 1 OR alarm_valve = 1) | 
|---|
|  |  |  | AND dt >= DATE_SUB(NOW(),INTERVAL 12 HOUR) | 
|---|
|  |  |  | ) alarm ON alarm.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> | 
|---|
|  |  |  | <if test="isOnLine != null"> | 
|---|
|  |  |  | rtus.isOnLine = #{isOnLine} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeNum != null and intakeNum != ''"> | 
|---|
|  |  |  | AND inta.name = #{intakeNum} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == false "> | 
|---|
|  |  |  | AND con.rtuAddr IS  NULL | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == true "> | 
|---|
|  |  |  | AND con.rtuAddr IS NOT NULL | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | order by con.id ASC | 
|---|
|  |  |  | <if test="pageCurr != null and pageSize != null"> | 
|---|
|  |  |  | LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据取水口编号获取取水口对象--> | 
|---|
|  |  |  | <select id="getIntakeByName" resultType="com.dy.pipIrrGlobal.voPr.VoOnLineIntake"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | con.intakeId, | 
|---|
|  |  |  | con.rtuAddr, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | rtus.isOnLine | 
|---|
|  |  |  | FROM pr_controller con | 
|---|
|  |  |  | INNER JOIN pr_intake inta ON con.intakeId = inta.id | 
|---|
|  |  |  | left JOIN JSON_TABLE( | 
|---|
|  |  |  | 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> | 
|---|
|  |  |  | <if test="intakeNum != null and intakeNum != ''"> | 
|---|
|  |  |  | AND LOWER(inta.name) = #{intakeNum} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | LIMIT 0,1 | 
|---|
|  |  |  | '$[*]' COLUMNS ( | 
|---|
|  |  |  | rtuAddr VARCHAR(20) PATH '$.rtuAddr', | 
|---|
|  |  |  | isOnLine BOOLEAN PATH '$.isOnLine' | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | ) rtus ON con.rtuAddr = rtus.rtuAddr | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | <if test="isOnLine != null"> | 
|---|
|  |  |  | rtus.isOnLine = #{isOnLine} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeNum != null and intakeNum != ''"> | 
|---|
|  |  |  | AND inta.name = #{intakeNum} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == false"> | 
|---|
|  |  |  | AND con.rtuAddr IS NULL | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == true"> | 
|---|
|  |  |  | AND con.rtuAddr IS NOT NULL | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--获取取水口列表(在线和不在先)--> | 
|---|
|  |  |  | <select id="getOnLineIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoOnLineIntake"> | 
|---|
|  |  |  | SELECT inta.id                     AS intakeId, | 
|---|
|  |  |  | con.rtuAddr, | 
|---|
|  |  |  | inta.name                   AS intakeNum, | 
|---|
|  |  |  | inta.lng, | 
|---|
|  |  |  | inta.lat, | 
|---|
|  |  |  | IFNULL(hou.total_amount, 0) AS totalAmount, | 
|---|
|  |  |  | (CASE | 
|---|
|  |  |  | WHEN con.rtuAddr IS NULL THEN false | 
|---|
|  |  |  | WHEN con.rtuAddr IS NOT NULL THEN true | 
|---|
|  |  |  | END)                    AS isBinded, | 
|---|
|  |  |  | rtus.isOnLine, | 
|---|
|  |  |  | alarm.alarm | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | LEFT JOIN pr_controller con ON con.intakeId = inta.id | 
|---|
|  |  |  | LEFT JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | LEFT JOIN( | 
|---|
|  |  |  | SELECT intake_id AS intakeId, | 
|---|
|  |  |  | CONCAT( | 
|---|
|  |  |  | IF(alarm_loss = 1, IF(alarm_water_meter_fault = 1, '流量计故障,', ''), | 
|---|
|  |  |  | IF(alarm_water_meter_fault = 1, '流量计故障', '')), | 
|---|
|  |  |  | IF(alarm_battery_volt = 1, IF(alarm_loss = 1, '漏损(偷水)报警,', ''), | 
|---|
|  |  |  | IF(alarm_loss = 1, '漏损(偷水)报警', '')), | 
|---|
|  |  |  | IF(alarm_valve = 1, IF(alarm_battery_volt = 1, '蓄电池电压报警,', ''), | 
|---|
|  |  |  | IF(alarm_battery_volt = 1, '蓄电池电压报警', '')), | 
|---|
|  |  |  | IF(alarm_valve = 1, '阀门报警', '') | 
|---|
|  |  |  | )     AS alarm | 
|---|
|  |  |  | FROM rm_alarm_state_last | 
|---|
|  |  |  | WHERE (alarm_water_meter_fault = 1 OR alarm_loss = 1 OR alarm_battery_volt = 1 OR alarm_valve = 1) | 
|---|
|  |  |  | AND dt >= DATE_SUB(NOW(), INTERVAL 12 HOUR) | 
|---|
|  |  |  | ) alarm ON alarm.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> | 
|---|
|  |  |  | <if test="isOnLine != null"> | 
|---|
|  |  |  | rtus.isOnLine = #{isOnLine} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeNum != null and intakeNum != ''"> | 
|---|
|  |  |  | AND inta.name = #{intakeNum} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == false"> | 
|---|
|  |  |  | AND con.rtuAddr IS NULL | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="isBinded == true"> | 
|---|
|  |  |  | AND con.rtuAddr IS NOT NULL | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | order by con.id ASC | 
|---|
|  |  |  | <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="getUsedIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoOnLineIntake"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | DISTINCT con.intakeId, | 
|---|
|  |  |  | <!--根据取水口编号获取取水口对象--> | 
|---|
|  |  |  | <select id="getIntakeByName" resultType="com.dy.pipIrrGlobal.voPr.VoOnLineIntake"> | 
|---|
|  |  |  | SELECT con.intakeId, | 
|---|
|  |  |  | con.rtuAddr, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | rtus.isOnLine | 
|---|
|  |  |  | FROM pr_controller con | 
|---|
|  |  |  | INNER JOIN pr_intake inta ON con.intakeId = inta.id | 
|---|
|  |  |  | INNER JOIN rm_command_history com ON con.rtuAddr = com.rtu_addr | 
|---|
|  |  |  | INNER 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> | 
|---|
|  |  |  | <if test="operator != null"> | 
|---|
|  |  |  | com.operator = #{operator} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | FROM pr_controller con | 
|---|
|  |  |  | INNER JOIN pr_intake inta ON con.intakeId = inta.id | 
|---|
|  |  |  | left JOIN JSON_TABLE( | 
|---|
|  |  |  | #{onLineMap}, | 
|---|
|  |  |  | '$[*]' COLUMNS ( | 
|---|
|  |  |  | rtuAddr VARCHAR(20) PATH '$.rtuAddr', | 
|---|
|  |  |  | isOnLine BOOLEAN PATH '$.isOnLine' | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | ) rtus ON con.rtuAddr = rtus.rtuAddr | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | <if test="intakeNum != null and intakeNum != ''"> | 
|---|
|  |  |  | AND LOWER(inta.name) = #{intakeNum} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | LIMIT 0,1 | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--取水口名称换取水口ID,扫码开阀使用--> | 
|---|
|  |  |  | <select id="getIntakeIdByName" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT id AS intakeId FROM pr_intake WHERE `name` = #{intakeName} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--根据操作员获取常用取水口--> | 
|---|
|  |  |  | <select id="getUsedIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoOnLineIntake"> | 
|---|
|  |  |  | SELECT DISTINCT con.intakeId, | 
|---|
|  |  |  | con.rtuAddr, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | rtus.isOnLine | 
|---|
|  |  |  | FROM pr_controller con | 
|---|
|  |  |  | INNER JOIN pr_intake inta ON con.intakeId = inta.id | 
|---|
|  |  |  | INNER JOIN rm_command_history com ON con.rtuAddr = com.rtu_addr | 
|---|
|  |  |  | INNER 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> | 
|---|
|  |  |  | <if test="operator != null"> | 
|---|
|  |  |  | com.operator = #{operator} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--取水口名称换取水口ID,验证是否重复名称使用--> | 
|---|
|  |  |  | <select id="getIntakeIdsByName" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT id AS intakeId FROM pr_intake WHERE `name` = #{intakeName} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--取水口名称换取水口ID,扫码开阀使用--> | 
|---|
|  |  |  | <select id="getIntakeIdByName" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT id AS intakeId | 
|---|
|  |  |  | FROM pr_intake | 
|---|
|  |  |  | WHERE `name` = #{intakeName} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--取水口名称换取水口ID,验证是否重复名称使用--> | 
|---|
|  |  |  | <select id="getIntakeIdByNameExcludeId" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT id AS intakeId FROM pr_intake WHERE id != #{id} and `name` = #{intakeName} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--取水口名称换取水口ID,验证是否重复名称使用--> | 
|---|
|  |  |  | <select id="getIntakeIdsByName" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT id AS intakeId | 
|---|
|  |  |  | FROM pr_intake | 
|---|
|  |  |  | WHERE `name` = #{intakeName} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--取水口名称换取水口ID,验证是否重复名称使用--> | 
|---|
|  |  |  | <select id="getIntakeIdByNameExcludeId" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT id AS intakeId | 
|---|
|  |  |  | FROM pr_intake | 
|---|
|  |  |  | WHERE id != #{id} | 
|---|
|  |  |  | and `name` = #{intakeName} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | </mapper> | 
|---|
|  |  |  | 
|---|
|  |  |  | <?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.dy.pipIrrGlobal.daoRm.RmOnHourReportLastMapper"> | 
|---|
|  |  |  | <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | <!--@Table rm_on_hour_report_last--> | 
|---|
|  |  |  | <id column="id" jdbcType="BIGINT" property="id" /> | 
|---|
|  |  |  | <result column="controller_id" jdbcType="BIGINT" property="controllerId" /> | 
|---|
|  |  |  | <result column="intake_id" jdbcType="BIGINT" property="intakeId" /> | 
|---|
|  |  |  | <result column="rtu_addr" jdbcType="VARCHAR" property="rtuAddr" /> | 
|---|
|  |  |  | <result column="dt" jdbcType="TIMESTAMP" property="dt" /> | 
|---|
|  |  |  | <result column="rtu_dt" jdbcType="TIMESTAMP" property="rtuDt" /> | 
|---|
|  |  |  | <result column="instant_amount" jdbcType="FLOAT" property="instantAmount" /> | 
|---|
|  |  |  | <result column="total_amount" jdbcType="FLOAT" property="totalAmount" /> | 
|---|
|  |  |  | <result column="loss_amount" jdbcType="FLOAT" property="lossAmount" /> | 
|---|
|  |  |  | <result column="water_press" jdbcType="FLOAT" property="waterPress" /> | 
|---|
|  |  |  | <result column="battery_volt" jdbcType="FLOAT" property="batteryVolt" /> | 
|---|
|  |  |  | <result column="signal_value" jdbcType="INTEGER" property="signalValue" /> | 
|---|
|  |  |  | <result column="water_price" jdbcType="FLOAT" property="waterPrice" /> | 
|---|
|  |  |  | </resultMap> | 
|---|
|  |  |  | <sql id="Base_Column_List"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | id, controller_id, intake_id, rtu_addr, dt, rtu_dt, instant_amount, total_amount, | 
|---|
|  |  |  | loss_amount, water_press, battery_volt, signal_value, water_price | 
|---|
|  |  |  | </sql> | 
|---|
|  |  |  | <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | select | 
|---|
|  |  |  | <include refid="Base_Column_List" /> | 
|---|
|  |  |  | from rm_on_hour_report_last | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | delete from rm_on_hour_report_last | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </delete> | 
|---|
|  |  |  | <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | insert into rm_on_hour_report_last (id, controller_id, intake_id, | 
|---|
|  |  |  | rtu_addr, dt, rtu_dt, | 
|---|
|  |  |  | instant_amount, total_amount, loss_amount, | 
|---|
|  |  |  | water_press, battery_volt, | 
|---|
|  |  |  | signal_value, water_price) | 
|---|
|  |  |  | values (#{id,jdbcType=BIGINT}, #{controllerId,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT}, | 
|---|
|  |  |  | #{rtuAddr,jdbcType=VARCHAR}, #{dt,jdbcType=TIMESTAMP}, #{rtuDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | #{instantAmount,jdbcType=FLOAT}, #{totalAmount,jdbcType=FLOAT}, #{lossAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | #{waterPress,jdbcType=FLOAT}, #{batteryVolt,jdbcType=FLOAT}, | 
|---|
|  |  |  | #{signalValue,jdbcType=INTEGER}, #{waterPrice,jdbcType=FLOAT}) | 
|---|
|  |  |  | </insert> | 
|---|
|  |  |  | <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | insert into rm_on_hour_report_last | 
|---|
|  |  |  | <trim prefix="(" suffix=")" suffixOverrides=","> | 
|---|
|  |  |  | <if test="id != null"> | 
|---|
|  |  |  | <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | <!--@Table rm_on_hour_report_last--> | 
|---|
|  |  |  | <id column="id" jdbcType="BIGINT" property="id"/> | 
|---|
|  |  |  | <result column="controller_id" jdbcType="BIGINT" property="controllerId"/> | 
|---|
|  |  |  | <result column="intake_id" jdbcType="BIGINT" property="intakeId"/> | 
|---|
|  |  |  | <result column="rtu_addr" jdbcType="VARCHAR" property="rtuAddr"/> | 
|---|
|  |  |  | <result column="dt" jdbcType="TIMESTAMP" property="dt"/> | 
|---|
|  |  |  | <result column="rtu_dt" jdbcType="TIMESTAMP" property="rtuDt"/> | 
|---|
|  |  |  | <result column="instant_amount" jdbcType="FLOAT" property="instantAmount"/> | 
|---|
|  |  |  | <result column="total_amount" jdbcType="FLOAT" property="totalAmount"/> | 
|---|
|  |  |  | <result column="loss_amount" jdbcType="FLOAT" property="lossAmount"/> | 
|---|
|  |  |  | <result column="water_press" jdbcType="FLOAT" property="waterPress"/> | 
|---|
|  |  |  | <result column="battery_volt" jdbcType="FLOAT" property="batteryVolt"/> | 
|---|
|  |  |  | <result column="signal_value" jdbcType="INTEGER" property="signalValue"/> | 
|---|
|  |  |  | <result column="water_price" jdbcType="FLOAT" property="waterPrice"/> | 
|---|
|  |  |  | </resultMap> | 
|---|
|  |  |  | <sql id="Base_Column_List"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="controllerId != null"> | 
|---|
|  |  |  | controller_id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeId != null"> | 
|---|
|  |  |  | intake_id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuAddr != null"> | 
|---|
|  |  |  | rtu_addr, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="dt != null"> | 
|---|
|  |  |  | dt, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuDt != null"> | 
|---|
|  |  |  | rtu_dt, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="instantAmount != null"> | 
|---|
|  |  |  | instant_amount, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="totalAmount != null"> | 
|---|
|  |  |  | total_amount, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lossAmount != null"> | 
|---|
|  |  |  | loss_amount, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPress != null"> | 
|---|
|  |  |  | water_press, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="batteryVolt != null"> | 
|---|
|  |  |  | battery_volt, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="signalValue != null"> | 
|---|
|  |  |  | signal_value, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPrice != null"> | 
|---|
|  |  |  | water_price, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | <trim prefix="values (" suffix=")" suffixOverrides=","> | 
|---|
|  |  |  | <if test="id != null"> | 
|---|
|  |  |  | #{id,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="controllerId != null"> | 
|---|
|  |  |  | #{controllerId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeId != null"> | 
|---|
|  |  |  | #{intakeId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuAddr != null"> | 
|---|
|  |  |  | #{rtuAddr,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="dt != null"> | 
|---|
|  |  |  | #{dt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuDt != null"> | 
|---|
|  |  |  | #{rtuDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="instantAmount != null"> | 
|---|
|  |  |  | #{instantAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="totalAmount != null"> | 
|---|
|  |  |  | #{totalAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lossAmount != null"> | 
|---|
|  |  |  | #{lossAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPress != null"> | 
|---|
|  |  |  | #{waterPress,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="batteryVolt != null"> | 
|---|
|  |  |  | #{batteryVolt,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="signalValue != null"> | 
|---|
|  |  |  | #{signalValue,jdbcType=INTEGER}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPrice != null"> | 
|---|
|  |  |  | #{waterPrice,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | </insert> | 
|---|
|  |  |  | <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update rm_on_hour_report_last | 
|---|
|  |  |  | <set> | 
|---|
|  |  |  | <if test="controllerId != null"> | 
|---|
|  |  |  | controller_id = #{controllerId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeId != null"> | 
|---|
|  |  |  | intake_id = #{intakeId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuAddr != null"> | 
|---|
|  |  |  | rtu_addr = #{rtuAddr,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="dt != null"> | 
|---|
|  |  |  | dt = #{dt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuDt != null"> | 
|---|
|  |  |  | rtu_dt = #{rtuDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="instantAmount != null"> | 
|---|
|  |  |  | instant_amount = #{instantAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="totalAmount != null"> | 
|---|
|  |  |  | total_amount = #{totalAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lossAmount != null"> | 
|---|
|  |  |  | loss_amount = #{lossAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPress != null"> | 
|---|
|  |  |  | water_press = #{waterPress,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="batteryVolt != null"> | 
|---|
|  |  |  | battery_volt = #{batteryVolt,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="signalValue != null"> | 
|---|
|  |  |  | signal_value = #{signalValue,jdbcType=INTEGER}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPrice != null"> | 
|---|
|  |  |  | water_price = #{waterPrice,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </set> | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  | <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update rm_on_hour_report_last | 
|---|
|  |  |  | set controller_id = #{controllerId,jdbcType=BIGINT}, | 
|---|
|  |  |  | intake_id = #{intakeId,jdbcType=BIGINT}, | 
|---|
|  |  |  | rtu_addr = #{rtuAddr,jdbcType=VARCHAR}, | 
|---|
|  |  |  | dt = #{dt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | rtu_dt = #{rtuDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | instant_amount = #{instantAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | total_amount = #{totalAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | loss_amount = #{lossAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | water_press = #{waterPress,jdbcType=FLOAT}, | 
|---|
|  |  |  | battery_volt = #{batteryVolt,jdbcType=FLOAT}, | 
|---|
|  |  |  | signal_value = #{signalValue,jdbcType=INTEGER}, | 
|---|
|  |  |  | water_price = #{waterPrice,jdbcType=FLOAT} | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  | water_price | 
|---|
|  |  |  | </sql> | 
|---|
|  |  |  | <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | select | 
|---|
|  |  |  | <include refid="Base_Column_List"/> | 
|---|
|  |  |  | from rm_on_hour_report_last | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | delete | 
|---|
|  |  |  | from rm_on_hour_report_last | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </delete> | 
|---|
|  |  |  | <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | insert into rm_on_hour_report_last (id, controller_id, intake_id, | 
|---|
|  |  |  | rtu_addr, dt, rtu_dt, | 
|---|
|  |  |  | instant_amount, total_amount, loss_amount, | 
|---|
|  |  |  | water_press, battery_volt, | 
|---|
|  |  |  | signal_value, water_price) | 
|---|
|  |  |  | values (#{id,jdbcType=BIGINT}, #{controllerId,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT}, | 
|---|
|  |  |  | #{rtuAddr,jdbcType=VARCHAR}, #{dt,jdbcType=TIMESTAMP}, #{rtuDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | #{instantAmount,jdbcType=FLOAT}, #{totalAmount,jdbcType=FLOAT}, #{lossAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | #{waterPress,jdbcType=FLOAT}, #{batteryVolt,jdbcType=FLOAT}, | 
|---|
|  |  |  | #{signalValue,jdbcType=INTEGER}, #{waterPrice,jdbcType=FLOAT}) | 
|---|
|  |  |  | </insert> | 
|---|
|  |  |  | <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | insert into rm_on_hour_report_last | 
|---|
|  |  |  | <trim prefix="(" suffix=")" suffixOverrides=","> | 
|---|
|  |  |  | <if test="id != null"> | 
|---|
|  |  |  | id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="controllerId != null"> | 
|---|
|  |  |  | controller_id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeId != null"> | 
|---|
|  |  |  | intake_id, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuAddr != null"> | 
|---|
|  |  |  | rtu_addr, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="dt != null"> | 
|---|
|  |  |  | dt, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuDt != null"> | 
|---|
|  |  |  | rtu_dt, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="instantAmount != null"> | 
|---|
|  |  |  | instant_amount, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="totalAmount != null"> | 
|---|
|  |  |  | total_amount, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lossAmount != null"> | 
|---|
|  |  |  | loss_amount, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPress != null"> | 
|---|
|  |  |  | water_press, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="batteryVolt != null"> | 
|---|
|  |  |  | battery_volt, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="signalValue != null"> | 
|---|
|  |  |  | signal_value, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPrice != null"> | 
|---|
|  |  |  | water_price, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | <trim prefix="values (" suffix=")" suffixOverrides=","> | 
|---|
|  |  |  | <if test="id != null"> | 
|---|
|  |  |  | #{id,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="controllerId != null"> | 
|---|
|  |  |  | #{controllerId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeId != null"> | 
|---|
|  |  |  | #{intakeId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuAddr != null"> | 
|---|
|  |  |  | #{rtuAddr,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="dt != null"> | 
|---|
|  |  |  | #{dt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuDt != null"> | 
|---|
|  |  |  | #{rtuDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="instantAmount != null"> | 
|---|
|  |  |  | #{instantAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="totalAmount != null"> | 
|---|
|  |  |  | #{totalAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lossAmount != null"> | 
|---|
|  |  |  | #{lossAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPress != null"> | 
|---|
|  |  |  | #{waterPress,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="batteryVolt != null"> | 
|---|
|  |  |  | #{batteryVolt,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="signalValue != null"> | 
|---|
|  |  |  | #{signalValue,jdbcType=INTEGER}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPrice != null"> | 
|---|
|  |  |  | #{waterPrice,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | </insert> | 
|---|
|  |  |  | <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update rm_on_hour_report_last | 
|---|
|  |  |  | <set> | 
|---|
|  |  |  | <if test="controllerId != null"> | 
|---|
|  |  |  | controller_id = #{controllerId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeId != null"> | 
|---|
|  |  |  | intake_id = #{intakeId,jdbcType=BIGINT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuAddr != null"> | 
|---|
|  |  |  | rtu_addr = #{rtuAddr,jdbcType=VARCHAR}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="dt != null"> | 
|---|
|  |  |  | dt = #{dt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuDt != null"> | 
|---|
|  |  |  | rtu_dt = #{rtuDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="instantAmount != null"> | 
|---|
|  |  |  | instant_amount = #{instantAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="totalAmount != null"> | 
|---|
|  |  |  | total_amount = #{totalAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="lossAmount != null"> | 
|---|
|  |  |  | loss_amount = #{lossAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPress != null"> | 
|---|
|  |  |  | water_press = #{waterPress,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="batteryVolt != null"> | 
|---|
|  |  |  | battery_volt = #{batteryVolt,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="signalValue != null"> | 
|---|
|  |  |  | signal_value = #{signalValue,jdbcType=INTEGER}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="waterPrice != null"> | 
|---|
|  |  |  | water_price = #{waterPrice,jdbcType=FLOAT}, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </set> | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  | <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | <!--@mbg.generated--> | 
|---|
|  |  |  | update rm_on_hour_report_last | 
|---|
|  |  |  | set controller_id  = #{controllerId,jdbcType=BIGINT}, | 
|---|
|  |  |  | intake_id      = #{intakeId,jdbcType=BIGINT}, | 
|---|
|  |  |  | rtu_addr       = #{rtuAddr,jdbcType=VARCHAR}, | 
|---|
|  |  |  | dt             = #{dt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | rtu_dt         = #{rtuDt,jdbcType=TIMESTAMP}, | 
|---|
|  |  |  | instant_amount = #{instantAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | total_amount   = #{totalAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | loss_amount    = #{lossAmount,jdbcType=FLOAT}, | 
|---|
|  |  |  | water_press    = #{waterPress,jdbcType=FLOAT}, | 
|---|
|  |  |  | battery_volt   = #{batteryVolt,jdbcType=FLOAT}, | 
|---|
|  |  |  | signal_value   = #{signalValue,jdbcType=INTEGER}, | 
|---|
|  |  |  | water_price    = #{waterPrice,jdbcType=FLOAT} | 
|---|
|  |  |  | where id = #{id,jdbcType=BIGINT} | 
|---|
|  |  |  | </update> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据阀控器地址获取定点上报最新数据--> | 
|---|
|  |  |  | <select id="getRmOnHourReportLast" resultType="com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast"> | 
|---|
|  |  |  | select | 
|---|
|  |  |  | <include refid="Base_Column_List" /> | 
|---|
|  |  |  | <include refid="Base_Column_List"/> | 
|---|
|  |  |  | from rm_on_hour_report_last | 
|---|
|  |  |  | where intake_id = #{intakeId} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据指定条件获取整点报最新记录数量--> | 
|---|
|  |  |  | <select id="getOnHourReportsCount_last" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM rm_on_hour_report_last oh | 
|---|
|  |  |  | INNER JOIN pr_intake inta ON inta.id = oh.intake_id | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | <if test="intakeId != null and intakeId >0"> | 
|---|
|  |  |  | AND oh.intake_id = #{intakeId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "intakeNum != null and intakeNum !=''"> | 
|---|
|  |  |  | AND inta.name LIKE CONCAT('%',#{intakeNum},'%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "rtuAddr != null and rtuAddr !=''"> | 
|---|
|  |  |  | AND oh.rtu_addr LIKE CONCAT('%',#{rtuAddr},'%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "timeStart != null and timeStop != null"> | 
|---|
|  |  |  | AND oh.dt BETWEEN #{timeStart} AND #{timeStop} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--根据指定条件获取整点报最新记录数量--> | 
|---|
|  |  |  | <select id="getOnHourReportsCount_last" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM rm_on_hour_report_last oh | 
|---|
|  |  |  | INNER JOIN pr_intake inta ON inta.id = oh.intake_id | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | <if test="intakeId != null and intakeId > 0"> | 
|---|
|  |  |  | AND oh.intake_id = #{intakeId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeNum != null and intakeNum != ''"> | 
|---|
|  |  |  | AND inta.name LIKE CONCAT('%', #{intakeNum}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuAddr != null and rtuAddr != ''"> | 
|---|
|  |  |  | AND oh.rtu_addr LIKE CONCAT('%', #{rtuAddr}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="timeStart != null and timeStop != null"> | 
|---|
|  |  |  | AND oh.dt BETWEEN #{timeStart} AND #{timeStop} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--根据指定条件获取整点报最新记录--> | 
|---|
|  |  |  | <select id="getOnHourReports_last" resultType="com.dy.pipIrrGlobal.voRm.VoOnHour"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | oh.intake_id AS intakeId, | 
|---|
|  |  |  | inta.`name` AS intakeNum, | 
|---|
|  |  |  | oh.rtu_addr AS rtuAddr, | 
|---|
|  |  |  | oh.dt AS receiveTime, | 
|---|
|  |  |  | oh.instant_amount AS instantAmount, | 
|---|
|  |  |  | oh.total_amount AS totalAmount, | 
|---|
|  |  |  | oh.loss_amount AS lossAmount, | 
|---|
|  |  |  | oh.water_press AS waterPress, | 
|---|
|  |  |  | oh.battery_volt AS batteryVolt, | 
|---|
|  |  |  | oh.signal_value AS signalValue, | 
|---|
|  |  |  | oh.water_price AS waterPrice | 
|---|
|  |  |  | FROM rm_on_hour_report_last oh | 
|---|
|  |  |  | INNER JOIN pr_intake inta ON inta.id = oh.intake_id | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | <if test="intakeId != null and intakeId >0"> | 
|---|
|  |  |  | AND oh.intake_id = #{intakeId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "intakeNum != null and intakeNum !=''"> | 
|---|
|  |  |  | AND inta.name LIKE CONCAT('%',#{intakeNum},'%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "rtuAddr != null and rtuAddr !=''"> | 
|---|
|  |  |  | AND oh.rtu_addr LIKE CONCAT('%',#{rtuAddr},'%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "timeStart != null and timeStop != null"> | 
|---|
|  |  |  | AND oh.dt BETWEEN #{timeStart} AND #{timeStop} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | ORDER BY oh.dt 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="getOnHourReports_last" resultType="com.dy.pipIrrGlobal.voRm.VoOnHour"> | 
|---|
|  |  |  | SELECT oh.intake_id      AS intakeId, | 
|---|
|  |  |  | inta.`name`       AS intakeNum, | 
|---|
|  |  |  | oh.rtu_addr       AS rtuAddr, | 
|---|
|  |  |  | oh.dt             AS receiveTime, | 
|---|
|  |  |  | oh.instant_amount AS instantAmount, | 
|---|
|  |  |  | oh.total_amount   AS totalAmount, | 
|---|
|  |  |  | oh.loss_amount    AS lossAmount, | 
|---|
|  |  |  | oh.water_press    AS waterPress, | 
|---|
|  |  |  | oh.battery_volt   AS batteryVolt, | 
|---|
|  |  |  | oh.signal_value   AS signalValue, | 
|---|
|  |  |  | oh.water_price    AS waterPrice | 
|---|
|  |  |  | FROM rm_on_hour_report_last oh | 
|---|
|  |  |  | INNER JOIN pr_intake inta ON inta.id = oh.intake_id | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | <if test="intakeId != null and intakeId > 0"> | 
|---|
|  |  |  | AND oh.intake_id = #{intakeId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="intakeNum != null and intakeNum != ''"> | 
|---|
|  |  |  | AND inta.name LIKE CONCAT('%', #{intakeNum}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="rtuAddr != null and rtuAddr != ''"> | 
|---|
|  |  |  | AND oh.rtu_addr LIKE CONCAT('%', #{rtuAddr}, '%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="timeStart != null and timeStop != null"> | 
|---|
|  |  |  | AND oh.dt BETWEEN #{timeStart} AND #{timeStop} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | ORDER BY oh.dt 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="getLargeFlowIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 AND hou.total_amount > #{totalAmount} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--获取累计流量超过指定值的取水口数量--> | 
|---|
|  |  |  | <select id="getLargeFlowIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | AND hou.total_amount > #{totalAmount} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--获取累计流量超过指定值的取水口--> | 
|---|
|  |  |  | <select id="getLargeFlowIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoCumulativeFlow"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | inta.id AS intakeId, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | blo.name AS blockName, | 
|---|
|  |  |  | CAST(hou.total_amount AS DECIMAL(10, 2)) AS cumulativeFlow, | 
|---|
|  |  |  | hou.dt AS getDate | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 AND hou.total_amount > #{totalAmount} | 
|---|
|  |  |  | ORDER BY hou.dt | 
|---|
|  |  |  | <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="getLargeFlowIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoCumulativeFlow"> | 
|---|
|  |  |  | SELECT inta.id                                  AS intakeId, | 
|---|
|  |  |  | inta.name                                AS intakeNum, | 
|---|
|  |  |  | blo.name                                 AS blockName, | 
|---|
|  |  |  | CAST(hou.total_amount AS DECIMAL(10, 2)) AS cumulativeFlow, | 
|---|
|  |  |  | hou.dt                                   AS getDate | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | AND hou.total_amount > #{totalAmount} | 
|---|
|  |  |  | ORDER BY hou.dt | 
|---|
|  |  |  | <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="getSmallFlowIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 AND hou.total_amount < #{totalAmount} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--获取累计流量低于指定值的取水口数量--> | 
|---|
|  |  |  | <select id="getSmallFlowIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | AND hou.total_amount < #{totalAmount} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--获取累计流量低于指定值的取水口--> | 
|---|
|  |  |  | <select id="getSmallFlowIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoCumulativeFlow"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | inta.id AS intakeId, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | blo.name AS blockName, | 
|---|
|  |  |  | <!--    FORMAT(hou.total_amount,2) AS cumulativeFlow,--> | 
|---|
|  |  |  | CAST(hou.total_amount AS DECIMAL(10, 2)) AS cumulativeFlow, | 
|---|
|  |  |  | hou.dt AS getDate | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 AND hou.total_amount < #{totalAmount} | 
|---|
|  |  |  | ORDER BY hou.dt | 
|---|
|  |  |  | <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="getSmallFlowIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoCumulativeFlow"> | 
|---|
|  |  |  | SELECT inta.id   AS intakeId, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | blo.name  AS blockName, | 
|---|
|  |  |  | <!--    FORMAT(hou.total_amount,2) AS cumulativeFlow,--> | 
|---|
|  |  |  | CAST(hou.total_amount AS DECIMAL(10, 2)) AS cumulativeFlow, | 
|---|
|  |  |  | hou.dt                                   AS getDate | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | AND hou.total_amount < #{totalAmount} | 
|---|
|  |  |  | ORDER BY hou.dt | 
|---|
|  |  |  | <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="getUnderVoltIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 AND hou.battery_volt < #{batteryVolt} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--获取欠压取水口数量--> | 
|---|
|  |  |  | <select id="getUnderVoltIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | AND hou.battery_volt < #{batteryVolt} | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--获取欠压取水口--> | 
|---|
|  |  |  | <select id="getUnderVoltIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoBatteryVolt"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | inta.id AS intakeId, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | blo.name AS blockName, | 
|---|
|  |  |  | hou.battery_volt AS batteryVolt, | 
|---|
|  |  |  | hou.dt AS getDate | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 AND hou.battery_volt < #{batteryVolt} | 
|---|
|  |  |  | ORDER BY hou.dt | 
|---|
|  |  |  | <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="getUnderVoltIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoBatteryVolt"> | 
|---|
|  |  |  | SELECT inta.id          AS intakeId, | 
|---|
|  |  |  | inta.name        AS intakeNum, | 
|---|
|  |  |  | blo.name         AS blockName, | 
|---|
|  |  |  | hou.battery_volt AS batteryVolt, | 
|---|
|  |  |  | hou.dt           AS getDate | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | AND hou.battery_volt < #{batteryVolt} | 
|---|
|  |  |  | ORDER BY hou.dt | 
|---|
|  |  |  | <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="getSpecifiedSignalIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | AND inta.deleted = 0 | 
|---|
|  |  |  | <if test="signalIntensity != null and signalIntensity == 1"> | 
|---|
|  |  |  | AND hou.signal_value > 0 | 
|---|
|  |  |  | AND hou.signal_value <= #{weak} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="signalIntensity != null and signalIntensity == 2"> | 
|---|
|  |  |  | AND hou.signal_value > #{weak} | 
|---|
|  |  |  | AND hou.signal_value <= #{ordinary} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="signalIntensity != null and signalIntensity == 3"> | 
|---|
|  |  |  | AND hou.signal_value > #{ordinary} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!--获取指定信号强度的取水口--> | 
|---|
|  |  |  | <select id="getSpecifiedSignalIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoSignalIntensity"> | 
|---|
|  |  |  | SELECT inta.id          AS intakeId, | 
|---|
|  |  |  | inta.name        AS intakeNum, | 
|---|
|  |  |  | blo.name         AS blockName, | 
|---|
|  |  |  | hou.signal_value AS signValue, | 
|---|
|  |  |  | hou.dt           AS getDate | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | AND inta.deleted = 0 | 
|---|
|  |  |  | <if test="signalIntensity != null and signalIntensity == 1"> | 
|---|
|  |  |  | AND hou.signal_value > 0 | 
|---|
|  |  |  | AND hou.signal_value <= #{weak} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="signalIntensity != null and signalIntensity == 2"> | 
|---|
|  |  |  | AND hou.signal_value > #{weak} | 
|---|
|  |  |  | AND hou.signal_value <= #{ordinary} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test="signalIntensity != null and signalIntensity == 3"> | 
|---|
|  |  |  | AND hou.signal_value > #{ordinary} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | ORDER BY hou.dt | 
|---|
|  |  |  | <trim prefix="limit "> | 
|---|
|  |  |  | <if test="start != null and count != null"> | 
|---|
|  |  |  | #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | </mapper> | 
|---|
|  |  |  | 
|---|
|  |  |  | <if test = "rtuAddr != null and rtuAddr !=''"> | 
|---|
|  |  |  | AND oh.rtu_addr LIKE CONCAT('%',#{rtuAddr},'%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "timeStart_open != null and timeStop_open != null"> | 
|---|
|  |  |  | <if test = "timeStart_open != null and timeStart_open != '' and timeStop_open != null and  timeStop_open != '' "> | 
|---|
|  |  |  | AND oh.op_dt BETWEEN #{timeStart_open} AND #{timeStop_open} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "timeStart_close != null and timeStop_close != null"> | 
|---|
|  |  |  | <if test = "timeStart_close != null and timeStart_close != '' and timeStop_close != null and timeStop_close != '' "> | 
|---|
|  |  |  | AND oh.cl_dt BETWEEN #{timeStart_close} AND #{timeStop_close} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | 
|---|
|  |  |  | <if test = "rtuAddr != null and rtuAddr !=''"> | 
|---|
|  |  |  | AND oh.rtu_addr LIKE CONCAT('%',#{rtuAddr},'%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "timeStart_open != null and timeStop_open != null"> | 
|---|
|  |  |  | <if test = "timeStart_open != null and timeStart_open != '' and timeStop_open != null and  timeStop_open != '' "> | 
|---|
|  |  |  | AND oh.op_dt BETWEEN #{timeStart_open} AND #{timeStop_open} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "timeStart_close != null and timeStop_close != null"> | 
|---|
|  |  |  | <if test = "timeStart_close != null and timeStart_close != '' and timeStop_close != null and timeStop_close != '' "> | 
|---|
|  |  |  | AND oh.cl_dt BETWEEN #{timeStart_close} AND #{timeStop_close} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--获取指定时间段内从未开过阀的取水口数量--> | 
|---|
|  |  |  | <select id="getNeverOpenValveIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | COUNT(*) AS recordCount | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | AND NOT EXISTS(SELECT * FROM rm_open_close_valve_history WHERE op_dt BETWEEN #{timeStart} AND #{timeStop} AND intake_id = inta.id) | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--获取指定时间段内从未开过阀的取水口--> | 
|---|
|  |  |  | <select id="getNeverOpenValveIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntake"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | inta.id AS intakeId, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | blo.name AS blockName | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | AND NOT EXISTS(SELECT * FROM rm_open_close_valve_history WHERE op_dt BETWEEN #{timeStart} AND #{timeStop} AND intake_id = inta.id) | 
|---|
|  |  |  | ORDER BY inta.id | 
|---|
|  |  |  | <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="getOpenValveGtIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | select count(*) | 
|---|
|  |  |  | from    (SELECT | 
|---|
|  |  |  | COUNT(*) AS recordCount, | 
|---|
|  |  |  | inta.id AS intakeId, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | blo.name AS blockName | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | LEFT JOIN (SELECT * FROM rm_open_close_valve_history WHERE op_dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | GROUP BY intakeId,intakeNum,blockName | 
|---|
|  |  |  | HAVING recordCount > #{value}) a | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--获取指定时间段内开阀次数超过指定值的取水口--> | 
|---|
|  |  |  | <select id="getOpenValveGtIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeOpenCount"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | COUNT(*) AS recordCount, | 
|---|
|  |  |  | inta.id AS intakeId, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | blo.name AS blockName | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | LEFT JOIN (SELECT * FROM rm_open_close_valve_history WHERE op_dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | GROUP BY intakeId,intakeNum,blockName | 
|---|
|  |  |  | HAVING recordCount > #{value} | 
|---|
|  |  |  | ORDER BY inta.id | 
|---|
|  |  |  | <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="getOpenValveLtIntakesCount" resultType="java.lang.Long"> | 
|---|
|  |  |  | select count(*) | 
|---|
|  |  |  | from    (SELECT | 
|---|
|  |  |  | COUNT(*) AS recordCount, | 
|---|
|  |  |  | inta.id AS intakeId, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | blo.name AS blockName | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | LEFT JOIN (SELECT * FROM rm_open_close_valve_history WHERE op_dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | GROUP BY intakeId,intakeNum,blockName | 
|---|
|  |  |  | HAVING recordCount < #{value}) a | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <!--获取指定时间段内开阀次数低于指定值的取水口--> | 
|---|
|  |  |  | <select id="getOpenValveLtIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeOpenCount"> | 
|---|
|  |  |  | SELECT | 
|---|
|  |  |  | COUNT(*) AS recordCount, | 
|---|
|  |  |  | inta.id AS intakeId, | 
|---|
|  |  |  | inta.name AS intakeNum, | 
|---|
|  |  |  | blo.name AS blockName | 
|---|
|  |  |  | FROM pr_intake inta | 
|---|
|  |  |  | LEFT JOIN (SELECT * FROM rm_open_close_valve_history WHERE op_dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id | 
|---|
|  |  |  | INNER JOIN ba_block blo ON blo.id = inta.blockId | 
|---|
|  |  |  | WHERE inta.deleted = 0 | 
|---|
|  |  |  | GROUP BY intakeId,intakeNum,blockName | 
|---|
|  |  |  | HAVING recordCount < #{value} | 
|---|
|  |  |  | ORDER BY inta.id | 
|---|
|  |  |  | <trim prefix="limit " > | 
|---|
|  |  |  | <if test="start != null and count != null"> | 
|---|
|  |  |  | #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </trim> | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | </mapper> | 
|---|
|  |  |  | 
|---|
|  |  |  | <if test = "rtuAddr != null and rtuAddr !=''"> | 
|---|
|  |  |  | AND oh.rtu_addr LIKE CONCAT('%',#{rtuAddr},'%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "timeStart_open != null and timeStop_open != null"> | 
|---|
|  |  |  | <if test = "timeStart_open != null and timeStart_open != '' and timeStop_open != null and  timeStop_open != '' "> | 
|---|
|  |  |  | AND oh.op_dt BETWEEN #{timeStart_open} AND #{timeStop_open} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "timeStart_close != null and timeStop_close != null"> | 
|---|
|  |  |  | <if test = "timeStart_close != null and timeStart_close != '' and timeStop_close != null and timeStop_close != '' "> | 
|---|
|  |  |  | AND oh.cl_dt BETWEEN #{timeStart_close} AND #{timeStop_close} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | 
|---|
|  |  |  | <if test = "rtuAddr != null and rtuAddr !=''"> | 
|---|
|  |  |  | AND oh.rtu_addr LIKE CONCAT('%',#{rtuAddr},'%') | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "timeStart_open != null and timeStop_open != null"> | 
|---|
|  |  |  | <if test = "timeStart_open != null and timeStart_open != '' and timeStop_open != null and  timeStop_open != '' "> | 
|---|
|  |  |  | AND oh.op_dt BETWEEN #{timeStart_open} AND #{timeStop_open} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <if test = "timeStart_close != null and timeStop_close != null"> | 
|---|
|  |  |  | <if test = "timeStart_close != null and timeStart_close != '' and timeStop_close != null and timeStop_close != '' "> | 
|---|
|  |  |  | AND oh.cl_dt BETWEEN #{timeStart_close} AND #{timeStop_close} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | </where> | 
|---|
|  |  |  | 
|---|
|  |  |  | import org.apache.dubbo.common.utils.PojoUtils; | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.time.LocalDate; | 
|---|
|  |  |  | import java.time.LocalDateTime; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | public QueryResultVo<List<VoOpenCloseValve>> getOpenCloseValveReports_history(OpenCloseValveQO qo) { | 
|---|
|  |  |  | String timeStart_open = qo.getTimeStart_open(); | 
|---|
|  |  |  | String timeStop_open = qo.getTimeStop_open(); | 
|---|
|  |  |  | if(timeStart_open != null) { | 
|---|
|  |  |  | if(timeStart_open != null && timeStart_open != "") { | 
|---|
|  |  |  | timeStart_open = timeStart_open + " 00:00:00"; | 
|---|
|  |  |  | qo.setTimeStop_open(timeStart_open); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | timeStart_open = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(timeStop_open != null) { | 
|---|
|  |  |  | qo.setTimeStop_open(timeStart_open); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if(timeStop_open != null && timeStop_open != "") { | 
|---|
|  |  |  | timeStop_open = timeStop_open + " 23:59:59"; | 
|---|
|  |  |  | qo.setTimeStop_open(timeStop_open); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | timeStop_open = LocalDate.now() + " 23:59:59"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | qo.setTimeStop_open(timeStop_open); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | String timeStart_close = qo.getTimeStart_close(); | 
|---|
|  |  |  | String timeStop_close = qo.getTimeStop_close(); | 
|---|
|  |  |  | if(timeStart_close != null) { | 
|---|
|  |  |  | if(timeStart_close != null && timeStart_close != "") { | 
|---|
|  |  |  | timeStart_close = timeStart_close + " 00:00:00"; | 
|---|
|  |  |  | qo.setTimeStart_close(timeStart_close); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | timeStart_close = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(timeStop_close != null) { | 
|---|
|  |  |  | qo.setTimeStart_close(timeStart_close); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if(timeStop_close != null && timeStop_close != "") { | 
|---|
|  |  |  | timeStop_close = timeStop_close + " 23:59:59"; | 
|---|
|  |  |  | qo.setTimeStop_close(timeStop_close); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | timeStop_close = LocalDate.now() + " 23:59:59"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | qo.setTimeStop_close(timeStop_close); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); | 
|---|
|  |  |  | Long itemTotal = rmOpenCloseValveHistoryMapper.getOpenCloseValveReportsCount_history(params); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.dy.common.webUtil.QueryResultVo; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.daoRm.RmOnHourReportHistoryMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.daoRm.RmOpenCloseValveHistoryMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.daoRm.RmOnHourReportLastMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoBatteryVolt; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoCumulativeFlow; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoIntake; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoIntakeOpenCount; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoSignalIntensity; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.intake.qo.BatteryVoltQO; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.intake.qo.CumulativeFlowQO; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.intake.qo.IntakeQO; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.intake.qo.IntakeValueQO; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.intake.qo.SignalIntensityQO; | 
|---|
|  |  |  | import lombok.extern.slf4j.Slf4j; | 
|---|
|  |  |  | import org.apache.dubbo.common.utils.PojoUtils; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private RmOnHourReportHistoryMapper rmOnHourReportHistoryMapper; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private RmOpenCloseValveHistoryMapper rmOpenCloseValveHistoryMapper; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private RmOnHourReportLastMapper rmOnHourReportLastMapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Value("${rtu.batteryVolt}") | 
|---|
|  |  |  | private Double batteryVolt; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Value("${rtu.signalIntensity.weak}") | 
|---|
|  |  |  | private Integer weak; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Value("${rtu.signalIntensity.ordinary}") | 
|---|
|  |  |  | private Integer ordinary; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内未上线的取水口 | 
|---|
|  |  |  | 
|---|
|  |  |  | return rsVo ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定信号强度的取水口 | 
|---|
|  |  |  | * @param qo | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public QueryResultVo<List<VoSignalIntensity>> getSpecifiedSignalIntakes(SignalIntensityQO qo) { | 
|---|
|  |  |  | qo.setWeak(weak); | 
|---|
|  |  |  | qo.setOrdinary(ordinary); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 生成查询参数 | 
|---|
|  |  |  | Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 获取符合条件的记录数 | 
|---|
|  |  |  | Long itemTotal = Optional.ofNullable(rmOnHourReportLastMapper.getSpecifiedSignalIntakesCount(params)).orElse(0L); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | QueryResultVo<List<VoSignalIntensity>> rsVo = new QueryResultVo<>() ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | rsVo.pageSize = qo.pageSize ; | 
|---|
|  |  |  | rsVo.pageCurr = qo.pageCurr ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | rsVo.calculateAndSet(itemTotal, params); | 
|---|
|  |  |  | rsVo.obj = rmOnHourReportLastMapper.getSpecifiedSignalIntakes(params); | 
|---|
|  |  |  | return rsVo ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取从未开过阀的取水口 | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public QueryResultVo<List<VoIntake>> getNeverOpenValveIntakes(IntakeQO qo) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | String timeStart = qo.getTimeStart(); | 
|---|
|  |  |  | String timeStop = qo.getTimeStop(); | 
|---|
|  |  |  | if(timeStart != null) { | 
|---|
|  |  |  | timeStart = timeStart + " 00:00:00"; | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | timeStart = LocalDate.now() + " 00:00:00"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | qo.setTimeStart(timeStart); | 
|---|
|  |  |  | if(timeStop != null) { | 
|---|
|  |  |  | timeStop = timeStop + " 23:59:59"; | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | timeStop = LocalDate.now() + " 23:59:59"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | qo.setTimeStop(timeStop); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 生成查询参数 | 
|---|
|  |  |  | Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 获取符合条件的记录数 | 
|---|
|  |  |  | Long itemTotal = Optional.ofNullable(rmOpenCloseValveHistoryMapper.getNeverOpenValveIntakesCount(params)).orElse(0L); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | QueryResultVo<List<VoIntake>> rsVo = new QueryResultVo<>() ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | rsVo.pageSize = qo.pageSize ; | 
|---|
|  |  |  | rsVo.pageCurr = qo.pageCurr ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | rsVo.calculateAndSet(itemTotal, params); | 
|---|
|  |  |  | rsVo.obj = rmOpenCloseValveHistoryMapper.getNeverOpenValveIntakes(params); | 
|---|
|  |  |  | return rsVo ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数超过指定值的取水口 | 
|---|
|  |  |  | * @param qo | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public QueryResultVo<List<VoIntakeOpenCount>> getOpenValveGtIntakes(IntakeValueQO qo) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | String timeStart = qo.getTimeStart(); | 
|---|
|  |  |  | String timeStop = qo.getTimeStop(); | 
|---|
|  |  |  | if(timeStart != null) { | 
|---|
|  |  |  | timeStart = timeStart + " 00:00:00"; | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | timeStart = LocalDate.now() + " 00:00:00"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | qo.setTimeStart(timeStart); | 
|---|
|  |  |  | if(timeStop != null) { | 
|---|
|  |  |  | timeStop = timeStop + " 23:59:59"; | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | timeStop = LocalDate.now() + " 23:59:59"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | qo.setTimeStop(timeStop); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 生成查询参数 | 
|---|
|  |  |  | Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 获取符合条件的记录数 | 
|---|
|  |  |  | Long itemTotal = Optional.ofNullable(rmOpenCloseValveHistoryMapper.getOpenValveGtIntakesCount(params)).orElse(0L); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | QueryResultVo<List<VoIntakeOpenCount>> rsVo = new QueryResultVo<>() ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | rsVo.pageSize = qo.pageSize ; | 
|---|
|  |  |  | rsVo.pageCurr = qo.pageCurr ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | rsVo.calculateAndSet(itemTotal, params); | 
|---|
|  |  |  | rsVo.obj = rmOpenCloseValveHistoryMapper.getOpenValveGtIntakes(params); | 
|---|
|  |  |  | return rsVo ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数低于指定值的取水口 | 
|---|
|  |  |  | * @param qo | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public QueryResultVo<List<VoIntakeOpenCount>> getOpenValveLtIntakes(IntakeValueQO qo) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | String timeStart = qo.getTimeStart(); | 
|---|
|  |  |  | String timeStop = qo.getTimeStop(); | 
|---|
|  |  |  | if(timeStart != null) { | 
|---|
|  |  |  | timeStart = timeStart + " 00:00:00"; | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | timeStart = LocalDate.now() + " 00:00:00"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | qo.setTimeStart(timeStart); | 
|---|
|  |  |  | if(timeStop != null) { | 
|---|
|  |  |  | timeStop = timeStop + " 23:59:59"; | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | timeStop = LocalDate.now() + " 23:59:59"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | qo.setTimeStop(timeStop); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 生成查询参数 | 
|---|
|  |  |  | Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 获取符合条件的记录数 | 
|---|
|  |  |  | Long itemTotal = Optional.ofNullable(rmOpenCloseValveHistoryMapper.getOpenValveLtIntakesCount(params)).orElse(0L); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | QueryResultVo<List<VoIntakeOpenCount>> rsVo = new QueryResultVo<>() ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | rsVo.pageSize = qo.pageSize ; | 
|---|
|  |  |  | rsVo.pageCurr = qo.pageCurr ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | rsVo.calculateAndSet(itemTotal, params); | 
|---|
|  |  |  | rsVo.obj = rmOpenCloseValveHistoryMapper.getOpenValveLtIntakes(params); | 
|---|
|  |  |  | return rsVo ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoBatteryVolt; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoCumulativeFlow; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoIntake; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoSignalIntensity; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.intake.qo.BatteryVoltQO; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoIntakeOpenCount; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.intake.qo.CumulativeFlowQO; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.intake.qo.IntakeQO; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.intake.qo.SignalIntensityQO; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.intake.qo.IntakeValueQO; | 
|---|
|  |  |  | import com.dy.pipIrrStatistics.result.StatisticlResultCode; | 
|---|
|  |  |  | import lombok.RequiredArgsConstructor; | 
|---|
|  |  |  | import lombok.extern.slf4j.Slf4j; | 
|---|
|  |  |  | 
|---|
|  |  |  | @SsoAop() | 
|---|
|  |  |  | public BaseResponse<QueryResultVo<List<VoIntake>>> getNotOnlineIntakes(IntakeQO qo) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | QueryResultVo<List<VoIntake>> res = intakeSv.getNotOnlineIntakes(qo); | 
|---|
|  |  |  | if(res.itemTotal == 0) { | 
|---|
|  |  |  | return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(res); | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(intakeSv.getNotOnlineIntakes(qo)); | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("获取开卡记录异常", e); | 
|---|
|  |  |  | return BaseResponseUtils.buildException(e.getMessage()) ; | 
|---|
|  |  |  | 
|---|
|  |  |  | @SsoAop() | 
|---|
|  |  |  | public BaseResponse<QueryResultVo<List<VoCumulativeFlow>>> getLargeFlowIntakes(CumulativeFlowQO qo) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | QueryResultVo<List<VoCumulativeFlow>> res = intakeSv.getLargeFlowIntakes(qo); | 
|---|
|  |  |  | if(res.itemTotal == 0) { | 
|---|
|  |  |  | return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(res); | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(intakeSv.getLargeFlowIntakes(qo)); | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("获取开卡记录异常", e); | 
|---|
|  |  |  | return BaseResponseUtils.buildException(e.getMessage()) ; | 
|---|
|  |  |  | 
|---|
|  |  |  | @SsoAop() | 
|---|
|  |  |  | public BaseResponse<QueryResultVo<List<VoCumulativeFlow>>> getSmallFlowIntakes(CumulativeFlowQO qo) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | QueryResultVo<List<VoCumulativeFlow>> res = intakeSv.getSmallFlowIntakes(qo); | 
|---|
|  |  |  | if(res.itemTotal == 0) { | 
|---|
|  |  |  | return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(res); | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(intakeSv.getSmallFlowIntakes(qo)); | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("获取开卡记录异常", e); | 
|---|
|  |  |  | return BaseResponseUtils.buildException(e.getMessage()) ; | 
|---|
|  |  |  | 
|---|
|  |  |  | @SsoAop() | 
|---|
|  |  |  | public BaseResponse<QueryResultVo<List<VoBatteryVolt>>> getUnderVoltIntakes(BatteryVoltQO qo) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | QueryResultVo<List<VoBatteryVolt>> res = intakeSv.getUnderVoltIntakes(qo); | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(intakeSv.getUnderVoltIntakes(qo)); | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("获取开卡记录异常", e); | 
|---|
|  |  |  | return BaseResponseUtils.buildException(e.getMessage()) ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定信号强度的取水口 | 
|---|
|  |  |  | * @param qo | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @GetMapping(path = "/getSpecifiedSignalIntakes") | 
|---|
|  |  |  | @SsoAop() | 
|---|
|  |  |  | public BaseResponse<QueryResultVo<List<VoSignalIntensity>>> getSpecifiedSignalIntakes(SignalIntensityQO qo) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(intakeSv.getSpecifiedSignalIntakes(qo)); | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("获取开卡记录异常", e); | 
|---|
|  |  |  | return BaseResponseUtils.buildException(e.getMessage()) ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取从未开过阀的取水口 | 
|---|
|  |  |  | * @param | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @GetMapping(path = "/getNeverOpenValveIntakes") | 
|---|
|  |  |  | @SsoAop() | 
|---|
|  |  |  | public BaseResponse<QueryResultVo<List<VoIntake>>> getNeverOpenValveIntakes(IntakeQO qo) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | QueryResultVo<List<VoIntake>> res = intakeSv.getNeverOpenValveIntakes(qo); | 
|---|
|  |  |  | if(res.itemTotal == 0) { | 
|---|
|  |  |  | return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(res); | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("获取开卡记录异常", e); | 
|---|
|  |  |  | log.error("获取记录异常", e); | 
|---|
|  |  |  | return BaseResponseUtils.buildException(e.getMessage()) ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数超过指定值的取水口 | 
|---|
|  |  |  | * @param | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @GetMapping(path = "/getOpenValveGtIntakes") | 
|---|
|  |  |  | @SsoAop() | 
|---|
|  |  |  | public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveGtIntakes(IntakeValueQO qo) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveGtIntakes(qo); | 
|---|
|  |  |  | if(res.itemTotal == 0) { | 
|---|
|  |  |  | return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(res); | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("获取记录异常", e); | 
|---|
|  |  |  | return BaseResponseUtils.buildException(e.getMessage()) ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数低于指定值的取水口 | 
|---|
|  |  |  | * @param | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @GetMapping(path = "/getOpenValveLtIntakes") | 
|---|
|  |  |  | @SsoAop() | 
|---|
|  |  |  | public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveLtIntakes(IntakeValueQO qo) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveLtIntakes(qo); | 
|---|
|  |  |  | if(res.itemTotal == 0) { | 
|---|
|  |  |  | return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return BaseResponseUtils.buildSuccess(res); | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("获取记录异常", e); | 
|---|
|  |  |  | return BaseResponseUtils.buildException(e.getMessage()) ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.dy.pipIrrStatistics.intake.qo; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.dy.common.webUtil.QueryConditionVo; | 
|---|
|  |  |  | import com.fasterxml.jackson.annotation.JsonFormat; | 
|---|
|  |  |  | import jakarta.validation.constraints.NotBlank; | 
|---|
|  |  |  | import lombok.Data; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @author :WuZeYu | 
|---|
|  |  |  | * @Date :2024/8/3  9:32 | 
|---|
|  |  |  | * @LastEditTime :2024/8/3  9:32 | 
|---|
|  |  |  | * @Description | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | public class IntakeValueQO extends IntakeQO { | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 值 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @NotBlank(message = "值不能为空") | 
|---|
|  |  |  | private int value; | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.dy.pipIrrStatistics.intake.qo; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.dy.common.webUtil.QueryConditionVo; | 
|---|
|  |  |  | import lombok.Data; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @author ZhuBaoMin | 
|---|
|  |  |  | * @date 2024-08-05 8:42 | 
|---|
|  |  |  | * @LastEditTime 2024-08-05 8:42 | 
|---|
|  |  |  | * @Description 信号强度查询对象 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | public class SignalIntensityQO extends QueryConditionVo { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 信号强度:1-弱,2-一般,3-强 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private Integer signalIntensity; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 弱信号最大值 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private Integer weak; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 一般信号最大值 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private Integer ordinary; | 
|---|
|  |  |  | } | 
|---|