Value mapping hardcoding mechanism

This commit is contained in:
Daniel Möller 2017-05-25 16:30:23 +02:00
parent f70c2e363b
commit 0f433c4e87
2 changed files with 16 additions and 8 deletions

10
aeat.py
View File

@ -623,10 +623,7 @@ class IssuedTrytonInvoiceMapper(mapping.IssuedInvoiceMapper):
serial_number = attrgetter('number')
issue_date = attrgetter('invoice_date')
invoice_kind = attrgetter('sii_operation_key')
@classmethod
def rectified_invoice_kind(cls, invoice):
return 'I'
rectified_invoice_kind = mapping.hardcode('I')
rectified_base = attrgetter('untaxed_amount')
rectified_amount = attrgetter('tax_amount')
total_amount = attrgetter('total_amount')
@ -650,10 +647,7 @@ class RecievedTrytonInvoiceMapper(mapping.RecievedInvoiceMapper):
serial_number = attrgetter('reference')
issue_date = attrgetter('invoice_date')
invoice_kind = attrgetter('sii_operation_key')
@classmethod
def rectified_invoice_kind(cls, invoice):
return 'I'
rectified_invoice_kind = mapping.hardcode('I')
specialkey_or_trascendence = attrgetter('sii_received_key')
description = attrgetter('description')
not_exempt_kind = attrgetter('sii_subjected')

View File

@ -4,6 +4,7 @@ __all__ = [
'build_query_filter',
'IssuedInvoiceMapper',
'RecievedInvoiceMapper',
'hardcode',
]
_DATE_FMT = '%d-%m-%Y'
@ -37,6 +38,19 @@ def get_headers(name=None, vat=None, comm_kind=None, version='0.7'):
}
class _HardcodedValue(object):
def __init__(self, value):
self.value = value
def __call__(self, *args, **kwargs):
return self.value
def hardcode(value):
return _HardcodedValue(value)
class IssuedInvoiceMapper(object):
@classmethod