|
|
|
|
@ -506,4 +506,67 @@
|
|
|
|
|
order by ert.pointTime asc
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<select id="fixWwEnergyData" resultType="Integer" parameterType="java.util.Map" >
|
|
|
|
|
UPDATE a
|
|
|
|
|
SET expend = b.expend
|
|
|
|
|
FROM report_point_dnb a
|
|
|
|
|
INNER JOIN (
|
|
|
|
|
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
|
|
|
|
|
<if test="params.beginDate != null and params.beginDate != ''">
|
|
|
|
|
AND CONVERT ( VARCHAR, record_time, 23 ) >= #{params.beginDate}
|
|
|
|
|
AND CONVERT ( VARCHAR, record_time, 23 ) <![CDATA[ <= ]]> #{params.endDate}
|
|
|
|
|
</if>
|
|
|
|
|
<if test="params.beginDate == null || params.beginDate == ''">
|
|
|
|
|
AND CONVERT ( VARCHAR, record_time, 23 ) >= CONVERT(varchar, DATEADD(day, -2, GETDATE()), 23)
|
|
|
|
|
</if>
|
|
|
|
|
AND monitor_id = #{params.monitorId}
|
|
|
|
|
) n
|
|
|
|
|
WHERE row_num != 1
|
|
|
|
|
) b ON a.objid = b.objId
|
|
|
|
|
WHERE a.objid IN (
|
|
|
|
|
SELECT objId
|
|
|
|
|
FROM report_point_dnb
|
|
|
|
|
WHERE monitor_id = #{params.monitorId}
|
|
|
|
|
<if test="params.beginDate != null and params.beginDate != ''">
|
|
|
|
|
AND CONVERT ( VARCHAR, record_time, 23 ) >= #{params.beginDate}
|
|
|
|
|
AND CONVERT ( VARCHAR, record_time, 23 ) <![CDATA[ <= ]]> #{params.endDate}
|
|
|
|
|
</if>
|
|
|
|
|
<if test="params.beginDate == null || params.beginDate == ''">
|
|
|
|
|
AND CONVERT ( VARCHAR, record_time, 23 ) >= CONVERT(varchar, DATEADD(day, -2, GETDATE()), 23)
|
|
|
|
|
</if>
|
|
|
|
|
)
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<insert id="batchInsertReportPointDnb" parameterType="java.util.List">
|
|
|
|
|
INSERT INTO report_point_dnb
|
|
|
|
|
(
|
|
|
|
|
monitor_id, monitor_name, begin_time, end_time,
|
|
|
|
|
record_time, expend, meter_value, collect_type
|
|
|
|
|
)
|
|
|
|
|
SELECT
|
|
|
|
|
t.monitorId, t.monitorName, t.beginTime, t.endTime,
|
|
|
|
|
t.recordTime, t.expend, t.meterValue, t.collectType
|
|
|
|
|
FROM (
|
|
|
|
|
<foreach collection="list" item="item" index="index" separator="UNION ALL">
|
|
|
|
|
SELECT
|
|
|
|
|
#{item.monitorId,jdbcType=VARCHAR} AS monitorId,
|
|
|
|
|
#{item.monitorName,jdbcType=VARCHAR} AS monitorName,
|
|
|
|
|
#{item.beginTime,jdbcType=TIMESTAMP} AS beginTime,
|
|
|
|
|
#{item.endTime,jdbcType=TIMESTAMP} AS endTime,
|
|
|
|
|
GETDATE() AS recordTime,
|
|
|
|
|
#{item.expend,jdbcType=DECIMAL} AS expend,
|
|
|
|
|
#{item.meterValue,jdbcType=DECIMAL} AS meterValue,
|
|
|
|
|
'1' AS collectType
|
|
|
|
|
</foreach>
|
|
|
|
|
) t
|
|
|
|
|
</insert>
|
|
|
|
|
|
|
|
|
|
</mapper>
|
|
|
|
|
|