Bug 26922: Regression tests
[koha.git] / Koha / Acquisition / Bookseller.pm
blob26a0a4321f7e762bc65e0378ad6528a924755204
1 package Koha::Acquisition::Bookseller;
3 # This file is part of Koha.
5 # Koha is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 3 of the License, or
8 # (at your option) any later version.
10 # Koha is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with Koha; if not, see <http://www.gnu.org/licenses>.
18 use Modern::Perl;
20 use Koha::Acquisition::Bookseller::Contacts;
21 use Koha::Subscriptions;
23 use base qw( Koha::Object );
25 =head1 NAME
27 Koha::Acquisition::Bookseller Object class
29 =head1 API
31 =head2 Class methods
33 =head3 baskets
35 my $vendor = Koha::Acquisition::Booksellers->find( $id );
36 my @baskets = $vendor->baskets();
38 Returns the list of baskets for the vendor
40 =cut
42 sub baskets {
43 my ( $self ) = @_;
44 my $baskets_rs = $self->_result->aqbaskets;
45 return Koha::Acquisition::Baskets->_new_from_dbic( $baskets_rs );
48 =head3 contacts
50 my $vendor = Koha::Acquisition::Booksellers->find( $id );
51 my @contacts = $vendor->contacts();
53 Returns the list of contacts for the vendor
55 =cut
57 sub contacts {
58 my ($self) = @_;
59 my $contacts_rs = $self->_result->aqcontacts;
60 return Koha::Acquisition::Bookseller::Contacts->_new_from_dbic( $contacts_rs );
63 =head3 subscriptions
65 my $vendor = Koha::Acquisition::Booksellers->find( $id );
66 my @subscriptions = $vendor->subscriptions();
68 Returns the list of subscriptions for the vendor
70 =cut
72 sub subscriptions {
73 my ($self) = @_;
75 # FIXME FK missing at DB level
76 return Koha::Subscriptions->search( { aqbooksellerid => $self->id } );
79 =head3 to_api_mapping
81 This method returns the mapping for representing a Koha::Acquisition::Bookseller object
82 on the API.
84 =cut
86 sub to_api_mapping {
87 return {
88 listprice => 'list_currency',
89 invoiceprice => 'invoice_currency',
90 gstreg => 'gst',
91 listincgst => 'list_includes_gst',
92 invoiceincgst => 'invoice_includes_gst'
96 =head2 Internal methods
98 =head3 _type
100 =cut
102 sub _type {
103 return 'Aqbookseller';