Preliminary version of attendance sheet.
This commit is contained in:
parent
53be61d345
commit
e02853edc7
1 changed files with 39 additions and 5 deletions
|
@ -48,7 +48,7 @@
|
||||||
|
|
||||||
(define (print-attendance-sheet MB number)
|
(define (print-attendance-sheet MB number)
|
||||||
(print "\\documentclass[10pt]{article}")
|
(print "\\documentclass[10pt]{article}")
|
||||||
(print "\\usepackage[top=1cm,left=2cm,right=2cm,bottom=2cm]{geometry}")
|
(print "\\usepackage[top=1cm,left=1cm,right=2cm,bottom=2cm]{geometry}")
|
||||||
(print "\\begin{document}")
|
(print "\\begin{document}")
|
||||||
(print "\\begin{center}")
|
(print "\\begin{center}")
|
||||||
(print
|
(print
|
||||||
|
@ -63,7 +63,7 @@
|
||||||
(print "\\vskip1em")
|
(print "\\vskip1em")
|
||||||
(newline)
|
(newline)
|
||||||
(define colnames
|
(define colnames
|
||||||
'((id) Nick Name Surname (Fee) (Balance) (Active) Signature))
|
'((id) Nick Name Surname (Fee) (Balance) B (Active) A OK? Signature))
|
||||||
(print
|
(print
|
||||||
(format
|
(format
|
||||||
"\\begin{tabular}{|~A|}"
|
"\\begin{tabular}{|~A|}"
|
||||||
|
@ -88,6 +88,9 @@
|
||||||
"&")
|
"&")
|
||||||
"\\\\")
|
"\\\\")
|
||||||
(print "\\hline")
|
(print "\\hline")
|
||||||
|
(define valid-voters 0)
|
||||||
|
(define ok-balances 0)
|
||||||
|
(define ok-actives 0)
|
||||||
(let loop ((mrs (find-members-by-predicate
|
(let loop ((mrs (find-members-by-predicate
|
||||||
MB (lambda (mr)
|
MB (lambda (mr)
|
||||||
(brmember-active? mr)))))
|
(brmember-active? mr)))))
|
||||||
|
@ -122,7 +125,17 @@
|
||||||
(list (*current-month*)
|
(list (*current-month*)
|
||||||
(brmember-flags mr)
|
(brmember-flags mr)
|
||||||
spec-fee))))
|
spec-fee))))
|
||||||
|
(balance-ok? (>= (member-total-balance mr)
|
||||||
|
(- current-fee)))
|
||||||
|
(active-ok? (>= numactive 9))
|
||||||
|
(vote-ok? (and balance-ok? active-ok?))
|
||||||
)
|
)
|
||||||
|
(when balance-ok?
|
||||||
|
(set! ok-balances (+ ok-balances 1)))
|
||||||
|
(when active-ok?
|
||||||
|
(set! ok-actives (+ ok-actives 1)))
|
||||||
|
(when vote-ok?
|
||||||
|
(set! valid-voters (+ valid-voters 1)))
|
||||||
(print
|
(print
|
||||||
(brmember-id mr)
|
(brmember-id mr)
|
||||||
" & "
|
" & "
|
||||||
|
@ -134,19 +147,40 @@
|
||||||
" & "
|
" & "
|
||||||
sname
|
sname
|
||||||
" & "
|
" & "
|
||||||
(format-amount current-fee)
|
current-fee
|
||||||
" & "
|
" & "
|
||||||
(format-amount
|
(format-amount-tex
|
||||||
(member-total-balance mr))
|
(member-total-balance mr))
|
||||||
" & "
|
" & "
|
||||||
|
(if balance-ok?
|
||||||
|
"Y"
|
||||||
|
"--")
|
||||||
|
" & "
|
||||||
numactive
|
numactive
|
||||||
" & "
|
" & "
|
||||||
|
(if active-ok?
|
||||||
|
"Y"
|
||||||
|
"--")
|
||||||
|
" & "
|
||||||
|
(if vote-ok?
|
||||||
|
"Y"
|
||||||
|
"--")
|
||||||
|
" & "
|
||||||
"~ ~ ~ ~ ~"
|
"~ ~ ~ ~ ~"
|
||||||
" \\\\")
|
" \\\\")
|
||||||
(print "\\hline")
|
(print "\\hline")
|
||||||
(loop (cdr mrs)))))
|
(loop (cdr mrs)))))
|
||||||
(print "\\end{tabular}")
|
(print "\\end{tabular}")
|
||||||
(print "\\end{center}")
|
(print "\\end{center}")
|
||||||
(print "\\end{document}"))
|
(print "\\end{document}")
|
||||||
|
(print "% valid-voters = " valid-voters)
|
||||||
|
(print "% valid-balances = " ok-balances)
|
||||||
|
(print "% valid-actives = " ok-actives)
|
||||||
|
)
|
||||||
|
|
||||||
|
(define (format-amount-tex amt)
|
||||||
|
(string-translate*
|
||||||
|
(format-amount amt)
|
||||||
|
'(("--" . "--{}--"))))
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue