|
|
@@ -108,46 +108,60 @@ crss:
|
|
|
genMtnMpointSchedMapQuery: >
|
|
|
insert into %s (mtn, sein, reading_datetime, group_schedule_id, validated_id, version, CREATED_DATE)
|
|
|
select
|
|
|
+ outer_query.mtn_name,
|
|
|
+ outer_query.sein,
|
|
|
+ outer_query.reading_datetime,
|
|
|
+ outer_query.group_schedule_id,
|
|
|
+ outer_query.validated_id,
|
|
|
+ %d,
|
|
|
+ now()
|
|
|
+ from
|
|
|
+ (select *,
|
|
|
+ row_number() over (partition by sein, reading_datetime order by eff_start_date desc, created_datetime desc) as rn
|
|
|
+ from
|
|
|
+ (select
|
|
|
temp_sched_map.mtn_name,
|
|
|
temp_sched_map.sein,
|
|
|
temp_sched_map.reading_datetime,
|
|
|
temp_sched_map.group_schedule_id,
|
|
|
temp_sched_map.validated_id,
|
|
|
- %d,
|
|
|
- now()
|
|
|
+ temp_sched_map.eff_start_date,
|
|
|
+ temp_sched_map.created_datetime
|
|
|
from (
|
|
|
- SELECT
|
|
|
- DISTINCT on (cm.mtn_name, mpoint.sein, reading_datetime, gs.id)
|
|
|
- cm.mtn_name,
|
|
|
- mpoint.sein,
|
|
|
- gen_date AS reading_datetime,
|
|
|
- gs.id AS group_schedule_id,
|
|
|
- rank() OVER (PARTITION BY cm.mtn_name ORDER BY gs.eff_start_date desc, gs.created_datetime DESC ) as rank
|
|
|
- ,
|
|
|
-
|
|
|
- (
|
|
|
- select
|
|
|
- DISTINCT first_value(val.id) OVER (PARTITION BY val.sein, val.reading_datetime ORDER BY val.created_date_time DESC )
|
|
|
- from txn_meter_validated_%s val
|
|
|
- where val.sein = mpoint.sein
|
|
|
- and val.reading_datetime = gen_date
|
|
|
- and val.meter_type = 'MIRF_MT_WESM'
|
|
|
- )
|
|
|
- as validated_id
|
|
|
- FROM cfg_mtn_grp_sched gs
|
|
|
- JOIN cfg_mtn_grp mg
|
|
|
- ON mg.mtn_grp_id = gs.mtn_grp_id
|
|
|
- JOIN cfg_mtn_grp_x_cfg_mtn gxm
|
|
|
- ON gxm.mtn_grp_id = mg.mtn_grp_id
|
|
|
- JOIN cfg_mtn cm
|
|
|
- ON cm.mtn_cfg_id = gxm.mtn_cfg_id
|
|
|
- LEFT JOIN cfg_mtn_mpoint mpoint
|
|
|
- ON mpoint.mtn_cfg_id = cm.mtn_cfg_id
|
|
|
- ,
|
|
|
- generate_series('%s', '%s', INTERVAL '%d minutes') gen_date
|
|
|
- WHERE gs.eff_start_date <= gen_date
|
|
|
- AND gs.status = 'ACTIVE'
|
|
|
- ) temp_sched_map where temp_sched_map.rank = 1 and temp_sched_map.validated_id is not null;
|
|
|
+ SELECT
|
|
|
+ DISTINCT on (cm.mtn_name, mpoint.sein, reading_datetime, gs.id)
|
|
|
+ cm.mtn_name,
|
|
|
+ mpoint.sein,
|
|
|
+ gen_date AS reading_datetime,
|
|
|
+ gs.id AS group_schedule_id,
|
|
|
+ gs.eff_start_date,
|
|
|
+ gs.created_datetime,
|
|
|
+ rank() OVER (PARTITION BY cm.mtn_name ORDER BY gs.eff_start_date desc, gs.created_datetime DESC ) as rank
|
|
|
+ ,
|
|
|
+ (
|
|
|
+ select
|
|
|
+ DISTINCT first_value(val.id) OVER (PARTITION BY val.sein, val.reading_datetime ORDER BY val.created_date_time DESC )
|
|
|
+ from txn_meter_validated_%s val
|
|
|
+ where val.sein = mpoint.sein
|
|
|
+ and val.reading_datetime = gen_date
|
|
|
+ and val.meter_type = 'MIRF_MT_WESM'
|
|
|
+ )
|
|
|
+ as validated_id
|
|
|
+ FROM cfg_mtn_grp_sched gs
|
|
|
+ JOIN cfg_mtn_grp mg
|
|
|
+ ON mg.mtn_grp_id = gs.mtn_grp_id
|
|
|
+ JOIN cfg_mtn_grp_x_cfg_mtn gxm
|
|
|
+ ON gxm.mtn_grp_id = mg.mtn_grp_id
|
|
|
+ JOIN cfg_mtn cm
|
|
|
+ ON cm.mtn_cfg_id = gxm.mtn_cfg_id
|
|
|
+ LEFT JOIN cfg_mtn_mpoint mpoint
|
|
|
+ ON mpoint.mtn_cfg_id = cm.mtn_cfg_id
|
|
|
+ ,
|
|
|
+ generate_series('%s', '%s', INTERVAL '%d minutes') gen_date
|
|
|
+ WHERE gs.eff_start_date <= gen_date
|
|
|
+ AND gs.status = 'ACTIVE'
|
|
|
+ ) temp_sched_map where temp_sched_map.rank = 1 and temp_sched_map.validated_id is not null) inner_query) outer_query
|
|
|
+ where rn = 1;
|
|
|
---
|
|
|
spring:
|
|
|
profiles: dailyMq
|