From 1577db322f657113023590516fed711d7781def2 Mon Sep 17 00:00:00 2001 From: Joaquin Ossa Date: Tue, 11 Feb 2025 17:10:07 +0100 Subject: [PATCH] ***ing decimals --- .../core/int_core__waiver_fees.sql | 50 +++++++++++-------- 1 file changed, 29 insertions(+), 21 deletions(-) diff --git a/models/intermediate/core/int_core__waiver_fees.sql b/models/intermediate/core/int_core__waiver_fees.sql index 00056fb..63504da 100644 --- a/models/intermediate/core/int_core__waiver_fees.sql +++ b/models/intermediate/core/int_core__waiver_fees.sql @@ -33,33 +33,28 @@ select case when pa.id_payaway_plan is not null then - p.amount - greatest( - p.amount * pa.payaway_percentage, - pa.payaway_minimum_commission_local_curr * cer.rate - ) + ( + p.amount - greatest( + p.amount * pa.payaway_percentage, + pa.payaway_minimum_commission_local_curr * cer.rate + ) + )::decimal(19, 4) else 0 end as amount_due_to_host_in_txn_currency, case when pa.id_payaway_plan is not null then ( - p.amount - greatest( - p.amount * pa.payaway_percentage, - pa.payaway_minimum_commission_local_curr * cer.rate + ( + p.amount - greatest( + p.amount * pa.payaway_percentage, + pa.payaway_minimum_commission_local_curr * cer.rate + ) ) - ) - * ser.rate + * ser.rate + )::decimal(19, 4) else 0 end as amount_due_to_host_in_gbp, - case - when pa.id_payaway_plan is not null - then - greatest( - p.amount * pa.payaway_percentage, - pa.payaway_minimum_commission_local_curr * cer.rate - ) - else p.amount - end as superhog_fee_in_txn_currency, case when pa.id_payaway_plan is not null then @@ -68,9 +63,22 @@ select p.amount * pa.payaway_percentage, pa.payaway_minimum_commission_local_curr * cer.rate ) - ) - * ser.rate - else p.amount * ser.rate + )::decimal(19, 4) + else p.amount + end as superhog_fee_in_txn_currency, + case + when pa.id_payaway_plan is not null + then + ( + ( + greatest( + p.amount * pa.payaway_percentage, + pa.payaway_minimum_commission_local_curr * cer.rate + ) + ) + * ser.rate + )::decimal(19, 4) + else (p.amount * ser.rate)::decimal(19, 4) end as superhog_fee_in_gbp from stg_core__verification_to_payment vtp left join stg_core__payment p on vtp.id_payment = p.id_payment