GIVEN: 1 - A library with overdue suspension 2 - A user with a cancelled discharge 3 - The same user has an issue whose date_due is gone WHEN: 1 - The book is checked in 2 - The user connects to the OPAC THEN: The user can see they are suspended due to a discharge EXPECTED: The user can see they are suspended due to an overdue
The issue is quite simple : If there is a suspension, the OPAC checks if a discharge is available. If there is one, they tell the user they have a discharge. Otherwise, it tells them they have been suspended. To cancel the discharge, the librarian only cancels the related suspension. The table discharge remains unchanged so the software has to consider that having a discharge + being suspended => being suspended due to discharge. However, in France at least, there are a few valid reasons to cancel a discharge : 1 - Patrons asking discharge by mistake 2 - Patrons needing to prove they have no debt toward library to defend their thesis, even if they stay in the same place. I propose adding two columns to discharge : 1 - Cancel date 2 - Cancel reason Then, if a discharge is cancelled, it should not be available anymore.