Bug 11144: Fix sequence of cronjobs: automatic renewal - fines - overdue notices

The patch changes the sequence of cronjobs in the crontab example
file and in the cron.daily file of the packages.

This is why:
1) Renew automatically
   ... only when we can't renew, we want to
2) Calculate fines
   ... once the fine are calculated and charged
   we can print the amount into the
3) Overdue notices

Before the change it could happen that you'd charge for an item,
that would then be renewed. Or that you'd try to print fine
amounts into the overdue notices, when they would only be
charged moments later.

To test:
- configure your system so you have items that should
  - be charged with fines
  - renew automatically
- configure your crontabs according to the example file
  or switch the cron.daily in your package installation with
  the new one
- configure your overdue notices so that one should be generated
  <<items.fine>>
- Wait for the cronjobs or schedule them to run earlier
- Verify all is well and as it should be

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
This commit is contained in:
Katrin Fischer 2015-06-09 23:13:15 +02:00 committed by Kyle M Hall
parent bff08b9962
commit 596ddef3c3
2 changed files with 5 additions and 9 deletions

View file

@ -15,8 +15,9 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
koha-foreach --enabled --email /usr/share/koha/bin/cronjobs/overdue_notices.pl -t
koha-foreach --enabled /usr/share/koha/bin/cronjobs/automatic_renewals.pl
koha-foreach --enabled /usr/share/koha/bin/cronjobs/fines.pl
koha-foreach --enabled --email /usr/share/koha/bin/cronjobs/overdue_notices.pl -t
koha-foreach --enabled --email /usr/share/koha/bin/cronjobs/advance_notices.pl -c
koha-foreach --enabled /usr/share/koha/bin/cronjobs/membership_expiry.pl -c
koha-foreach --enabled /usr/share/koha/bin/cronjobs/holds/cancel_expired_holds.pl >/dev/null 2>&1
@ -24,5 +25,4 @@ koha-foreach --enabled /usr/share/koha/bin/cronjobs/services_throttle.pl > /dev/
koha-foreach --enabled /usr/share/koha/bin/cronjobs/cleanup_database.pl --sessions --zebraqueue 10 --list-invites
koha-foreach --enabled --noemail /usr/share/koha/bin/cronjobs/cleanup_database.pl --mail
koha-foreach --enabled /usr/share/koha/bin/cronjobs/holds/auto_unsuspend_holds.pl > /dev/null 2>&1
koha-foreach --enabled /usr/share/koha/bin/cronjobs/automatic_renewals.pl
koha-run-backups --days 2 --output /var/spool/koha

View file

@ -45,11 +45,10 @@ KOHA_CRON_PATH = /usr/share/koha/bin/cronjobs
# SCHEDULED JOBS:
# m h dom mon dow user command
# OVERDUE NOTICES
0 1 * * * __KOHA_USER__ $KOHA_CRON_PATH/overdue_notices.pl -t
# FINES
5 1 * * * __KOHA_USER__ $KOHA_CRON_PATH/fines.pl
# AUTOMATIC RENEWAL + FINES + OVERDUE NOTICES
# Sequence is important - renew what can be renewed, charge fines for the rest, print fine amount into overdue notices
5 1 * * * __KOHA_USER__ $KOHA_CRON_PATH/automatic_renewals.pl && $KOHA_CRON_PATH/fines.pl && $KOHA_CRON_PATH/overdue_notices.pl -t
# ADVANCE NOTICES
10 1 * * * __KOHA_USER__ $KOHA_CRON_PATH/advance_notices.pl -c
@ -90,8 +89,5 @@ KOHA_CRON_PATH = /usr/share/koha/bin/cronjobs
# delete old purchase suggestions weekly. Replace XX with a number to define the age of suggestions to delete.
@weekly __KOHA_USER__ $KOHA_CRON_PATH/purge_suggestions.pl --days XX > /dev/null 2>&1
# every day at 3AM renew all issues scheduled for automatic renewal
0 3 * * * __KOHA_USER__ $KOHA_CRON_PATH/automatic_renewals.pl
# share_usage_with_koha_community.pl every months
0 0 1 * * __KOHA_USER__ $KOHA_CRON_PATH/share_usage_with_koha_community.pl