Browse Source
This patch adds two methods to Koha::Acquisition::Basket: - 'closed': that tells if the basket is closed - 'close': that closes the basket It inherits the behaviour from CloseBasket (as it actually makes sense). It improves CloseBasket by wrapping the action inside a transaction. It uses the $orders->update call with no_trigger as there's no trigger to trigger and the update can be done on a single DB call. A new exceptions file is added for basket-related exceptions. The only specific exception that gets added is Koha::Exceptions::Acquisition::Basket::AlreadyClosed To test: 1. Apply this patches 2. Run: $ kshell k$ prove t/db_dependent/Koha/Acquisition/Basket.t => SUCCESS: Tests pass! 3. Sign off :-D Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>20.11.x
2 changed files with 95 additions and 0 deletions
@ -0,0 +1,47 @@ |
|||||
|
package Koha::Exceptions::Acquisition::Basket; |
||||
|
|
||||
|
# This file is part of Koha. |
||||
|
# |
||||
|
# Koha is free software; you can redistribute it and/or modify it |
||||
|
# under the terms of the GNU General Public License as published by |
||||
|
# the Free Software Foundation; either version 3 of the License, or |
||||
|
# (at your option) any later version. |
||||
|
# |
||||
|
# Koha is distributed in the hope that it will be useful, but |
||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
# GNU General Public License for more details. |
||||
|
# |
||||
|
# You should have received a copy of the GNU General Public License |
||||
|
# along with Koha; if not, see <http://www.gnu.org/licenses>. |
||||
|
|
||||
|
use Modern::Perl; |
||||
|
|
||||
|
use Exception::Class ( |
||||
|
|
||||
|
'Koha::Exceptions::Acquisition::Basket' => { |
||||
|
description => 'Something went wrong!', |
||||
|
}, |
||||
|
'Koha::Exceptions::Acquisition::Basket::AlreadyClosed' => { |
||||
|
isa => 'Koha::Exceptions::Acquisition::Basket', |
||||
|
description => 'Basket is already closed' |
||||
|
} |
||||
|
); |
||||
|
|
||||
|
=head1 NAME |
||||
|
|
||||
|
Koha::Exceptions::Acquisition::Basket - Base class for Basket exceptions |
||||
|
|
||||
|
=head1 Exceptions |
||||
|
|
||||
|
=head2 Koha::Exceptions::Acquisition::Basket |
||||
|
|
||||
|
Generic Nasket exception |
||||
|
|
||||
|
=head2 Koha::Exceptions::Acquisition::Basket::AlreadyClosed |
||||
|
|
||||
|
Exception to be used when an already closed basket is asked to be closed. |
||||
|
|
||||
|
=cut |
||||
|
|
||||
|
1; |
Loading…
Reference in new issue