Basic member fees table.
This commit is contained in:
parent
19a370e448
commit
9cfd4e21e1
2 changed files with 21 additions and 0 deletions
14
bbstool.scm
14
bbstool.scm
|
@ -27,6 +27,7 @@ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|||
|
||||
(import testing
|
||||
(chicken format)
|
||||
(chicken sort)
|
||||
listing
|
||||
dictionary
|
||||
month
|
||||
|
@ -89,6 +90,7 @@ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|||
(-action- 'gencards)
|
||||
(-fname- (list file:cards file:desfires)))
|
||||
(-problems () "Prints all files with problems" (-action- 'problems))
|
||||
(-fees () "Prints fees table" (-action- 'fees))
|
||||
)
|
||||
|
||||
;; Run tests
|
||||
|
@ -182,4 +184,16 @@ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|||
(print-member-table (car mb))
|
||||
(print-member-source (car mb)))
|
||||
(loop (cdr mb)))))
|
||||
((fees)
|
||||
(print
|
||||
(table->string
|
||||
(cons
|
||||
(list "Member" "Fees")
|
||||
(map
|
||||
(lambda (mr)
|
||||
(list (member-nick mr)
|
||||
(sprintf "\t~A" (member-fees-total mr))))
|
||||
(sort (filter-members-by-predicate MB member-active?) member<?)))
|
||||
#:col0-border #t #:row0-border #t)))
|
||||
|
||||
)
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
member-calendar-query
|
||||
member-calendar->years-table
|
||||
member-calendar->fees
|
||||
member-fees-total
|
||||
)
|
||||
|
||||
(import scheme
|
||||
|
@ -131,4 +132,10 @@
|
|||
(define (member-calendar->fees mc)
|
||||
(map member-calendar-entry->fee mc))
|
||||
|
||||
;; Returns the total sum of fees for all months relevant for given
|
||||
;; member
|
||||
(define (member-fees-total mr)
|
||||
(foldl + 0 (member-calendar->fees
|
||||
(member-calendar mr))))
|
||||
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue