Koha/C4
Martin Renvoize 7a07e11128 Bug 23091: Add handling for new lostreturn rules
This patch adds handing for the new values available for the lostreturn
policy settings.

* undef - Do nothing, leave fees and fines as they were at the point of
  lose.
* refund - Refund the lost item fee only
* charge - Refund the lost item fee and charge a fresh overdue fine
  dated for a return on the date the item is 'found'
* restore - Refund the lost item fee and restore the original overdue
  fine (dated for a 'return' on the date the item was 'lost'

Test plan
1/ apply patch
2/ updatedatabase, restart_all
3/ verify finesmode and CalculateFinesOnReturn and WhenLostChargeReplacementFee are on
4/ verify WhenLostForgiveFine is set to "Forgive"
5/ verify circ rules include fines
6/ set Default lost item fee refund on return policy to "Refund lost item charge"
7/ create 4 overdue checkouts that will incur fines
8/ run fines.pl
9/ confirm 4 items checked out with accruing fines
10/ confirm all 4 items have a replacement price

Item 1
11/ mark the first item lost
12/ verify that fine is gone and lost fee has been charged
13/ check item in
14/ verify that lost fee is gone and overdue charge has not returned

Item 2
15/ set Default lost item fee refund on return policy to "Refund lost item charge and charge new overdue fine"
16/ mark second item lost
17/ verify that fine is gone and lost fee has been charged
18/ check item in
19/ verify that lost fee is gone and a new overdue charge has been made

Item 3
20/ set Default lost item fee refund on return policy to "Refund lost item charge and restore overdue fine"
21/ mark third item lost
22/ verify that fine is gone and lost fee has been charged
23/ check item in
24/ verify that lost fee is gone and the old overdue charge has been restored

Item 4
25/ set Default lost item fee refund on return policy to "Leave lost item charge"
26/ mark fourth item lost
27/ verify that fine is gone and lost fee has been charged
28/ check item in
29/ verify that lost fee remains and the overdue charge is still gone

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-11-06 15:55:17 +01:00
..
AuthoritiesMarc
Barcodes Bug 26673: Fix perlcritic complains 2020-11-02 08:42:20 +01:00
ClassSortRoutine Bug 16011: $VERSION - Remove use vars qw(); 2016-03-24 17:20:39 +00:00
ClassSplitRoutine Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Creators Bug 25852: Improve C4::Creators::Lib reliability under plack 2020-07-31 10:03:26 +02:00
External
Form
Heading
ILSDI Bug 25650: Add location and itype descriptions in ILS-DI GetRecords 2020-11-05 15:24:20 +01:00
Installer
Labels Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Linker Bug 25189: Don't create authority if results found 2020-06-24 14:31:37 +02:00
Members Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
OAI Bug 25460: Update OAI sets when adding/editing/deleting item records 2020-10-15 12:56:30 +02:00
Output Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Patroncards Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Reports Bug 22001: execute reports in an eval 2020-03-31 17:48:14 +01:00
Search
Serials
SIP Bug 26896: Enable SIP option holds_block_checkin to actually block checkin of items with holds 2020-11-03 11:07:22 +01:00
Utils Bug 15400: Display date of birth and age more consistantly 2020-06-29 12:37:02 +02:00
Accounts.pm Bug 22394: Remove C4::Accounts::manualinvoice 2020-11-04 12:59:33 +01:00
Acquisition.pm Bug 26584: Remove unused C4::Acquisition::CloseBasket function 2020-11-05 15:24:20 +01:00
Auth.pm Bug 24786: Default to 'branch default' on auth. 2020-11-06 15:40:00 +01:00
Auth_cas_servers.yaml.sample
Auth_with_cas.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Auth_with_ldap.pm Bug 20443: Use search_with_library_limits for attribute types 2020-03-23 13:49:22 +00:00
Auth_with_shibboleth.pm
AuthoritiesMarc.pm Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
BackgroundJob.pm
Barcodes.pm
Biblio.pm Bug 26641: pass the MARC field as an argument to link_bibs_to_authorities.pl 2020-11-04 12:59:34 +01:00
Boolean.pm
Breeding.pm Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
Budgets.pm
Calendar.pm Bug 25723: (QA follow-up) Handle holiday and exception on same day 2020-07-20 17:45:31 +02:00
Charset.pm
Circulation.pm Bug 23091: Add handling for new lostreturn rules 2020-11-06 15:55:17 +01:00
ClassSortRoutine.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
ClassSource.pm
ClassSplitRoutine.pm
Context.pm Bug 24786: (follow-up) Cache the register_name in the session 2020-11-06 15:40:00 +01:00
Contract.pm
CourseReserves.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Creators.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Debug.pm
Heading.pm
HoldsQueue.pm Bug 26510: Transport Cost Matrix editor doesn't show all data when HoldsQueueSkipClosed is enabled 2020-09-28 10:10:02 +02:00
HTML5Media.pm Bug 20783: Use iframe to embed Youtube videos 2020-06-15 10:32:43 +02:00
ImportBatch.pm Bug 26853: Throw a fatal error if import_biblios insert fails 2020-11-03 09:12:38 +01:00
ImportExportFramework.pm
InstallAuth.pm Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
Installer.pm Bug 23895: Move installer file into the mandatory directory 2020-10-14 14:50:07 +02:00
ItemCirculationAlertPreference.pm
Items.pm Bug 20888: (follow-up) 'is not' operator behaves as 'not like' 2020-11-04 12:59:33 +01:00
Koha.pm Bug 16371: Move GetDailyQuote to get_daily_quote 2020-08-13 10:15:33 +02:00
Labels.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Languages.pm Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
Letters.pm Bug 26935: Don't use basket for claimacquisition and claimissues 2020-11-05 15:24:20 +01:00
Linker.pm
Log.pm Bug 23632: Remove C4::Logs::GetLogs 2020-08-18 15:45:48 +02:00
MarcModificationTemplates.pm Bug 24840: Replace DateTime->now with dt_from_string 2020-04-08 11:54:23 +01:00
Matcher.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Members.pm Bug 14708: Skip AnonymousPatron in GetBorrowersToExpunge 2020-11-06 09:40:25 +01:00
Message.pm
NewsChannels.pm Bug 21066: Rename publicationdate with published_on 2020-09-02 15:35:08 +02:00
Output.pm Bug 11994: OpenSearch plugins needs to be delivered with Content-Type application/opensearchdescription+xml 2020-06-24 14:31:37 +02:00
Overdues.pm Bug 25127: Use Koha::Number::Price->round for comparison 2020-05-01 15:44:55 +01:00
Patroncards.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Record.pm Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
Reports.pm
Reserves.pm Bug 24412: Attach waiting reserve to desk 2020-11-06 15:55:17 +01:00
Ris.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
RotatingCollections.pm Bug 12556: (QA follow-up) Fix QA Script failures 2020-10-14 14:50:07 +02:00
Scheduler.pm
Scrubber.pm
Search.pm Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
Serials.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Service.pm Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
ShelfBrowser.pm Bug 26673: Remove shebangs from Perl modules 2020-10-26 00:14:42 +01:00
SMS.pm
SocialData.pm
Stats.pm Bug 24151: Copy info to the pseudonymized table when a transaction is done 2020-07-20 15:17:42 +02:00
Suggestions.pm Bug 25033: Remove CountSuggestion 2020-08-25 11:31:41 +02:00
Tags.pm
Templates.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
TmplToken.pm
TmplTokenType.pm
TTParser.pm Bug 26673: Remove #!/usr/bin/env perl from .pm modules too 2020-10-26 00:14:42 +01:00
UsageStats.pm Bug 23420: (QA follow-up) Remove more AllowPurchaseSuggestionBranchChoice code 2020-10-09 12:22:01 +02:00
XISBN.pm Bug 26270: Fix ThingISBN after a change in behaviour 2020-08-24 10:12:47 +02:00
XSLT.pm Bug 24052: Rename XSLT_Handler 2020-03-24 10:42:23 +00:00