diff --git a/src/Makefile b/src/Makefile index 026334a..4ab7480 100644 --- a/src/Makefile +++ b/src/Makefile @@ -214,7 +214,8 @@ bank-fio.import.scm: $(BANK-FIO-SOURCES) MEMBERS-PAYMENTS-SOURCES=members-payments.scm bank-account.import.scm \ dictionary.import.scm member-fees.import.scm \ - period.import.scm configuration.import.scm utils.import.scm + period.import.scm configuration.import.scm utils.import.scm \ + progress.import.scm members-payments.o: members-payments.import.scm members-payments.import.scm: $(MEMBERS-PAYMENTS-SOURCES) diff --git a/src/members-payments.scm b/src/members-payments.scm index 2f2a957..dd45bfa 100644 --- a/src/members-payments.scm +++ b/src/members-payments.scm @@ -51,7 +51,8 @@ member-fees period configuration - utils) + utils + progress) ;; Exchange rates (define exchange-rates-lookup-table @@ -144,19 +145,22 @@ ;; accounts and processes transactions. (define (members-payments-process mb apikeys-file dir checked-fn) (if apikeys-file - (let* ((acc-list (load-accounts-list apikeys-file)) - (accounts (if acc-list (load-accounts acc-list dir) #f)) - (last-checked (get-latest-checked-id checked-fn))) - (if accounts - (let ((mbp (foldl (lambda (mb ba) - (members-payments-process-bank mb ba last-checked)) - mb - (filter identity - accounts)))) - (members-base-update mbp identity member-sort-payments)) - (let () - (print "Warning: no accounts loaded!") - mb))) + (with-progress + #t "Payments" + (progress%-advance 0) + (let* ((acc-list (load-accounts-list apikeys-file)) + (accounts (if acc-list (load-accounts acc-list dir) #f)) + (last-checked (get-latest-checked-id checked-fn))) + (if accounts + (let ((mbp (foldl (lambda (mb ba) + (members-payments-process-bank mb ba last-checked)) + mb + (filter identity + accounts)))) + (members-base-update mbp identity member-sort-payments)) + (let () + (print "Warning: no accounts loaded!") + mb)))) mb)) ;; Adds all balances - payments are converted to CZK in member-payments-total