account-closing/account_fiscal_year_closing/models/account_fiscalyear_closing_template.py

113 lines
3.7 KiB
Python
Raw Normal View History

2023-05-19 08:19:13 +00:00
# Copyright 2016 Tecnativa - Antonio Espinosa
# Copyright 2017 Tecnativa - Pedro M. Baeza
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from flectra import fields, models
class AccountFiscalyearClosingTemplate(models.Model):
_inherit = "account.fiscalyear.closing.abstract"
_name = "account.fiscalyear.closing.template"
_description = "Fiscal year closing template"
name = fields.Char(translate=True)
move_config_ids = fields.One2many(
comodel_name="account.fiscalyear.closing.config.template",
inverse_name="template_id",
string="Moves configuration",
)
chart_template_ids = fields.Many2many(
comodel_name="account.chart.template",
string="Available for",
required=True,
)
class AccountFiscalyearClosingConfigTemplate(models.Model):
_inherit = "account.fiscalyear.closing.config.abstract"
_name = "account.fiscalyear.closing.config.template"
_order = "sequence asc, id asc"
_description = "Fiscal year closing configuration template"
name = fields.Char(translate=True)
template_id = fields.Many2one(
comodel_name="account.fiscalyear.closing.template",
index=True,
readonly=True,
string="Fiscal Year Closing Template",
required=True,
ondelete="cascade",
)
journal_id = fields.Many2one(company_dependent=True)
mapping_ids = fields.One2many(
comodel_name="account.fiscalyear.closing.mapping.template",
inverse_name="template_config_id",
string="Account mappings",
)
closing_type_ids = fields.One2many(
comodel_name="account.fiscalyear.closing.type.template",
inverse_name="template_config_id",
string="Closing types",
)
move_date = fields.Selection(
selection=[
("last_ending", "Last date of the ending period"),
("first_opening", "First date of the opening period"),
],
string="Move date",
default="last_ending",
required=True,
)
_sql_constraints = [
(
"code_uniq",
"unique(code, template_id)",
"Code must be unique per fiscal year closing!",
),
]
class AccountFiscalyearClosingMappingTemplate(models.Model):
_inherit = "account.fiscalyear.closing.mapping.abstract"
_name = "account.fiscalyear.closing.mapping.template"
_description = "Fiscal year closing mapping template"
name = fields.Char(translate=True)
template_config_id = fields.Many2one(
comodel_name="account.fiscalyear.closing.config.template",
index=True,
string="Fiscal year closing config template",
readonly=True,
required=True,
ondelete="cascade",
)
src_accounts = fields.Char(
string="Source accounts",
required=True,
help="Account code pattern for the mapping source accounts",
)
dest_account = fields.Char(
string="Destination account",
help="Account code pattern for the mapping destination account. Only "
"the first match will be considered. If this field is not "
"filled, the performed operation will be to remove any existing "
"balance on the source accounts with an equivalent counterpart "
"in the same account.",
)
class AccountFiscalyearClosingTypeTemplate(models.Model):
_inherit = "account.fiscalyear.closing.type.abstract"
_name = "account.fiscalyear.closing.type.template"
_description = "Fiscal year closing type template"
template_config_id = fields.Many2one(
comodel_name="account.fiscalyear.closing.config.template",
index=True,
string="Fiscal year closing config template",
readonly=True,
required=True,
ondelete="cascade",
)