Add new mapping to agent_status report tables

This commit is contained in:
Anna Saiapina 2024-10-10 12:27:02 +00:00 committed by GCP Dataform
parent 1950c5865f
commit c10a693219
2 changed files with 14 additions and 0 deletions

View File

@ -7,6 +7,8 @@ config {
nonNull: ["AGENT_ID", "TIMESTAMP", "STATE"],
rowConditions: [
'STATE_GROUP <> "NOT_MAPPED"',
'PRODUCTIVE <> "NOT_MAPPED"',
'REVENUE <> "NOT_MAPPED"',
'AGENT_ID = "0" or (AGENT_ID <> "0" AND AGENT_NAME <> "NOT_MAPPED")',
'STATE_ID <> 0',
'REASON_CODE is null or (REASON_CODE is not null and REASON_CODE_ID <> 0)'
@ -61,6 +63,8 @@ select ags.AGENT_ID,
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(ags.PAID_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(ags.PAID_TIME as int)))) as string)
) as PAID_TIME_FORMATTED,
COALESCE(mpr.PRODUCTIVE, 'NOT_MAPPED') as PRODUCTIVE,
COALESCE(mpr.REVENUE, 'NOT_MAPPED') as REVENUE,
from ${ref("stg_agent_status")} ags
left join ${ref("stg_AGENT")} a
on ags.AGENT_ID = a.AGENT_ID
@ -72,6 +76,9 @@ left join ${ref("stg_MAPPING_AGENT_STATE_GROUP_ID")} masg
on masgi.STATE_GROUP_ID = masg.STATE_GROUP_ID
left join ${ref("stg_MAPPING_AGENT_REASON_CODE_ID")} mrc
on ags.REASON_CODE = mrc.REASON_CODE
left join ${ref("stg_MAPPING_PRODUCTIVE_REVENUE")} mpr
on mas.STATE_ID = mpr.STATE_ID
and mrc.REASON_CODE_ID = mpr.REASON_CODE_ID
where ags.STATE not in ('Login', 'Logout', 'On Park', 'On Preview', 'On Video', 'On Voicemail')
and ags.AGENT_ID <> '400000000081027'
${ when(incremental(), `and date(ags.TIMESTAMP) >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)

View File

@ -7,6 +7,8 @@ config {
nonNull: ["AGENT_ID", "TIMESTAMP", "STATE"],
rowConditions: [
'STATE_GROUP <> "NOT_MAPPED"',
'PRODUCTIVE <> "NOT_MAPPED"',
'REVENUE <> "NOT_MAPPED"',
'AGENT_ID = "0" or (AGENT_ID <> "0" AND AGENT_NAME <> "NOT_MAPPED")',
'STATE_ID <> 0',
'REASON_CODE is null or (REASON_CODE is not null and REASON_CODE_ID <> 0)'
@ -61,6 +63,8 @@ select ags.AGENT_ID,
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(ags.PAID_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(ags.PAID_TIME as int)))) as string)
) as PAID_TIME_FORMATTED,
COALESCE(mpr.PRODUCTIVE, 'NOT_MAPPED') as PRODUCTIVE,
COALESCE(mpr.REVENUE, 'NOT_MAPPED') as REVENUE,
from ${ref("stg_agent_status")} ags
left join ${ref("stg_AGENT")} a
on ags.AGENT_ID = a.AGENT_ID
@ -72,6 +76,9 @@ left join ${ref("stg_MAPPING_AGENT_STATE_GROUP_ID")} masg
on masgi.STATE_GROUP_ID = masg.STATE_GROUP_ID
left join ${ref("stg_MAPPING_AGENT_REASON_CODE_ID")} mrc
on ags.REASON_CODE = mrc.REASON_CODE
left join ${ref("stg_MAPPING_PRODUCTIVE_REVENUE")} mpr
on mas.STATE_ID = mpr.STATE_ID
and mrc.REASON_CODE_ID = mpr.REASON_CODE_ID
where date(ags.TIMESTAMP) >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)
and ags.STATE not in ('Login', 'Logout', 'On Park', 'On Preview', 'On Video', 'On Voicemail')
and ags.AGENT_ID <> '400000000081027'