From 034a2521b85416eb57f33ca0d99166f3993ebc82 Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Wed, 5 Feb 2020 12:19:34 +0000 Subject: [PATCH] Bug 24592: Database Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: David Nind Signed-off-by: Joonas Kylmälä --- installer/data/mysql/account_credit_types.sql | 2 +- installer/data/mysql/account_offset_types.sql | 1 + .../data/mysql/atomicupdate/bug_24592.perl | 49 +++++++++++++++++++ 3 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 installer/data/mysql/atomicupdate/bug_24592.perl diff --git a/installer/data/mysql/account_credit_types.sql b/installer/data/mysql/account_credit_types.sql index 5cf04abb15..70a51629d8 100644 --- a/installer/data/mysql/account_credit_types.sql +++ b/installer/data/mysql/account_credit_types.sql @@ -4,7 +4,7 @@ INSERT INTO account_credit_types ( code, description, can_be_added_manually, is_ ('FORGIVEN', 'Forgiven', 1, 1), ('CREDIT', 'Credit', 1, 1), ('REFUND', 'A refund applied to a patrons fine', 0, 1), -('LOST_RETURN', 'Lost item fee refund', 0, 1), +('LOST_FOUND', 'Lost item fee refund', 0, 1), ('PURCHASE', 'Purchase', 0, 1); INSERT INTO authorised_values (category,authorised_value,lib) VALUES ('PAYMENT_TYPE','CASH','Cash'); diff --git a/installer/data/mysql/account_offset_types.sql b/installer/data/mysql/account_offset_types.sql index 5863c2341c..f0cb80ece9 100644 --- a/installer/data/mysql/account_offset_types.sql +++ b/installer/data/mysql/account_offset_types.sql @@ -3,6 +3,7 @@ INSERT INTO account_offset_types ( type ) VALUES ('Payment'), ('Purchase'), ('Lost Item'), +('Lost Item Found'), ('Processing Fee'), ('Manual Credit'), ('Manual Debit'), diff --git a/installer/data/mysql/atomicupdate/bug_24592.perl b/installer/data/mysql/atomicupdate/bug_24592.perl new file mode 100644 index 0000000000..fcfcc067a8 --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_24592.perl @@ -0,0 +1,49 @@ +$DBversion = 'XXX'; # will be replaced by the RM +if( CheckVersion( $DBversion ) ) { + + # Add LOST_FOUND debit type + $dbh->do(qq{ + INSERT IGNORE INTO + account_credit_types ( code, description, can_be_added_manually, is_system ) + VALUES + ('LOST_FOUND', 'Lost item fee refund', 0, 1) + }); + + # Migrate LOST_RETURN to LOST_FOUND + $dbh->do(qq{ + UPDATE + accountlines + SET + credit_type_code = 'LOST_FOUND' + WHERE + credit_type_code = 'LOST_RETURN' + }); + + # Migrate LOST + RETURNED to LOST + FOUND + $dbh->do(qq{ + UPDATE + accountlines + SET + status = 'FOUND' + WHERE + debit_type_code = 'LOST' + AND + status = 'RETURNED' + }); + + # Drop LOST_RETURNED credit type + $dbh->do(qq{ + DELETE FROM account_credit_types WHERE code = 'LOST_RETURN' + }); + + # Add Lost Item Found offset type + $dbh->do(qq{ + INSERT IGNORE INTO + account_offset_types ( type ) + VALUES + ( 'Lost Item Found' ) + }); + + SetVersion( $DBversion ); + print "Upgrade to $DBversion done (Bug 24592 - Update LOST_RETURN to LOST_FOUND)\n"; +} -- 2.17.1