From 001f24d4efd7b818bc2224b976c82faf4f9e564c Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 01 十一月 2024 11:25:00 +0800
Subject: [PATCH] 1、通信协议要增加版本号(目的为远程升级准备),原来没有版本号的协议默认为版本号为1,所以调整了程序命名; 2、流浪控制器与控制器数据库表都增加了协议版本号字段; 3、VO中Double和Float类型的属性增加注解@JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
---
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml | 120 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 118 insertions(+), 2 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 dab83eb..d950234 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml
@@ -202,8 +202,11 @@
FROM rm_on_hour_report_history oh
INNER JOIN pr_intake inta ON inta.id = oh.intake_id
<where>
- <if test = "intakeName != null and intakeName !=''">
- AND inta.name LIKE CONCAT('%',#{intakeName},'%')
+ <if test="intakeId != null and intakeId >0">
+ AND oh.intake_id = #{intakeId}
+ </if>
+ <if test = "intakeName != null and intakeNum !=''">
+ AND inta.name LIKE CONCAT('%',#{intakeNum},'%')
</if>
<if test = "rtuAddr != null and rtuAddr !=''">
AND oh.rtu_addr LIKE CONCAT('%',#{rtuAddr},'%')
@@ -231,6 +234,9 @@
FROM rm_on_hour_report_history 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>
@@ -248,4 +254,114 @@
</if>
</trim>
</select>
+
+ <!--鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾垮彇姘村彛鏁伴噺-->
+ <select id="getNotOnlineIntakesCount" resultType="java.lang.Long">
+ SELECT
+ COUNT(*) AS recordCount
+ FROM pr_intake inta
+ LEFT JOIN
+ (SELECT * FROM rm_on_hour_report_history
+ <where>
+ <if test = "timeStart != null and timeStop != null">
+ dt BETWEEN #{timeStart} AND #{timeStop}
+ </if>
+ </where>) his
+ ON his.intake_id = inta.id
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
+ WHERE his.intake_id IS NULL AND inta.deleted = 0
+
+ </select>
+
+ <!--鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾跨殑鍙栨按鍙�-->
+ <select id="getNotOnlineIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntake">
+ SELECT
+ inta.id AS intakeId,
+ inta.name AS intakeNum,
+ blo.name AS blockName
+ FROM pr_intake inta
+ LEFT JOIN
+ (SELECT * FROM rm_on_hour_report_history
+ <where>
+ <if test = "timeStart != null and timeStop != null">
+ dt BETWEEN #{timeStart} AND #{timeStop}
+ </if>
+ </where>) his
+ ON his.intake_id = inta.id
+ INNER 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 test="start != null and count != null">
+ #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+ </if>
+ </trim>
+ </select>
+ <!--鎸囧畾鏃堕棿娈靛唴绱Н娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲�-->
+ <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>
\ No newline at end of file
--
Gitblit v1.8.0