diff --git a/member-record.scm b/member-record.scm index 58a4d5e..6083c67 100644 --- a/member-record.scm +++ b/member-record.scm @@ -65,7 +65,7 @@ member-record-add-payment member-payments - member-balances + member-balance member-record-tests! ) @@ -347,8 +347,8 @@ (dict-ref mr 'payments '())) ;; Balances totals - (define (member-balances mr) - (dict-ref mr 'balances (make-dict))) + (define (member-balance mr) + (dict-ref mr 'balance (make-dict))) ;; Self-tests (define (member-record-tests!) diff --git a/members-payments.scm b/members-payments.scm index 29e1104..fe166a2 100644 --- a/members-payments.scm +++ b/members-payments.scm @@ -80,19 +80,19 @@ (if apikeys-file (let* ((accounts (load-accounts (load-accounts-list apikeys-file)))) - (map member-add-balances + (map member-add-balance (foldl members-payments-process-bank mb accounts))) mb)) ;; Adds all balances - (define (member-add-balances mr) + (define (member-add-balance mr) (dict-set mr - 'balances + 'balance (make-dict `((fees . ,(member-fees-total mr)) (credit . ,(member-credit-total mr)) - (balance . ,(member-payments-total mr)))))) + (payment . ,(member-payments-total mr)))))) ;; Total amount paid (define (member-payments-total mr) diff --git a/members-print.scm b/members-print.scm index 164a50e..7fe5bde 100644 --- a/members-print.scm +++ b/members-print.scm @@ -329,10 +329,15 @@ (list "Member" "Fees" "Credit" "Payments" "Balance") (map (lambda (mr) - (let ((balances (member-balances mr))) + (let* ((balance (member-balance mr)) + (fees (dict-ref balance 'fees)) + (credit (dict-ref balance 'credit)) + (payment (dict-ref balance 'payment))) (list (member-nick mr) - (sprintf "\t~A" (member-fees-total mr)) - (sprintf "\t~A" (member-credit-total mr)) + (sprintf "\t~A" fees) + (sprintf "\t~A" credit) + (sprintf "\t~A" payment) + (sprintf "\t~A" (- (+ credit payment) fees)) ))) (sort (filter-members-by-predicate MB member-active?) member