From c7c8554e2b9809bc90ac4a43fdaa39dfe16f4ab0 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期五, 09 五月 2025 14:09:32 +0800 Subject: [PATCH] “远程测控”功能返回数据中增加protocol和protocolVersion属性,以备前端做多协议兼容。 --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml | 155 ++++++++++++++++++++++++++++++--------------------- 1 files changed, 91 insertions(+), 64 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml index edfd7d1..0f63312 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml @@ -200,13 +200,13 @@ 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},'%') @@ -235,16 +235,16 @@ 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 @@ -260,10 +260,19 @@ 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> <!--鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾跨殑鍙栨按鍙�--> @@ -271,10 +280,22 @@ 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 " > @@ -283,61 +304,67 @@ </if> </trim> </select> - - <!--鑾峰彇绱娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲�--> - <select id="getLargeFlowIntakesCount" resultType="java.lang.Long"> + <!--鎸囧畾鏃堕棿娈靛唴绱Н娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲�--> + <select id="getTotalFlowGtValueIntakesCount" resultType="java.lang.Long"> + select + count(*) + from + ( 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"> + 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, - 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> - - <!--鑾峰彇绱娴侀噺浣庝簬鎸囧畾鍊肩殑鍙栨按鍙f暟閲�--> - <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 + 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} -- Gitblit v1.8.0