From f297e876cc1117ee1af4f52154c2e8a33dc2395b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Pant=C5=AF=C4=8Dek?= Date: Sat, 24 Jun 2023 21:44:29 +0200 Subject: [PATCH] Always sort credit before payment before fee. --- src/members-payments.scm | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/members-payments.scm b/src/members-payments.scm index bed6cd2..96729f8 100644 --- a/src/members-payments.scm +++ b/src/members-payments.scm @@ -283,6 +283,20 @@ "Credit")) crs)) + ;; Sorting order number + (define (balance-type->number t) + (if (equal? t "Credit") + 0 + (if (equal? t "Payment") + 1 + 2))) + + ;; Sorting on the same day + (define (balance-typenumber a)) + (bn (balance-type->number b))) + (< an bn))) + ;; Returns a single credit/debit list of payments and fees ;; calendar. The result is a list of lists: ;; (list balance day amount currency message/comment czk-amount type-string) @@ -293,7 +307,10 @@ (all-unsorted (append mcal pmts crs)) (all (sort all-unsorted (lambda (a b) - (cal-day