Add code for void payments to void bills and partial balances.
authorJason Stephenson <jason@sigio.com>
Sat, 20 Jul 2013 15:41:52 +0000 (11:41 -0400)
committerJason Stephenson <jason@sigio.com>
Mon, 27 Jan 2014 17:33:48 +0000 (12:33 -0500)
commita1aef33e5de5172a805e8b6177a8d6f5c4d7f3e1
tree951b92406623ca21934607ff0de1e5c6650a8c07
parentf8eefdbf8fd8d9e1d8e76533738058cc79f47de6
Add code for void payments to void bills and partial balances.

This new payment type replaces the current void logic that simply flags
bills as voided.  There is an upgrade script to remove the void-related
fields from the billing tables, to remove or modify the views of voided
billings, and to convert voided billing amounts into void payments.

The void payment completely replaces the workings of voiding bills in
the backend Evergreen code.  This is a non-optional replacement.  Also,
the void payments are exposed in the staff client so that staff may
apply a void of a partial amount to a given billing.  Voiding an entire
bill or all bills for a given transaction will still function as it does
in the staff client prior to this change. However, instead of marking
the bills as voided, void payments will be applied in the amount of the
voided billings.

This new payment type is needed because the current way that Evergreen
voids bills requires that all voids happen in the same increment as the
bills themselves.  This prevents voiding of a partial bill or a bill
that has had a partial payment applied. For more on the rationale for
this change see:

    http://www.sigio.com/evergreen/billing2013.html#voidpayment

Signed-off-by: Jason Stephenson <jason@sigio.com>
Open-ILS/examples/fm_IDL.xml
Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/CircCommon.pm
Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Money.pm
Open-ILS/src/sql/Pg/080.schema.money.sql
Open-ILS/src/sql/Pg/reporter-schema.sql
Open-ILS/src/sql/Pg/upgrade/XXXX.schema.money.void_payment.sql [new file with mode: 0644]
Open-ILS/web/opac/locale/en-US/lang.dtd
Open-ILS/xul/staff_client/server/patron/bill2.xul