From 631e7769b95533635b960fbe1a1c5c99566ef03c Mon Sep 17 00:00:00 2001 From: CIEF DataTeam Date: Mon, 31 Jul 2023 16:08:35 +0000 Subject: [PATCH] Migrate Metrics from REP to FCT --- ...rigin_warehouse_shipping_packing_lists.sql | 36 ++++++++++++++++--- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/models/marts/warehouse/fct_shipping__origin_warehouse_shipping_packing_lists.sql b/models/marts/warehouse/fct_shipping__origin_warehouse_shipping_packing_lists.sql index a0c3738..f597e4f 100644 --- a/models/marts/warehouse/fct_shipping__origin_warehouse_shipping_packing_lists.sql +++ b/models/marts/warehouse/fct_shipping__origin_warehouse_shipping_packing_lists.sql @@ -159,9 +159,7 @@ origin_warehouse_shipping_packing_lists_enrich AS ( destination_warehouse_packing_list_transport_arrangements.destination_warehouse_transport_last_eta_datetime, destination_warehouse_packing_list_transport_arrangements.destination_warehouse_transport_first_estimate_schedule_created_datetime, destination_warehouse_packing_list_transport_arrangements.destination_warehouse_transport_last_estimate_schedule_created_datetime, - destination_warehouse_packing_list_transport_arrangements.destination_warehouse_transport_created_datetime, - - '{{ modules.datetime.datetime.now(modules.pytz.timezone("Asia/Kuala_Lumpur")) }}' AS _dbt_ran_datetime + destination_warehouse_packing_list_transport_arrangements.destination_warehouse_transport_created_datetime FROM origin_warehouse_shipping_packing_lists @@ -185,6 +183,33 @@ origin_warehouse_shipping_packing_lists_enrich AS ( ON (origin_warehouse_shipping_packing_lists.old_origin_warehouse_shipping_packing_list_id = destination_warehouse_packing_list_transport_arrangements.old_origin_warehouse_shipping_packing_list_id) ), +create_new_column AS ( + SELECT + *, + (ZEROIFNULL(total_package_cbm) + + ZEROIFNULL(over_weight_cbm) + + ZEROIFNULL(pallet_charge_cbm)) AS total_order_cbm, + + CASE + WHEN ROW_NUMBER() OVER (PARTITION BY sub_company_id ORDER BY origin_warehouse_shipping_order_created_datetime) = 1 THEN 1 + ELSE 0 + END AS is_first_time_sub_company, + + CASE + WHEN origin_warehouse_shipping_order_status = 'COMPLETED' + AND + MIN(IFF(origin_warehouse_shipping_order_status = 'COMPLETED', origin_warehouse_shipping_order_created_datetime, NULL)) + OVER (PARTITION BY sub_company_id) + = origin_warehouse_shipping_order_created_datetime + THEN 1 + ELSE 0 + END AS is_first_time_sub_company_completed, + + '{{ modules.datetime.datetime.now(modules.pytz.timezone("Asia/Kuala_Lumpur")) }}' AS _dbt_ran_datetime + + FROM origin_warehouse_shipping_packing_lists_enrich +), + -- FINAL final__fct_shipping__origin_warehouse_shipping_packing_lists AS ( @@ -206,6 +231,8 @@ final__fct_shipping__origin_warehouse_shipping_packing_lists AS ( warehouse_order_number, reference_contract, has_replaced_by_new_origin_warehouse_shipping_packing_list_id, + is_first_time_sub_company, + is_first_time_sub_company_completed, service_type, package_descriptions, delivery_address_reference, @@ -256,6 +283,7 @@ final__fct_shipping__origin_warehouse_shipping_packing_lists AS ( over_weight_kg, number_of_pallet_charge_record, pallet_charge_cbm, + total_order_cbm, number_of_invoice, number_of_payment, invoice_number_of_shipping_fee, @@ -321,7 +349,7 @@ final__fct_shipping__origin_warehouse_shipping_packing_lists AS ( -- metadata _dbt_ran_datetime - FROM origin_warehouse_shipping_packing_lists_enrich + FROM create_new_column ) SELECT * FROM final__fct_shipping__origin_warehouse_shipping_packing_lists \ No newline at end of file