Skip to content

Commit 584fe49

Browse files
committed
Merge pull request #161 from mvesper/cds_ill_recall_mail
BibCirculation: reset ILL overdue_letter_number
2 parents d424e56 + 748643e commit 584fe49

2 files changed

Lines changed: 24 additions & 0 deletions

File tree

modules/bibcirculation/lib/bibcirculation_dblayer.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2721,6 +2721,11 @@ def get_purchase_request_borrower_details(ill_request_id):
27212721
else:
27222722
return None
27232723

2724+
def update_ill_request_letter_number(ill_request_id, overdue_letter_number):
2725+
query = ('UPDATE crcILLREQUEST set overdue_letter_number={0} '
2726+
'where id="{1}"')
2727+
run_sql(query.format(overdue_letter_number, ill_request_id))
2728+
27242729
def update_ill_request(ill_request_id, library_id, request_date,
27252730
expected_date, arrival_date, due_date, return_date,
27262731
status, cost, barcode, library_notes):

modules/bibcirculation/lib/bibcirculationadminlib.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4968,6 +4968,25 @@ def ill_request_details_step2(req, delete_key, ill_request_id, new_status,
49684968
barcode = db.get_ill_barcode(ill_request_id)
49694969
db.update_ill_loan_status(borrower_id, barcode, return_date, 'ill')
49704970

4971+
# ill recall letter issue
4972+
try:
4973+
from invenio.dbquery import run_sql
4974+
_query = ('SELECT due_date from crcILLREQUEST where id = "{0}"')
4975+
_due = run_sql(_query.format(ill_request_id))[0][0]
4976+
4977+
# Since we don't know if the due_date is a string or datetime
4978+
try:
4979+
_due_date = datetime.datetime.strptime(due_date, '%Y-%m-%d')
4980+
except TypeError:
4981+
_due_date = due_date
4982+
4983+
# This means that the ILL got extended, we therefore reset the
4984+
# overdue_letter_numer
4985+
if _due < _due_date:
4986+
db.update_ill_request_letter_number(ill_request_id, 0)
4987+
except Exception:
4988+
pass
4989+
49714990
db.update_ill_request(ill_request_id, library_id, request_date,
49724991
expected_date, arrival_date, due_date, return_date,
49734992
new_status, cost, barcode,

0 commit comments

Comments
 (0)