Change some parts about code rules

This commit is contained in:
Raimon Esteve 2017-06-12 23:29:26 +02:00
parent e3ab3cfe26
commit 711d9c662c
12 changed files with 268 additions and 313 deletions

View File

@ -1,15 +1,17 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0"?>
<!-- The COPYRIGHT file at the top level of this repository contains the full
copyright notices and license terms. -->
<tryton> <tryton>
<data> <data>
<record model="ir.ui.view" id="aeat_sii_tax_form_view"> <record model="ir.ui.view" id="aeat_sii_tax_form_view">
<field name="model">account.tax</field> <field name="model">account.tax</field>
<field name="inherit" ref="account.tax_view_form"/> <field name="inherit" ref="account.tax_view_form"/>
<field name="name">tax_form</field> <field name="name">tax_form</field>
</record> </record>
<record model="ir.ui.view" id="aeat_sii_template_tax_form_view"> <record model="ir.ui.view" id="aeat_sii_template_tax_form_view">
<field name="model">account.tax.template</field> <field name="model">account.tax.template</field>
<field name="inherit" ref="account.tax_template_view_form"/> <field name="inherit" ref="account.tax_template_view_form"/>
<field name="name">template_tax_form</field> <field name="name">template_tax_form</field>
</record> </record>
</data> </data>
</tryton> </tryton>

32
aeat.py
View File

@ -1,14 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# The COPYRIGHT file at the top level of this repository contains the full # The COPYRIGHT file at the top level of this repository contains the full
# copyright notices and license terms. # copyright notices and license terms.
__all__ = [
'SIIReport',
'SIIReportLine',
'IssuedTrytonInvoiceMapper',
'RecievedTrytonInvoiceMapper',
]
import unicodedata import unicodedata
from logging import getLogger from logging import getLogger
from decimal import Decimal from decimal import Decimal
@ -24,6 +16,8 @@ from trytond.pyson import Eval
from trytond.pool import Pool from trytond.pool import Pool
from trytond.transaction import Transaction from trytond.transaction import Transaction
__all__ = ['SIIReport', 'SIIReportLine',
'IssuedTrytonInvoiceMapper', 'RecievedTrytonInvoiceMapper']
_logger = getLogger(__name__) _logger = getLogger(__name__)
_ZERO = Decimal('0.0') _ZERO = Decimal('0.0')
@ -253,24 +247,20 @@ class SIIReport(Workflow, ModelSQL, ModelView):
'required': Eval('state').in_(['confirmed', 'done']), 'required': Eval('state').in_(['confirmed', 'done']),
'readonly': ~Eval('state').in_(['draft', 'confirmed']), 'readonly': ~Eval('state').in_(['draft', 'confirmed']),
}, depends=['state']) }, depends=['state'])
period = fields.Many2One('account.period', 'Period', required=True, period = fields.Many2One('account.period', 'Period', required=True,
domain=[('fiscalyear', '=', Eval('fiscalyear'))], domain=[('fiscalyear', '=', Eval('fiscalyear'))],
states={ states={
'readonly': Eval('state') != 'draft', 'readonly': Eval('state') != 'draft',
}, depends=['state', 'fiscalyear']) }, depends=['state', 'fiscalyear'])
operation_type = fields.Selection(COMMUNICATION_TYPE, 'Operation Type', operation_type = fields.Selection(COMMUNICATION_TYPE, 'Operation Type',
required=True, required=True,
states={ states={
'readonly': ~Eval('state').in_(['draft', 'confirmed']), 'readonly': ~Eval('state').in_(['draft', 'confirmed']),
}, depends=['state']) }, depends=['state'])
book = fields.Selection(BOOK_KEY, 'Book', required=True, book = fields.Selection(BOOK_KEY, 'Book', required=True,
states={ states={
'readonly': ~Eval('state').in_(['draft', 'confirmed']), 'readonly': ~Eval('state').in_(['draft', 'confirmed']),
}, depends=['state']) }, depends=['state'])
state = fields.Selection([ state = fields.Selection([
('draft', 'Draft'), ('draft', 'Draft'),
('confirmed', 'Confirmed'), ('confirmed', 'Confirmed'),
@ -281,16 +271,11 @@ class SIIReport(Workflow, ModelSQL, ModelView):
communication_state = fields.Selection(AEAT_COMMUNICATION_STATE, communication_state = fields.Selection(AEAT_COMMUNICATION_STATE,
'Communication State', readonly=True) 'Communication State', readonly=True)
csv = fields.Char('CSV', readonly=True)
csv = fields.Char(
'CSV', readonly=True
)
version = fields.Selection([ version = fields.Selection([
('0.7', '0.7'), ('0.7', '0.7'),
], 'Version', required=True, states={ ], 'Version', required=True, states={
}, depends=['state']) }, depends=['state'])
lines = fields.One2Many('aeat.sii.report.lines', 'report', lines = fields.One2Many('aeat.sii.report.lines', 'report',
'Lines', states={ 'Lines', states={
'readonly': ~Eval('state').in_(['draft']), 'readonly': ~Eval('state').in_(['draft']),
@ -322,7 +307,6 @@ class SIIReport(Workflow, ModelSQL, ModelView):
Eval('operation_type').in_(['A0', 'A1'])), Eval('operation_type').in_(['A0', 'A1'])),
} }
}) })
cls._transitions |= set(( cls._transitions |= set((
('draft', 'confirmed'), ('draft', 'confirmed'),
('draft', 'cancelled'), ('draft', 'cancelled'),
@ -697,9 +681,8 @@ class BaseTrytonInvoiceMapper(object):
]) ])
class IssuedTrytonInvoiceMapper( class IssuedTrytonInvoiceMapper(mapping.IssuedInvoiceMapper,
mapping.IssuedInvoiceMapper, BaseTrytonInvoiceMapper BaseTrytonInvoiceMapper):
):
""" """
Tryton Issued Invoice to AEAT mapper Tryton Issued Invoice to AEAT mapper
""" """
@ -707,9 +690,8 @@ class IssuedTrytonInvoiceMapper(
specialkey_or_trascendence = attrgetter('sii_issued_key') specialkey_or_trascendence = attrgetter('sii_issued_key')
class RecievedTrytonInvoiceMapper( class RecievedTrytonInvoiceMapper(mapping.RecievedInvoiceMapper,
mapping.RecievedInvoiceMapper, BaseTrytonInvoiceMapper BaseTrytonInvoiceMapper):
):
""" """
Tryton Recieved Invoice to AEAT mapper Tryton Recieved Invoice to AEAT mapper
""" """

360
aeat.xml
View File

@ -1,201 +1,197 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0"?>
<!-- The COPYRIGHT file at the top level of this repository contains the full <!-- The COPYRIGHT file at the top level of this repository contains the full
copyright notices and license terms. --> copyright notices and license terms. -->
<tryton> <tryton>
<data> <data>
<record model="res.group" id="group_aeat_sii_admin">
<field name="name">AEAT SII Administration</field>
</record>
<record model="res.user-res.group" id="user_admin_group_aeat_sii_admin">
<field name="user" ref="res.user_admin"/>
<field name="group" ref="group_aeat_sii_admin"/>
</record>
<record model="res.user-res.group" id="user_trigger_group_aeat_sii_admin">
<field name="user" ref="res.user_trigger"/>
<field name="group" ref="group_aeat_sii_admin"/>
</record>
<record model="res.group" id="group_aeat_sii_admin"> <record model="ir.ui.view" id="aeat_sii_report_form_view">
<field name="name">AEAT SII Administration</field> <field name="model">aeat.sii.report</field>
</record> <field name="type">form</field>
<record model="res.user-res.group" id="user_admin_group_aeat_sii_admin"> <field name="name">sii_report_form</field>
<field name="user" ref="res.user_admin"/> </record>
<field name="group" ref="group_aeat_sii_admin"/> <record model="ir.ui.view" id="aeat_sii_report_tree_view">
</record> <field name="model">aeat.sii.report</field>
<record model="res.user-res.group" id="user_trigger_group_aeat_sii_admin"> <field name="type">tree</field>
<field name="user" ref="res.user_trigger"/> <field name="name">sii_report_list</field>
<field name="group" ref="group_aeat_sii_admin"/> </record>
</record> <record model="ir.action.act_window" id="act_aeat_sii_report">
<field name="name">SII Report</field>
<field name="res_model">aeat.sii.report</field>
<field name="search_value"></field>
</record>
<record model="ir.action.act_window.view" id="act_aeat_sii_report_view1">
<field name="sequence" eval="10"/>
<field name="view" ref="aeat_sii_report_tree_view"/>
<field name="act_window" ref="act_aeat_sii_report"/>
</record>
<record model="ir.action.act_window.view" id="act_aeat_sii_report_view2">
<field name="sequence" eval="20"/>
<field name="view" ref="aeat_sii_report_form_view"/>
<field name="act_window" ref="act_aeat_sii_report"/>
</record>
<record model="ir.model.access" id="access_aeat_sii_report">
<field name="model" search="[('model', '=', 'aeat.sii.report')]"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/>
<field name="perm_delete" eval="False"/>
</record>
<record model="ir.model.access" id="access_aeat_sii_report_admin">
<field name="model" search="[('model', '=', 'aeat.sii.report')]"/>
<field name="group" ref="group_aeat_sii_admin"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="True"/>
<field name="perm_delete" eval="True"/>
</record>
<record model="ir.ui.view" id="aeat_sii_report_form_view"> <!-- aeat.sii.report.issued -->
<field name="model">aeat.sii.report</field> <record model="ir.ui.view" id="aeat_sii_report_line_form_view">
<field name="type">form</field> <field name="model">aeat.sii.report.lines</field>
<field name="name">sii_report_form</field> <field name="type">form</field>
</record> <field name="name">sii_report_lines_form</field>
<record model="ir.ui.view" id="aeat_sii_report_tree_view"> </record>
<field name="model">aeat.sii.report</field>
<field name="type">tree</field> <record model="ir.ui.view" id="aeat_sii_report_line_tree_view">
<field name="name">sii_report_list</field> <field name="model">aeat.sii.report.lines</field>
</record> <field name="type">tree</field>
<record model="ir.action.act_window" id="act_aeat_sii_report"> <field name="name">sii_report_lines_list</field>
<field name="name">SII Report</field> </record>
<field name="res_model">aeat.sii.report</field>
<field name="search_value"></field> <record model="ir.action.act_window" id="act_aeat_sii_report_line">
</record> <field name="name">AEAT SII Report Lines</field>
<record model="ir.action.act_window.view" id="act_aeat_sii_report_view1"> <field name="res_model">aeat.sii.report.lines</field>
<field name="sequence" eval="10"/> <field name="search_value"></field>
<field name="view" ref="aeat_sii_report_tree_view"/> </record>
<field name="act_window" ref="act_aeat_sii_report"/> <record model="ir.action.act_window.view" id="act_aeat_sii_report_line_view1">
</record> <field name="sequence" eval="10"/>
<record model="ir.action.act_window.view" id="act_aeat_sii_report_view2"> <field name="view" ref="aeat_sii_report_line_tree_view"/>
<field name="sequence" eval="20"/> <field name="act_window" ref="act_aeat_sii_report_line"/>
<field name="view" ref="aeat_sii_report_form_view"/> </record>
<field name="act_window" ref="act_aeat_sii_report"/> <record model="ir.action.act_window.view" id="act_aeat_sii_report_line_view2">
</record> <field name="sequence" eval="20"/>
<record model="ir.model.access" id="access_aeat_sii_report"> <field name="view" ref="aeat_sii_report_line_form_view"/>
<field name="model" search="[('model', '=', 'aeat.sii.report')]"/> <field name="act_window" ref="act_aeat_sii_report_line"/>
<field name="perm_read" eval="True"/> </record>
<field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/> <record model="ir.model.access" id="access_aeat_sii_report_line">
<field name="perm_delete" eval="False"/> <field name="model" search="[('model', '=', 'aeat.sii.report.lines')]"/>
</record> <field name="perm_read" eval="True"/>
<record model="ir.model.access" id="access_aeat_sii_report_admin"> <field name="perm_write" eval="False"/>
<field name="model" search="[('model', '=', 'aeat.sii.report')]"/> <field name="perm_create" eval="False"/>
<field name="group" ref="group_aeat_sii_admin"/> <field name="perm_delete" eval="False"/>
<field name="perm_read" eval="True"/> </record>
<field name="perm_write" eval="True"/> <record model="ir.model.access" id="access_aeat_sii_report_line_admin">
<field name="perm_create" eval="True"/> <field name="model" search="[('model', '=', 'aeat.sii.report.lines')]"/>
<field name="perm_delete" eval="True"/> <field name="group" ref="group_aeat_sii_admin"/>
</record> <field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="True"/>
<field name="perm_delete" eval="True"/>
</record>
<record model="ir.rule.group" id="rule_group_sii_report">
<field name="model" search="[('model', '=', 'aeat.sii.report')]"/>
<field name="global_p" eval="True"/>
</record>
<record model="ir.rule" id="rule_sii_report1">
<field name="domain" eval="[('company', '=', Eval('user' ,{}).get('company', None))]" pyson="1" />
<field name="rule_group" ref="rule_group_sii_report"/>
</record>
<record model="ir.rule.group" id="rule_group_sii_report_line">
<field name="model" search="[('model', '=', 'aeat.sii.report.lines')]"/>
<field name="global_p" eval="True"/>
</record>
<record model="ir.rule" id="rule_sii_report_line1">
<field name="domain" eval="[('company', '=',Eval('user', {}).get('company', None))]" pyson="1"/>
<field name="rule_group" ref="rule_group_sii_report_line"/>
</record>
<!-- aeat.sii.report.issued --> <record model="ir.model.button" id="load_invoices_button">
<record model="ir.ui.view" id="aeat_sii_report_line_form_view"> <field name="name">load_invoices</field>
<field name="model">aeat.sii.report.lines</field> <field name="model" search="[('model', '=', 'aeat.sii.report')]"/>
<field name="type">form</field> </record>
<field name="name">sii_report_lines_form</field>
</record>
<record model="ir.ui.view" id="aeat_sii_report_line_tree_view"> <record model="ir.model.button-res.group"
<field name="model">aeat.sii.report.lines</field> id="load_invoices_admin">
<field name="type">tree</field> <field name="button" ref="load_invoices_button"/>
<field name="name">sii_report_lines_list</field> <field name="group" ref="group_aeat_sii_admin"/>
</record> </record>
<record model="ir.action.act_window" id="act_aeat_sii_report_line">
<field name="name">AEAT SII Report Lines</field>
<field name="res_model">aeat.sii.report.lines</field>
<field name="search_value"></field>
</record>
<record model="ir.action.act_window.view" id="act_aeat_sii_report_line_view1">
<field name="sequence" eval="10"/>
<field name="view" ref="aeat_sii_report_line_tree_view"/>
<field name="act_window" ref="act_aeat_sii_report_line"/>
</record>
<record model="ir.action.act_window.view" id="act_aeat_sii_report_line_view2">
<field name="sequence" eval="20"/>
<field name="view" ref="aeat_sii_report_line_form_view"/>
<field name="act_window" ref="act_aeat_sii_report_line"/>
</record>
<record model="ir.model.access" id="access_aeat_sii_report_line"> <menuitem id="menu_aeat_sii_report_menu"
<field name="model" search="[('model', '=', 'aeat.sii.report.lines')]"/> sequence="999" parent="account.menu_reporting"
<field name="perm_read" eval="True"/> name="AEAT SII"/>
<field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/>
<field name="perm_delete" eval="False"/>
</record>
<record model="ir.model.access" id="access_aeat_sii_report_line_admin">
<field name="model" search="[('model', '=', 'aeat.sii.report.lines')]"/>
<field name="group" ref="group_aeat_sii_admin"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="True"/>
<field name="perm_delete" eval="True"/>
</record>
<record model="ir.rule.group" id="rule_group_sii_report"> <menuitem action="act_aeat_sii_report" id="menu_aeat_sii_report"
<field name="model" search="[('model', '=', 'aeat.sii.report')]"/> parent="menu_aeat_sii_report_menu" sequence="999"
<field name="global_p" eval="True"/> name="AEAT SII Report"/>
</record>
<record model="ir.rule" id="rule_sii_report1">
<field name="domain" eval="[('company', '=', Eval('user' ,{}).get('company', None))]" pyson="1" />
<field name="rule_group" ref="rule_group_sii_report"/>
</record>
<record model="ir.rule.group" id="rule_group_sii_report_line"> <record model="ir.action.act_window" id="act_aeat_sii_issued_report">
<field name="model" search="[('model', '=', 'aeat.sii.report.lines')]"/> <field name="name">SII Report Issued</field>
<field name="global_p" eval="True"/> <field name="res_model">aeat.sii.report</field>
</record> <field name="domain" eval="[('book', '=', 'E')]" pyson="1"/>
<record model="ir.rule" id="rule_sii_report_line1"> <field name="search_value"></field>
<field name="domain" eval="[('company', '=',Eval('user', {}).get('company', None))]" pyson="1"/> </record>
<field name="rule_group" ref="rule_group_sii_report_line"/> <menuitem action="act_aeat_sii_issued_report"
</record> id="menu_aeat_sii_report_issued"
parent="menu_aeat_sii_report_menu" sequence="10"
name="AEAT SII Report Issued"/>
<record model="ir.action.act_window" id="act_aeat_sii_invest_report">
<field name="name">SII Report Invest</field>
<field name="res_model">aeat.sii.report</field>
<field name="domain" eval="[('book', '=', 'I')]" pyson="1"/>
<field name="search_value"></field>
</record>
<menuitem action="act_aeat_sii_invest_report"
id="menu_aeat_sii_report_invest"
parent="menu_aeat_sii_report_menu" sequence="10"
name="AEAT SII Report Invest"/>
<record model="ir.model.button" id="load_invoices_button"> <record model="ir.action.act_window" id="act_aeat_sii_received_report">
<field name="name">load_invoices</field> <field name="name">SII Report Received</field>
<field name="model" search="[('model', '=', 'aeat.sii.report')]"/> <field name="res_model">aeat.sii.report</field>
</record> <field name="domain" eval="[('book', '=', 'R')]" pyson="1"/>
<record model="ir.model.button-res.group" <field name="search_value"></field>
id="load_invoices_admin"> </record>
<field name="button" ref="load_invoices_button"/> <menuitem action="act_aeat_sii_received_report"
<field name="group" ref="group_aeat_sii_admin"/> id="menu_aeat_sii_report_received"
</record> parent="menu_aeat_sii_report_menu" sequence="10"
name="AEAT SII Report Received"/>
<record model="ir.action.act_window" id="act_aeat_sii_intra_report">
<field name="name">SII Report Intracommunity</field>
<field name="res_model">aeat.sii.report</field>
<field name="domain" eval="[('book', '=', 'U')]" pyson="1"/>
<field name="search_value"></field>
</record>
<menuitem action="act_aeat_sii_intra_report"
id="menu_aeat_sii_report_intra"
parent="menu_aeat_sii_report_menu" sequence="10"
name="AEAT SII Report Intracommunity"/>
<menuitem id="menu_aeat_sii_report_menu" <record model="ir.action.act_window" id="act_aeat_sii_report_lines">
sequence="999" parent="account.menu_reporting" <field name="name">SII Report Lines</field>
name="AEAT SII"/> <field name="res_model">aeat.sii.report.lines</field>
</record>
<menuitem action="act_aeat_sii_report" id="menu_aeat_sii_report" <menuitem action="act_aeat_sii_report_lines"
parent="menu_aeat_sii_report_menu" sequence="999" id="menu_aeat_sii_report"
name="AEAT SII Report"/> parent="menu_aeat_sii_report_menu" sequence="10"
name="AEAT SII Report Lines"/>
<record model="ir.action.act_window" id="act_aeat_sii_issued_report"> </data>
<field name="name">SII Report Issued</field>
<field name="res_model">aeat.sii.report</field>
<field name="domain" eval="[('book', '=', 'E')]" pyson="1"/>
<field name="search_value"></field>
</record>
<menuitem action="act_aeat_sii_issued_report"
id="menu_aeat_sii_report_issued"
parent="menu_aeat_sii_report_menu" sequence="10"
name="AEAT SII Report Issued"/>
<record model="ir.action.act_window" id="act_aeat_sii_invest_report">
<field name="name">SII Report Invest</field>
<field name="res_model">aeat.sii.report</field>
<field name="domain" eval="[('book', '=', 'I')]" pyson="1"/>
<field name="search_value"></field>
</record>
<menuitem action="act_aeat_sii_invest_report"
id="menu_aeat_sii_report_invest"
parent="menu_aeat_sii_report_menu" sequence="10"
name="AEAT SII Report Invest"/>
<record model="ir.action.act_window" id="act_aeat_sii_received_report">
<field name="name">SII Report Received</field>
<field name="res_model">aeat.sii.report</field>
<field name="domain" eval="[('book', '=', 'R')]" pyson="1"/>
<field name="search_value"></field>
</record>
<menuitem action="act_aeat_sii_received_report"
id="menu_aeat_sii_report_received"
parent="menu_aeat_sii_report_menu" sequence="10"
name="AEAT SII Report Received"/>
<record model="ir.action.act_window" id="act_aeat_sii_intra_report">
<field name="name">SII Report Intracommunity</field>
<field name="res_model">aeat.sii.report</field>
<field name="domain" eval="[('book', '=', 'U')]" pyson="1"/>
<field name="search_value"></field>
</record>
<menuitem action="act_aeat_sii_intra_report"
id="menu_aeat_sii_report_intra"
parent="menu_aeat_sii_report_menu" sequence="10"
name="AEAT SII Report Intracommunity"/>
<record model="ir.action.act_window" id="act_aeat_sii_report_lines">
<field name="name">SII Report Lines</field>
<field name="res_model">aeat.sii.report.lines</field>
</record>
<menuitem action="act_aeat_sii_report_lines"
id="menu_aeat_sii_report"
parent="menu_aeat_sii_report_menu" sequence="10"
name="AEAT SII Report Lines"/>
</data>
</tryton> </tryton>

View File

@ -1,6 +1,5 @@
# The COPYRIGHT file at the top level of this repository contains # The COPYRIGHT file at the top level of this repository contains
# the full copyright notices and license terms. # the full copyright notices and license terms.
from logging import getLogger from logging import getLogger
from contextlib import contextmanager from contextlib import contextmanager
from tempfile import NamedTemporaryFile from tempfile import NamedTemporaryFile
@ -20,6 +19,11 @@ class Company:
__name__ = 'company.company' __name__ = 'company.company'
__metaclass__ = PoolMeta __metaclass__ = PoolMeta
pem_certificate = fields.Binary('PEM Certificate')
encrypted_private_key = fields.Binary('Encrypted Private Key')
private_key = fields.Function(fields.Binary('Private Key'),
'get_private_key', 'set_private_key')
@classmethod @classmethod
def __setup__(cls): def __setup__(cls):
super(Company, cls).__setup__() super(Company, cls).__setup__()
@ -29,22 +33,6 @@ class Company:
'missing_pem_cert': "Missing PEM certificate" 'missing_pem_cert': "Missing PEM certificate"
}) })
pem_certificate = fields.Binary(
'PEM Certificate'
)
encrypted_private_key = fields.Binary(
'Encrypted Private Key'
)
private_key = fields.Function(
fields.Binary(
'Private Key'
),
'get_private_key',
'set_private_key',
)
@classmethod @classmethod
def get_private_key(cls, companies, name=None): def get_private_key(cls, companies, name=None):
converter = buffer converter = buffer

View File

@ -3,64 +3,62 @@
copyright notices and license terms. --> copyright notices and license terms. -->
<tryton> <tryton>
<data> <data>
<record model="ir.ui.view" id="company_view_form">
<field name="model">company.company</field>
<field name="inherit" ref="company.company_view_form"/>
<field name="name">company_form</field>
</record>
<record model="ir.ui.view" id="company_view_form"> <record model="ir.model.field.access" id="access_company_privatekey">
<field name="model">company.company</field> <field name="field"
<field name="inherit" ref="company.company_view_form"/> search="[('name', '=', 'private_key'),('model.model', '=', 'company.company')]"/>
<field name="name">company_form</field> <field name="perm_read" eval="False"/>
</record> <field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/>
<record model="ir.model.field.access" id="access_company_privatekey"> <field name="perm_delete" eval="False"/>
<field name="field" </record>
search="[('name', '=', 'private_key'),('model.model', '=', 'company.company')]"/> <record model="ir.model.field.access" id="access_company_encryptedprivatekey">
<field name="perm_read" eval="False"/> <field name="field"
<field name="perm_write" eval="False"/> search="[('name', '=', 'encrypted_private_key'),('model.model', '=', 'company.company')]"/>
<field name="perm_create" eval="False"/> <field name="perm_read" eval="False"/>
<field name="perm_delete" eval="False"/> <field name="perm_write" eval="False"/>
</record> <field name="perm_create" eval="False"/>
<record model="ir.model.field.access" id="access_company_encryptedprivatekey"> <field name="perm_delete" eval="False"/>
<field name="field" </record>
search="[('name', '=', 'encrypted_private_key'),('model.model', '=', 'company.company')]"/> <record model="ir.model.field.access" id="access_company_certificate">
<field name="perm_read" eval="False"/> <field name="field"
<field name="perm_write" eval="False"/> search="[('name', '=', 'pem_certificate'),('model.model', '=', 'company.company')]"/>
<field name="perm_create" eval="False"/> <field name="perm_read" eval="True"/>
<field name="perm_delete" eval="False"/> <field name="perm_write" eval="False"/>
</record> <field name="perm_create" eval="False"/>
<record model="ir.model.field.access" id="access_company_certificate"> <field name="perm_delete" eval="False"/>
<field name="field" </record>
search="[('name', '=', 'pem_certificate'),('model.model', '=', 'company.company')]"/> <record model="ir.model.field.access" id="access_company_privatekey_admin">
<field name="perm_read" eval="True"/> <field name="field"
<field name="perm_write" eval="False"/> search="[('name', '=', 'private_key'),('model.model', '=', 'company.company')]"/>
<field name="perm_create" eval="False"/> <field name="group" ref="group_aeat_sii_admin"/>
<field name="perm_delete" eval="False"/> <field name="perm_read" eval="True"/>
</record> <field name="perm_write" eval="True"/>
<record model="ir.model.field.access" id="access_company_privatekey_admin"> <field name="perm_create" eval="True"/>
<field name="field" <field name="perm_delete" eval="True"/>
search="[('name', '=', 'private_key'),('model.model', '=', 'company.company')]"/> </record>
<field name="group" ref="group_aeat_sii_admin"/> <record model="ir.model.field.access" id="access_company_encryptedprivatekey_admin">
<field name="perm_read" eval="True"/> <field name="field"
<field name="perm_write" eval="True"/> search="[('name', '=', 'encrypted_private_key'),('model.model', '=', 'company.company')]"/>
<field name="perm_create" eval="True"/> <field name="group" ref="group_aeat_sii_admin"/>
<field name="perm_delete" eval="True"/> <field name="perm_read" eval="True"/>
</record> <field name="perm_write" eval="True"/>
<record model="ir.model.field.access" id="access_company_encryptedprivatekey_admin"> <field name="perm_create" eval="True"/>
<field name="field" <field name="perm_delete" eval="True"/>
search="[('name', '=', 'encrypted_private_key'),('model.model', '=', 'company.company')]"/> </record>
<field name="group" ref="group_aeat_sii_admin"/> <record model="ir.model.field.access" id="access_company_certificate_admin">
<field name="perm_read" eval="True"/> <field name="field"
<field name="perm_write" eval="True"/> search="[('name', '=', 'pem_certificate'),('model.model', '=', 'company.company')]"/>
<field name="perm_create" eval="True"/> <field name="group" ref="group_aeat_sii_admin"/>
<field name="perm_delete" eval="True"/> <field name="perm_read" eval="True"/>
</record> <field name="perm_write" eval="True"/>
<record model="ir.model.field.access" id="access_company_certificate_admin"> <field name="perm_create" eval="True"/>
<field name="field" <field name="perm_delete" eval="True"/>
search="[('name', '=', 'pem_certificate'),('model.model', '=', 'company.company')]"/> </record>
<field name="group" ref="group_aeat_sii_admin"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="True"/>
<field name="perm_delete" eval="True"/>
</record>
</data> </data>
</tryton> </tryton>

View File

@ -1,6 +1,5 @@
# The COPYRIGHT file at the top level of this repository contains the full # The COPYRIGHT file at the top level of this repository contains the full
# copyright notices and license terms. # copyright notices and license terms.
from trytond.model import fields from trytond.model import fields
from trytond.pool import Pool, PoolMeta from trytond.pool import Pool, PoolMeta
from trytond.pyson import Eval from trytond.pyson import Eval

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0"?>
<!-- The COPYRIGHT file at the top level of this repository contains the full <!-- The COPYRIGHT file at the top level of this repository contains the full
copyright notices and license terms. --> copyright notices and license terms. -->
<tryton> <tryton>
@ -15,5 +15,4 @@
<field name="name">account_invoice_list</field> <field name="name">account_invoice_list</field>
</record> </record>
</data> </data>
</tryton> </tryton>

View File

@ -1,6 +1,5 @@
# The COPYRIGHT file at the top level of this repository contains the full # The COPYRIGHT file at the top level of this repository contains the full
# copyright notices and license terms. # copyright notices and license terms.
from io import BytesIO from io import BytesIO
from logging import getLogger from logging import getLogger
@ -10,7 +9,6 @@ from OpenSSL.crypto import dump_privatekey
from OpenSSL.crypto import FILETYPE_PEM from OpenSSL.crypto import FILETYPE_PEM
from OpenSSL.crypto import Error as CryptoError from OpenSSL.crypto import Error as CryptoError
from trytond.transaction import Transaction from trytond.transaction import Transaction
from trytond.pool import Pool from trytond.pool import Pool
from trytond.model import ModelView from trytond.model import ModelView

View File

@ -1,9 +1,8 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0"?>
<!-- The COPYRIGHT file at the top level of this repository contains the full <!-- The COPYRIGHT file at the top level of this repository contains the full
copyright notices and license terms. --> copyright notices and license terms. -->
<tryton> <tryton>
<data> <data>
<record model="ir.ui.view" id="load_pkcs12_start_view"> <record model="ir.ui.view" id="load_pkcs12_start_view">
<field name="model">aeat.sii.load_pkcs12.start</field> <field name="model">aeat.sii.load_pkcs12.start</field>
<field name="type">form</field> <field name="type">form</field>
@ -18,6 +17,5 @@
<field name="keyword">form_action</field> <field name="keyword">form_action</field>
<field name="model">company.company,-1</field> <field name="model">company.company,-1</field>
</record> </record>
</data> </data>
</tryton> </tryton>

View File

@ -8,22 +8,18 @@
<field name="company_vat"/> <field name="company_vat"/>
<label name="currency"/> <label name="currency"/>
<field name="currency"/> <field name="currency"/>
<label name="book"/> <label name="book"/>
<field name="book"/> <field name="book"/>
<label name="operation_type"/> <label name="operation_type"/>
<field name="operation_type"/> <field name="operation_type"/>
<label name="version"/> <label name="version"/>
<field name="version"/> <field name="version"/>
<label name="fiscalyear"/> <label name="fiscalyear"/>
<field name="fiscalyear"/> <field name="fiscalyear"/>
<label name="period"/> <label name="period"/>
<field name="period"/> <field name="period"/>
<button string="Load Invoices" name="load_invoices" colspan="2"/> <button string="Load Invoices" name="load_invoices" colspan="2"/>
<field name="lines" colspan="6"/> <field name="lines" colspan="6"/>
<label name="state"/> <label name="state"/>
<field name="state"/> <field name="state"/>
<label name="communication_state"/> <label name="communication_state"/>

View File

@ -2,11 +2,11 @@
<!-- The COPYRIGHT file at the top level of this repository contains the full <!-- The COPYRIGHT file at the top level of this repository contains the full
copyright notices and license terms. --> copyright notices and license terms. -->
<form string="AEAT SII Issued"> <form string="AEAT SII Issued">
<label name="report"/> <label name="report"/>
<field name="report"/> <field name="report"/>
<label name="invoice"/> <label name="invoice"/>
<field name="invoice"/> <field name="invoice"/>
<label name="state"/> <label name="state"/>
<field name="state"/> <field name="state"/>
<field name="communication_msg" colspan="4"/> <field name="communication_msg" colspan="4"/>
</form> </form>

View File

@ -12,7 +12,6 @@ contains the full copyright notices and license terms. -->
<field name="sii_received_key"/> <field name="sii_received_key"/>
<label name="sii_intracomunity_key"/> <label name="sii_intracomunity_key"/>
<field name="sii_intracomunity_key"/> <field name="sii_intracomunity_key"/>
<label name="sii_subjected_key"/> <label name="sii_subjected_key"/>
<field name="sii_subjected_key"/> <field name="sii_subjected_key"/>
<label name="sii_excemption_key"/> <label name="sii_excemption_key"/>