diff --git a/models/staging/googlesheet/stg_googlesheet__account_frozen_cases.sql b/models/staging/googlesheet/stg_googlesheet__account_frozen_cases.sql new file mode 100644 index 0000000..89787d1 --- /dev/null +++ b/models/staging/googlesheet/stg_googlesheet__account_frozen_cases.sql @@ -0,0 +1,89 @@ +-- IMPORT +WITH account_frozen_cases AS ( + SELECT * FROM {{ source('src_googlesheet_airbyte', 'account_frozen_case') }} +), + + +-- LOGIC +data_casting AS ( + + SELECT + id AS frozen_account_case_id, + _airbyte_raw_id AS frozen_account_cases_airbyte_id, + ticket_id AS crm_ticket_id, + company_marking_id AS recorded_company_marking_id, + booking_marking_id, + ticket_status, + agent_reply_status, + account_freeze_reason, + issue_type, + product_name, + amount_involved AS affected_order_amount, + currency_involved AS affected_order_currency, + investigation_finding, + agent_comment, + manager_comment, + + COALESCE( + TRY_TO_TIMESTAMP(ticket_created_datetime::STRING, 'DD-MM-YYYY'), + TRY_TO_TIMESTAMP(ticket_created_datetime::STRING, 'DD-MM-YYYY HH24:MI:SS') + ) AS ticket_created_datetime, + + COALESCE( + TRY_TO_TIMESTAMP(ticket_updated_datetime::STRING, 'DD-MM-YYYY'), + TRY_TO_TIMESTAMP(ticket_updated_datetime::STRING, 'DD-MM-YYYY HH24:MI:SS') + ) AS ticket_updated_datetime, + + COALESCE( + TRY_TO_TIMESTAMP(ticket_closed_datetime::STRING, 'DD-MM-YYYY'), + TRY_TO_TIMESTAMP(ticket_closed_datetime::STRING, 'DD-MM-YYYY HH24:MI:SS') + ) AS ticket_closed_datetime, + + _airbyte_extracted_at, + + '{{ modules.datetime.datetime.now(modules.pytz.timezone("Asia/Kuala_Lumpur")) }}' AS _dbt_ran_datetime + + FROM account_frozen_cases + +), + + +-- FINAL +final__stg_googlesheet__sales_exchange_lead_activations AS ( + + SELECT + -- ids + frozen_account_cases_airbyte_id, + frozen_account_case_id, + crm_ticket_id, + booking_marking_id, + recorded_company_marking_id, + + -- dimensions + product_name, + ticket_status, + agent_reply_status, + account_freeze_reason, + issue_type, + affected_order_currency, + investigation_finding, + agent_comment, + manager_comment, + + -- measures + affected_order_amount, + + -- date/times + ticket_created_datetime, + ticket_updated_datetime, + ticket_closed_datetime, + + -- metadata + _airbyte_extracted_at + _dbt_ran_datetime + + FROM data_casting + +) + +SELECT * FROM final__stg_googlesheet__sales_exchange_lead_activations \ No newline at end of file