Move old search_invoice.* code to very aeat.* files
This commit is contained in:
parent
9855bf8715
commit
50327afa76
|
@ -8,7 +8,6 @@ from . import company
|
|||
from . import load_pkcs12
|
||||
from . import account
|
||||
from . import aeat_mapping
|
||||
from . import search_invoices
|
||||
|
||||
|
||||
def register():
|
||||
|
@ -26,9 +25,9 @@ def register():
|
|||
aeat.SIIReportLineTax,
|
||||
aeat_mapping.IssuedTrytonInvoiceMapper,
|
||||
aeat_mapping.RecievedTrytonInvoiceMapper,
|
||||
search_invoices.StartView,
|
||||
aeat.AddInvoicesStartView,
|
||||
module='aeat_sii', type_='model')
|
||||
Pool.register(
|
||||
load_pkcs12.LoadPKCS12,
|
||||
search_invoices.AddInvoicesWizard,
|
||||
aeat.AddInvoicesWizard,
|
||||
module='aeat_sii', type_='wizard')
|
||||
|
|
77
aeat.py
77
aeat.py
|
@ -10,7 +10,8 @@ from pyAEATsii import service
|
|||
from pyAEATsii import mapping
|
||||
|
||||
from trytond.model import ModelSQL, ModelView, fields, Workflow
|
||||
from trytond.pyson import Eval, Bool
|
||||
from trytond.wizard import Wizard, StateView, StateTransition, Button
|
||||
from trytond.pyson import Eval, Bool, If, Equal
|
||||
from trytond.pool import Pool
|
||||
from trytond.transaction import Transaction
|
||||
from trytond.config import config
|
||||
|
@ -20,6 +21,8 @@ __all__ = [
|
|||
'SIIReport',
|
||||
'SIIReportLine',
|
||||
'SIIReportLineTax',
|
||||
'AddInvoicesStartView',
|
||||
'AddInvoicesWizard',
|
||||
]
|
||||
|
||||
_logger = getLogger(__name__)
|
||||
|
@ -838,3 +841,75 @@ class SIIReportLineTax(ModelSQL, ModelView):
|
|||
surcharge_amount = fields.Numeric('Surcharge Amount', readonly=True)
|
||||
reagyp_rate = fields.Numeric('REAGYP Rate', readonly=True)
|
||||
reagyp_amount = fields.Numeric('REAGYP Amount', readonly=True)
|
||||
|
||||
|
||||
class AddInvoicesStartView(ModelView):
|
||||
'Add Invoices Start View'
|
||||
__name__ = 'aeat.sii.add_invoices.start'
|
||||
|
||||
company = fields.Many2One('company.company', 'Company')
|
||||
period = fields.Many2One('account.period', 'Period')
|
||||
book = fields.Selection(BOOK_KEY, 'Book')
|
||||
operation_type = fields.Selection(COMMUNICATION_TYPE, 'Operation Type')
|
||||
|
||||
invoices = fields.Many2Many(
|
||||
'account.invoice', None, None, 'Invoices',
|
||||
domain=[
|
||||
If(
|
||||
Equal(Eval('book'), 'E'), # issued
|
||||
('type', 'in', ['out_invoice', 'out_credit_note']),
|
||||
If(
|
||||
Equal(Eval('book'), 'R'), # recieved
|
||||
('type', 'in', ['in_invoice', 'in_credit_note']),
|
||||
()
|
||||
)
|
||||
),
|
||||
('state', 'in', ['posted', 'paid']),
|
||||
('company', '=', Eval('company')),
|
||||
('move.period', '=', Eval('period')),
|
||||
# TODO: fix account.invoice `sii_state` searcher performance and
|
||||
# add a clause filtering by `sii_state` for each operation_type
|
||||
],
|
||||
depends=[
|
||||
'company', 'period', 'book',
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
class AddInvoicesWizard(Wizard):
|
||||
'Add Invoices Wizard'
|
||||
__name__ = 'aeat.sii.add_invoices.wizard'
|
||||
|
||||
start = StateView(
|
||||
'aeat.sii.add_invoices.start',
|
||||
'aeat_sii.add_invoices_start_view_form',
|
||||
[
|
||||
Button('Cancel', 'end', 'tryton-cancel'),
|
||||
Button('Add', 'add', 'tryton-ok', default=True),
|
||||
]
|
||||
)
|
||||
add = StateTransition()
|
||||
|
||||
def default_start(self, fields):
|
||||
SIIReport = Pool().get('aeat.sii.report')
|
||||
sii_report = SIIReport(
|
||||
Transaction().context['active_id']
|
||||
)
|
||||
return {
|
||||
'company': sii_report.company.id,
|
||||
'period': sii_report.period.id,
|
||||
'book': sii_report.book,
|
||||
'operation_type': sii_report.operation_type,
|
||||
}
|
||||
|
||||
def transition_add(self):
|
||||
SIIReportLine = Pool().get('aeat.sii.report.lines')
|
||||
report_id = Transaction().context['active_id']
|
||||
SIIReportLine.create([
|
||||
{
|
||||
'report': report_id,
|
||||
'invoice': invoice.id,
|
||||
}
|
||||
for invoice in self.start.invoices
|
||||
])
|
||||
return 'end'
|
||||
|
|
11
aeat.xml
11
aeat.xml
|
@ -170,6 +170,17 @@
|
|||
<field name="group" ref="group_aeat_sii_admin"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="add_invoices_start_view_form">
|
||||
<field name="model">aeat.sii.add_invoices.start</field>
|
||||
<field name="type">form</field>
|
||||
<field name="name">add_invoices_start</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.wizard" id="add_invoices_act_wizard">
|
||||
<field name="name">Add Invoices</field>
|
||||
<field name="wiz_name">aeat.sii.add_invoices.wizard</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.act_window" id="act_aeat_sii_issued_report">
|
||||
<field name="name">SII Report Issued</field>
|
||||
<field name="res_model">aeat.sii.report</field>
|
||||
|
|
|
@ -1,91 +0,0 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# The COPYRIGHT file at the top level of this repository contains the full
|
||||
# copyright notices and license terms.
|
||||
from logging import getLogger
|
||||
|
||||
from trytond.pool import Pool
|
||||
from trytond.transaction import Transaction
|
||||
from trytond.model import ModelView, fields
|
||||
from trytond.wizard import Wizard, StateView, StateTransition, Button
|
||||
from trytond.pyson import Eval, If, Equal
|
||||
|
||||
from .aeat import BOOK_KEY, COMMUNICATION_TYPE
|
||||
|
||||
__all__ = [
|
||||
'StartView',
|
||||
'AddInvoicesWizard',
|
||||
]
|
||||
|
||||
_logger = getLogger(__name__)
|
||||
|
||||
|
||||
class StartView(ModelView):
|
||||
'Add Invoices Start View'
|
||||
__name__ = 'aeat.sii.add_invoices.start'
|
||||
|
||||
company = fields.Many2One('company.company', 'Company')
|
||||
period = fields.Many2One('account.period', 'Period')
|
||||
book = fields.Selection(BOOK_KEY, 'Book')
|
||||
operation_type = fields.Selection(COMMUNICATION_TYPE, 'Operation Type')
|
||||
|
||||
invoices = fields.Many2Many(
|
||||
'account.invoice', None, None, 'Invoices',
|
||||
domain=[
|
||||
If(
|
||||
Equal(Eval('book'), 'E'), # issued
|
||||
('type', 'in', ['out_invoice', 'out_credit_note']),
|
||||
If(
|
||||
Equal(Eval('book'), 'R'), # recieved
|
||||
('type', 'in', ['in_invoice', 'in_credit_note']),
|
||||
()
|
||||
)
|
||||
),
|
||||
('state', 'in', ['posted', 'paid']),
|
||||
('company', '=', Eval('company')),
|
||||
('move.period', '=', Eval('period')),
|
||||
# TODO: fix account.invoice `sii_state` searcher performance and
|
||||
# add a clause filtering by `sii_state` for each operation_type
|
||||
],
|
||||
depends=[
|
||||
'company', 'period', 'book',
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
class AddInvoicesWizard(Wizard):
|
||||
'Add Invoices Wizard'
|
||||
__name__ = 'aeat.sii.add_invoices.wizard'
|
||||
|
||||
start = StateView(
|
||||
'aeat.sii.add_invoices.start',
|
||||
'aeat_sii.add_invoices_start_view_form',
|
||||
[
|
||||
Button('Cancel', 'end', 'tryton-cancel'),
|
||||
Button('Add', 'add', 'tryton-ok', default=True),
|
||||
]
|
||||
)
|
||||
add = StateTransition()
|
||||
|
||||
def default_start(self, fields):
|
||||
SIIReport = Pool().get('aeat.sii.report')
|
||||
sii_report = SIIReport(
|
||||
Transaction().context['active_id']
|
||||
)
|
||||
return {
|
||||
'company': sii_report.company.id,
|
||||
'period': sii_report.period.id,
|
||||
'book': sii_report.book,
|
||||
'operation_type': sii_report.operation_type,
|
||||
}
|
||||
|
||||
def transition_add(self):
|
||||
SIIReportLine = Pool().get('aeat.sii.report.lines')
|
||||
report_id = Transaction().context['active_id']
|
||||
SIIReportLine.create([
|
||||
{
|
||||
'report': report_id,
|
||||
'invoice': invoice.id,
|
||||
}
|
||||
for invoice in self.start.invoices
|
||||
])
|
||||
return 'end'
|
|
@ -1,19 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<!-- The COPYRIGHT file at the top level of this repository contains the full
|
||||
copyright notices and license terms. -->
|
||||
<tryton>
|
||||
<data>
|
||||
|
||||
<record model="ir.ui.view" id="add_invoices_start_view_form">
|
||||
<field name="model">aeat.sii.add_invoices.start</field>
|
||||
<field name="type">form</field>
|
||||
<field name="name">search_invoices_start</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.wizard" id="add_invoices_act_wizard">
|
||||
<field name="name">Add Invoices</field>
|
||||
<field name="wiz_name">aeat.sii.add_invoices.wizard</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</tryton>
|
|
@ -11,7 +11,6 @@ extras_depend:
|
|||
xml:
|
||||
account.xml
|
||||
aeat.xml
|
||||
search_invoices.xml
|
||||
invoice.xml
|
||||
party.xml
|
||||
company.xml
|
||||
|
|
Loading…
Reference in New Issue