Browse Source

修改上南查询展示接口

dev-sn
Gaoby 2 years ago
parent
commit
7004f3c103
  1. 4
      device_display/src/main/resources/application.yml
  2. 184
      device_display/src/main/resources/modules/analysis/MeterReadingRecordMapper.xml

4
device_display/src/main/resources/application.yml

@ -22,8 +22,8 @@ spring:
basename: i18n/messages basename: i18n/messages
profiles: profiles:
# active: prod #开发环境 # active: prod #开发环境
# active: dev #测试环境5 active: dev #测试环境5
active: prod #生产环境 # active: prod #生产环境
# active: prod #生产环境 # active: prod #生产环境
application: application:
name: deviceDisplay name: deviceDisplay

184
device_display/src/main/resources/modules/analysis/MeterReadingRecordMapper.xml

@ -121,82 +121,16 @@
<select id="getPresentReadingPage" <select id="getPresentReadingPage"
parameterType="com.xr.device_display.modules.analysis.vo.MeterReadingRecordQueryVo" parameterType="com.xr.device_display.modules.analysis.vo.MeterReadingRecordQueryVo"
resultType="com.xr.device_display.modules.analysis.dto.PresentReadingQueryDto"> resultType="com.xr.device_display.modules.analysis.dto.PresentReadingQueryDto">
SELECT SELECT mrr.*,
*
FROM
(
SELECT
mc.id,
mrr.meter_code,
mrr.meter_type_name,
mrr.reading_value,
mrr.meter_type_id,
t1.reading_time,
'1' AS "queryType",
mc.voltage_class,
mc.owning_interval,
mc.device_name mc.device_name
FROM FROM meter_reading_record AS mrr
( SELECT meter_id, MAX( reading_time ) AS reading_time FROM meter_reading_record WHERE reading_type = 1 GROUP BY JOIN (
meter_id ) AS t1 SELECT meter_id, MAX(create_time) AS max_create_time
LEFT JOIN meter_reading_record AS mrr ON t1.meter_id = mrr.meter_id FROM meter_reading_record
AND t1.reading_time = mrr.reading_time GROUP BY meter_id
LEFT JOIN meter_config AS mc ON t1.meter_id = mc.id UNION ALL ) AS max_times ON mrr.meter_id = max_times.meter_id AND mrr.create_time = max_times.max_create_time
SELECT LEFT JOIN meter_config AS mc ON mrr.meter_id = mc.id
mc.id,
mc.meter_code,
lds5000.lds_desc AS meter_type_name,
lds5000.f AS reading_value,
mc.type_id AS meter_type_id,
lds5000.t AS reading_time,
'2' AS "queryType",
mc.voltage_class,
mc.owning_interval,
mc.device_name
FROM
meter_config AS mc
LEFT JOIN lds5000 ON mc.ids5000_id = lds5000.id
WHERE
lds5000.f IS NOT NULL UNION ALL
SELECT
"12" AS "id",
"meter010" AS "meter_code",
lds5000.lds_desc AS meter_type_name,
lds5000.f AS reading_value,
mc.type_id AS "meter_type_id",
lds5000.t AS reading_time,
'3' AS "queryType",
mc.voltage_class,
mc.owning_interval,
mc.device_name
FROM
lds5000
LEFT JOIN meter_config AS mc ON mc.meter_code = "meter010"
WHERE
type = '1'
AND fc = "MX" UNION ALL
SELECT
"12" AS "id",
"meter010" AS "meter_code",
lds5000.lds_desc AS meter_type_name,
lds5000.st_val AS reading_value,
mc.type_id AS "meter_type_id",
lds5000.t AS reading_time,
'4' AS "queryType",
mc.voltage_class,
mc.owning_interval,
mc.device_name
FROM
lds5000
LEFT JOIN meter_config AS mc ON mc.meter_code = "meter010"
WHERE
type = '1'
AND fc = "ST"
) AS C1
<where> <where>
<if test="vo.queryType != null and vo.queryType != ''">
AND C1.queryType = #{vo.queryType}
</if>
<if test="vo.meterCode != null and vo.meterCode != ''"> <if test="vo.meterCode != null and vo.meterCode != ''">
AND meter_code LIKE CONCAT('%',#{vo.meterCode},'%') AND meter_code LIKE CONCAT('%',#{vo.meterCode},'%')
</if> </if>
@ -213,8 +147,108 @@
AND device_name LIKE CONCAT('%',#{vo.deviceName},'%') AND device_name LIKE CONCAT('%',#{vo.deviceName},'%')
</if> </if>
</where> </where>
ORDER BY meter_code ORDER BY mrr.owning_interval DESC
</select> </select>
<!-- <select id="getPresentReadingPage"-->
<!-- parameterType="com.xr.device_display.modules.analysis.vo.MeterReadingRecordQueryVo"-->
<!-- resultType="com.xr.device_display.modules.analysis.dto.PresentReadingQueryDto">-->
<!-- SELECT-->
<!-- *-->
<!-- FROM-->
<!-- (-->
<!-- SELECT-->
<!-- mc.id,-->
<!-- mrr.meter_code,-->
<!-- mrr.meter_type_name,-->
<!-- mrr.reading_value,-->
<!-- mrr.meter_type_id,-->
<!-- t1.reading_time,-->
<!-- '1' AS "queryType",-->
<!-- mc.voltage_class,-->
<!-- mc.owning_interval,-->
<!-- mc.device_name-->
<!-- FROM-->
<!-- ( SELECT meter_id, MAX( reading_time ) AS reading_time FROM meter_reading_record WHERE reading_type = 1 GROUP BY-->
<!-- meter_id ) AS t1-->
<!-- LEFT JOIN meter_reading_record AS mrr ON t1.meter_id = mrr.meter_id-->
<!-- AND t1.reading_time = mrr.reading_time-->
<!-- LEFT JOIN meter_config AS mc ON t1.meter_id = mc.id UNION ALL-->
<!-- SELECT-->
<!-- mc.id,-->
<!-- mc.meter_code,-->
<!-- lds5000.lds_desc AS meter_type_name,-->
<!-- lds5000.f AS reading_value,-->
<!-- mc.type_id AS meter_type_id,-->
<!-- lds5000.t AS reading_time,-->
<!-- '2' AS "queryType",-->
<!-- mc.voltage_class,-->
<!-- mc.owning_interval,-->
<!-- mc.device_name-->
<!-- FROM-->
<!-- meter_config AS mc-->
<!-- LEFT JOIN lds5000 ON mc.ids5000_id = lds5000.id-->
<!-- WHERE-->
<!-- lds5000.f IS NOT NULL UNION ALL-->
<!-- SELECT-->
<!-- "12" AS "id",-->
<!-- "meter010" AS "meter_code",-->
<!-- lds5000.lds_desc AS meter_type_name,-->
<!-- lds5000.f AS reading_value,-->
<!-- mc.type_id AS "meter_type_id",-->
<!-- lds5000.t AS reading_time,-->
<!-- '3' AS "queryType",-->
<!-- mc.voltage_class,-->
<!-- mc.owning_interval,-->
<!-- mc.device_name-->
<!-- FROM-->
<!-- lds5000-->
<!-- LEFT JOIN meter_config AS mc ON mc.meter_code = "meter010"-->
<!-- WHERE-->
<!-- type = '1'-->
<!-- AND fc = "MX" UNION ALL-->
<!-- SELECT-->
<!-- "12" AS "id",-->
<!-- "meter010" AS "meter_code",-->
<!-- lds5000.lds_desc AS meter_type_name,-->
<!-- lds5000.st_val AS reading_value,-->
<!-- mc.type_id AS "meter_type_id",-->
<!-- lds5000.t AS reading_time,-->
<!-- '4' AS "queryType",-->
<!-- mc.voltage_class,-->
<!-- mc.owning_interval,-->
<!-- mc.device_name-->
<!-- FROM-->
<!-- lds5000-->
<!-- LEFT JOIN meter_config AS mc ON mc.meter_code = "meter010"-->
<!-- WHERE-->
<!-- type = '1'-->
<!-- AND fc = "ST"-->
<!-- ) AS C1-->
<!-- <where>-->
<!-- <if test="vo.queryType != null and vo.queryType != ''">-->
<!-- AND C1.queryType = #{vo.queryType}-->
<!-- </if>-->
<!-- <if test="vo.meterCode != null and vo.meterCode != ''">-->
<!-- AND meter_code LIKE CONCAT('%',#{vo.meterCode},'%')-->
<!-- </if>-->
<!-- <if test="vo.meterTypeId != null and vo.meterTypeId != ''">-->
<!-- AND meter_type_id = #{vo.meterTypeId}-->
<!-- </if>-->
<!-- <if test="vo.voltageClass != null and vo.voltageClass != ''">-->
<!-- AND voltage_class = #{vo.voltageClass}-->
<!-- </if>-->
<!-- <if test="vo.owningInterval != null and vo.owningInterval !=''">-->
<!-- AND owning_interval LIKE CONCAT('%',#{vo.owningInterval},'%')-->
<!-- </if>-->
<!-- <if test="vo.deviceName != null and vo.deviceName !=''">-->
<!-- AND device_name LIKE CONCAT('%',#{vo.deviceName},'%')-->
<!-- </if>-->
<!-- </where>-->
<!-- ORDER BY meter_code-->
<!-- </select>-->
</mapper> </mapper>

Loading…
Cancel
Save