remove unnecessary keys, make invoice_fields like account.tax fields, adapt on_change to version 4.0

This commit is contained in:
Àngel Àlvarez 2017-06-12 11:34:34 +02:00
parent a256a4d63c
commit f4096f87c1
3 changed files with 16 additions and 22 deletions

View File

@ -43,9 +43,6 @@ BOOK_KEY = [
('I', 'Investment Goods'),
('R', 'Received Invoices'),
('U', 'Particular Intracommunity Operations'),
('F', 'IGIC Issued Invoices'),
('J', 'IGIC Investment Goods'),
('S', 'IGIC Received Invoices'),
]
OPERATION_KEY = [ # L2_EMI - L2_RECI

View File

@ -33,8 +33,8 @@ class Invoice:
states={
'invisible': Eval('type').in_(['out_invoice', 'out_credit_note']),
})
sii_subjected = fields.Selection(IVA_SUBJECTED, 'Subjected')
sii_excemption_cause = fields.Selection(EXCEMPTION_CAUSE,
sii_subjected_key = fields.Selection(IVA_SUBJECTED, 'Subjected')
sii_excemption_key = fields.Selection(EXCEMPTION_CAUSE,
'Excemption Cause')
sii_intracomunity_key = fields.Selection(INTRACOMUNITARY_TYPE,
'SII Intracommunity Key',
@ -51,8 +51,8 @@ class Invoice:
def __setup__(cls):
super(Invoice, cls).__setup__()
cls._check_modify_exclude += ['sii_book_key', 'sii_operation_key',
'sii_received_key', 'sii_issued_key', 'sii_subjected',
'sii_excemption_cause', 'sii_intracomunity_key']
'sii_received_key', 'sii_issued_key', 'sii_subjected_key',
'sii_excemption_key', 'sii_intracomunity_key']
@classmethod
def search_sii_state(cls, name, clause):
@ -107,7 +107,7 @@ class Invoice:
def _credit(self):
res = super(Invoice, self)._credit()
for field in ('sii_book_key', 'sii_issued_key', 'sii_received_key',
'sii_subjected', 'sii_excemption_cause',
'sii_subjected', 'sii_excemption_key',
'sii_intracomunity_key'):
res[field] = getattr(self, field)
@ -115,20 +115,19 @@ class Invoice:
return res
@fields.depends('sii_book_key', 'sii_issued_key', 'sii_received_key',
'sii_subjected', 'sii_excemption_cause', 'sii_intracomunity_key')
'sii_subjected_key', 'sii_excemption_key', 'sii_intracomunity_key')
def _on_change_lines_taxes(self):
res = super(Invoice, self)._on_change_lines_taxes()
super(Invoice, self)._on_change_lines_taxes()
for field in ('sii_book_key', 'sii_issued_key', 'sii_received_key',
'sii_subjected', 'sii_excemption_cause',
'sii_subjected_key', 'sii_excemption_key',
'sii_intracomunity_key'):
if getattr(self, field):
return res
return
tax = self.taxes and self.taxes[0]
if not tax:
return res
return
for field in ('sii_book_key', 'sii_issued_key', 'sii_received_key',
'sii_subjected', 'sii_excemption_cause',
'sii_subjected_key', 'sii_excemption_key',
'sii_intracomunity_key'):
res[field] = getattr(tax, field)
return res
setattr(self, field, getattr(tax.tax, field))

View File

@ -8,18 +8,16 @@ contains the full copyright notices and license terms. -->
<field name="sii_book_key" colspan="3"/>
<label name="sii_operation_key"/>
<field name="sii_operation_key" colspan="3"/>
<label name="sii_subjected"/>
<field name="sii_subjected" colspan="3"/>
<label name="sii_subjected_key"/>
<field name="sii_subjected_key" colspan="3"/>
<label name="sii_issued_key"/>
<field name="sii_issued_key" colspan="3"/>
<label name="sii_received_key"/>
<field name="sii_received_key" colspan="3"/>
<label name="sii_intracomunity_key"/>
<field name="sii_intracomunity_key" colspan="3"/>
<label name="sii_excemption_cause"/>
<field name="sii_excemption_cause" colspan="3"/>
<label name="sii_excemption_key"/>
<field name="sii_excemption_key" colspan="3"/>
<field name="sii_records" colspan="4"/>
<label name="sii_state"/>
<field name="sii_state"/>