Finish total debit milestone.
This commit is contained in:
parent
d9d37daf1d
commit
cf4652084f
5 changed files with 20 additions and 11 deletions
|
@ -45,6 +45,7 @@
|
|||
member-record-info
|
||||
member-missing-keys
|
||||
member-has-highlights?
|
||||
member-record-usable?
|
||||
member-has-problems?
|
||||
|
||||
member-destroyed?
|
||||
|
@ -221,16 +222,26 @@
|
|||
(define (member-has-errors? mr)
|
||||
(member-highlights-has-type? mr 'error))
|
||||
|
||||
;; Absolutely required
|
||||
(define (member-record-usable? mr)
|
||||
(dict-has-key? (dict-ref mr 'info) 'member))
|
||||
|
||||
;; True if member record is OK
|
||||
(define (member-has-problems? mr)
|
||||
(or (member-has-errors? mr)
|
||||
(not (member-record-usable? mr))
|
||||
(not (is-4digit-prime? (member-id mr)))))
|
||||
|
||||
;; Returns true if the member record represents non-existing
|
||||
;; member. The *current-month* is a global parameter from period
|
||||
;; module.
|
||||
(define (member-destroyed? mr)
|
||||
(not (member-existing? mr)))
|
||||
(and (not (member-existing? mr))
|
||||
(let ((member (member-record-info mr 'member)))
|
||||
(if (null? member)
|
||||
#f
|
||||
(month>=? (*current-month*)
|
||||
(period-since (car member)))))))
|
||||
|
||||
;; Generic period-based predicate
|
||||
(define ((member-period-predicate? key) mr)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue