package BookPub::Import::Importer::Gardners::Version10;

use strict;

use lib '/app/tools/bookpub/lib';
use base 'BookPub::Import::Importer::Gardners::Version9';

sub _fieldMap {
    {
        dateBegin              => 'O',
        rPurchaseType          => 'J',
        rPriceType             => 'E3',    #Header
        priceTypeQualifierID   => 'E3',    #Header
        rTitle                 => 'B',
        rIsbn13                => 'A',
        rInstitution           => 'N',
        countryCode            => 'M',
        rUnits                 => 'C',
        rListPrice             => 'G',
        rListPriceCurrency     => 'D',
        rPurchasePrice         => 'E',
        rPurchasePriceCurrency => 'D',
        rDiscount              => 'I',
        rRevenue               => 'H',
        currencyCode           => 'D',
        rTaxUnitPrice          => 'F',
        rChannel               => 'P',
        rModel                 => 'J',
    };
}

sub _unverifiedFieldMap {
    {
        # Header
        defaultDateBegin => 'A1',    # Begin date for all items in the file if not explicitly specified in the record
                                     # Data
        priceLessTax     => 'G',
    };
}

sub priceType {
    my $self = shift;
    my $type = $self->_getByFieldName('rPriceType');
    if ( $type =~ /rrp/i ) {
        return 'rrp';
    } else {
        $self->fail("Unexpected priceType: $type");
    }
}

sub priceTypeQualifierID {
    my $self      = shift;
    my $qualifier = $self->_getByFieldName('priceTypeQualifierID');
    if ( $qualifier =~ /institutional/i ) {
        return BookPub::DB::Item::PriceTypeQualifier::kCorporate;    # Library
    } else {
        $self->fail("Unexpected priceTypeQualifier: $qualifier");
    }
}

1;
