From c4db8b2364b669fd353574681fb3fb423fc7c782 Mon Sep 17 00:00:00 2001
From: FCD <2453864257@qq.com>
Date: Mon, 30 Mar 2026 11:17:37 +0800
Subject: [PATCH] =?UTF-8?q?=E5=A8=81=E4=BC=9F=E7=94=B5=E8=A1=A8=E4=BF=AE?=
=?UTF-8?q?=E6=AD=A3=E6=96=B0=E5=A2=9E=E5=80=8D=E7=8E=87?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../mapper/report/ReportPointDnbMapper.xml | 21 ++++++++++---------
1 file changed, 11 insertions(+), 10 deletions(-)
diff --git a/op-modules/op-energy/src/main/resources/mapper/report/ReportPointDnbMapper.xml b/op-modules/op-energy/src/main/resources/mapper/report/ReportPointDnbMapper.xml
index 712aa7eee..70334cc77 100644
--- a/op-modules/op-energy/src/main/resources/mapper/report/ReportPointDnbMapper.xml
+++ b/op-modules/op-energy/src/main/resources/mapper/report/ReportPointDnbMapper.xml
@@ -514,20 +514,21 @@
SELECT objId, expend
FROM (
SELECT
- objId,
- meter_value - ISNULL( LAG ( meter_value, 1 ) OVER ( PARTITION BY monitor_id ORDER BY record_time ), 0 ) AS expend,
- ROW_NUMBER ( ) OVER ( ORDER BY record_time ) AS row_num
- FROM report_point_dnb
- WHERE DATEPART( MINUTE, record_time ) = 0
- AND DATEPART( SECOND, record_time ) = 0
+ a.objId,
+ (a.meter_value - ISNULL( LAG ( a.meter_value, 1 ) OVER ( PARTITION BY a.monitor_id ORDER BY a.record_time ), 0 )) * ISNULL(b.ct, 1) AS expend,
+ ROW_NUMBER ( ) OVER ( ORDER BY a.record_time ) AS row_num
+ FROM report_point_dnb a
+ LEFT JOIN base_monitor_info b ON a.monitor_id = b.monitor_id
+ WHERE DATEPART( MINUTE, a.record_time ) = 0
+ AND DATEPART( SECOND, a.record_time ) = 0
- AND CONVERT ( VARCHAR, record_time, 23 ) >= #{params.beginDate}
- AND CONVERT ( VARCHAR, record_time, 23 ) #{params.endDate}
+ AND CONVERT ( VARCHAR, a.record_time, 23 ) >= #{params.beginDate}
+ AND CONVERT ( VARCHAR, a.record_time, 23 ) #{params.endDate}
- AND CONVERT ( VARCHAR, record_time, 23 ) >= CONVERT(varchar, DATEADD(day, -2, GETDATE()), 23)
+ AND CONVERT ( VARCHAR, a.record_time, 23 ) >= CONVERT(varchar, DATEADD(day, -2, GETDATE()), 23)
- AND monitor_id = #{params.monitorId}
+ AND a.monitor_id = #{params.monitorId}
) n
WHERE row_num != 1
) b ON a.objid = b.objId