| | |
| | | SELECT |
| | | COUNT(*) AS recordCount |
| | | FROM rm_on_hour_report_history oh |
| | | INNER JOIN pr_intake inta ON inta.id = oh.intake_id |
| | | 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 = "intakeName != null and intakeName !=''"> |
| | | AND inta.name LIKE CONCAT('%',#{intakeName},'%') |
| | | <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},'%') |
| | |
| | | INNER JOIN pr_intake inta ON inta.id = oh.intake_id |
| | | <where> |
| | | <if test="intakeId != null and intakeId >0"> |
| | | AND oh.intake_id = #{intakeId} |
| | | AND oh.intake_id = #{intakeId,jdbcType=BIGINT} |
| | | </if> |
| | | <if test = "intakeNum != null and intakeNum !=''"> |
| | | AND inta.name LIKE CONCAT('%',#{intakeNum},'%') |
| | | AND inta.name LIKE CONCAT('%',#{intakeNum,jdbcType=VARCHAR},'%') |
| | | </if> |
| | | <if test = "rtuAddr != null and rtuAddr !=''"> |
| | | AND oh.rtu_addr LIKE CONCAT('%',#{rtuAddr},'%') |
| | | AND oh.rtu_addr LIKE CONCAT('%',#{rtuAddr,jdbcType=VARCHAR},'%') |
| | | </if> |
| | | <if test = "timeStart != null and timeStop != null"> |
| | | AND oh.dt BETWEEN #{timeStart} AND #{timeStop} |
| | | AND oh.dt BETWEEN #{timeStart,jdbcType=INTEGER} AND #{timeStop,jdbcType=INTEGER} |
| | | </if> |
| | | </where> |
| | | ORDER BY oh.dt DESC |
| | |
| | | SELECT |
| | | COUNT(*) AS recordCount |
| | | FROM pr_intake inta |
| | | LEFT JOIN (SELECT * FROM rm_on_hour_report_history WHERE dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id |
| | | INNER JOIN ba_block blo ON blo.id = inta.blockId |
| | | LEFT JOIN |
| | | (SELECT intake_id FROM rm_on_hour_report_history |
| | | <where> |
| | | <if test = "idStart != null"> |
| | | id <![CDATA[>=]]> #{idStart} |
| | | </if> |
| | | <if test = "idEnd != null"> |
| | | AND id <![CDATA[<=]]> #{idEnd} |
| | | </if> |
| | | </where>) his |
| | | ON his.intake_id = inta.id |
| | | LEFT JOIN ba_block blo ON blo.id = inta.blockId |
| | | WHERE his.intake_id IS NULL AND inta.deleted = 0 |
| | | |
| | | </select> |
| | | |
| | | <!--获取指定时间段内未上线的取水口--> |
| | |
| | | SELECT |
| | | inta.id AS intakeId, |
| | | inta.name AS intakeNum, |
| | | inta.lng AS lng, |
| | | inta.lat AS lat, |
| | | blo.name AS blockName |
| | | FROM pr_intake inta |
| | | LEFT JOIN (SELECT * FROM rm_on_hour_report_history WHERE dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id |
| | | INNER JOIN ba_block blo ON blo.id = inta.blockId |
| | | LEFT JOIN |
| | | (SELECT intake_id FROM rm_on_hour_report_history |
| | | <where> |
| | | <if test = "idStart != null"> |
| | | id <![CDATA[>=]]> #{idStart} |
| | | </if> |
| | | <if test = "idEnd != null"> |
| | | AND id <![CDATA[<=]]> #{idEnd} |
| | | </if> |
| | | </where>) his |
| | | ON his.intake_id = inta.id |
| | | LEFT JOIN ba_block blo ON blo.id = inta.blockId |
| | | WHERE his.intake_id IS NULL AND inta.deleted = 0 |
| | | ORDER BY inta.id |
| | | <trim prefix="limit " > |
| | |
| | | </if> |
| | | </trim> |
| | | </select> |
| | | |
| | | |
| | | |
| | | <!--指定时间段内累积流量超过指定值的取水口数量--> |
| | | <select id="getTotalFlowGtValueIntakesCount" resultType="java.lang.Long"> |
| | | select |
| | | count(*) |
| | | from |
| | | ( |
| | | SELECT |
| | | inta.id AS intakeId, |
| | | inta.NAME AS intakeNum, |
| | | blo.NAME AS blockName , |
| | | IFNULL(b.total_amount, 0)-IFNULL(a.total_amount, 0) AS value |
| | | FROM |
| | | pr_intake inta |
| | | INNER JOIN ba_block blo ON blo.id = inta.blockId |
| | | LEFT JOIN (SELECT |
| | | intake_id, |
| | | total_amount |
| | | FROM |
| | | rm_on_hour_report_history rohrs |
| | | WHERE rohrs.rtu_dt = ( SELECT MAX(rtu_dt) |
| | | FROM rm_on_hour_report_history |
| | | WHERE rtu_dt <= #{timeStart})) AS a ON inta.id = a.intake_id |
| | | LEFT JOIN ( SELECT |
| | | intake_id, |
| | | total_amount |
| | | FROM |
| | | rm_on_hour_report_history rohrs |
| | | WHERE rohrs.rtu_dt = ( SELECT MAX(rtu_dt) |
| | | FROM rm_on_hour_report_history |
| | | WHERE rtu_dt <= #{timeStop})) AS b ON inta.id = b.intake_id |
| | | WHERE IFNULL(b.total_amount, 0)-IFNULL(a.total_amount, 0) > #{value} AND inta.deleted = 0 |
| | | ) c |
| | | </select> |
| | | <!--指定时间段内累积流量超过指定值的取水口--> |
| | | <select id="getTotalFlowGtValueIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount"> |
| | | SELECT |
| | | inta.id AS intakeId, |
| | | inta.NAME AS intakeNum, |
| | | blo.NAME AS blockName , |
| | | IFNULL(b.total_amount, 0)-IFNULL(a.total_amount, 0) AS value |
| | | FROM |
| | | pr_intake inta |
| | | INNER JOIN ba_block blo ON blo.id = inta.blockId |
| | | LEFT JOIN (SELECT |
| | | intake_id, |
| | | total_amount |
| | | FROM |
| | | rm_on_hour_report_history rohrs |
| | | WHERE rohrs.rtu_dt = ( SELECT MAX(rtu_dt) |
| | | FROM rm_on_hour_report_history |
| | | WHERE rtu_dt <= #{timeStart})) AS a ON inta.id = a.intake_id |
| | | LEFT JOIN ( SELECT |
| | | intake_id, |
| | | total_amount |
| | | FROM |
| | | rm_on_hour_report_history rohrs |
| | | WHERE rohrs.rtu_dt = ( SELECT MAX(rtu_dt) |
| | | FROM rm_on_hour_report_history |
| | | WHERE rtu_dt <= #{timeStop})) AS b ON inta.id = b.intake_id |
| | | WHERE IFNULL(b.total_amount, 0)-IFNULL(a.total_amount, 0) > #{value} AND inta.deleted = 0 |
| | | 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> |