Tower: upload at_accounting 18.0.1.7 (via marketplace)
This commit is contained in:
45
addons/at_accounting/models/account_account.py
Normal file
45
addons/at_accounting/models/account_account.py
Normal file
@@ -0,0 +1,45 @@
|
||||
import ast
|
||||
from odoo import api, fields, models, _
|
||||
|
||||
|
||||
class AccountAccount(models.Model):
|
||||
_inherit = "account.account"
|
||||
|
||||
def action_open_reconcile(self):
|
||||
self.ensure_one()
|
||||
# Open reconciliation view for this account
|
||||
action_values = self.env['ir.actions.act_window']._for_xml_id('at_accounting.action_move_line_posted_unreconciled')
|
||||
domain = ast.literal_eval(action_values['domain'])
|
||||
domain.append(('account_id', '=', self.id))
|
||||
action_values['domain'] = domain
|
||||
return action_values
|
||||
|
||||
exclude_provision_currency_ids = fields.Many2many('res.currency', relation='account_account_exclude_res_currency_provision', help="Whether or not we have to make provisions for the selected foreign currencies.")
|
||||
budget_item_ids = fields.One2many(comodel_name='account.report.budget.item', inverse_name='account_id') # To use it in the domain when adding accounts from the report
|
||||
|
||||
asset_model_ids = fields.Many2many(
|
||||
'account.asset',
|
||||
domain=[('state', '=', 'model')],
|
||||
help="An asset wil be created for each asset model when this account is used on a vendor bill or a refund",
|
||||
tracking=True,
|
||||
)
|
||||
create_asset = fields.Selection([('no', 'No'), ('draft', 'Create in draft'), ('validate', 'Create and validate')],
|
||||
required=True, default='no', tracking=True)
|
||||
# specify if the account can generate asset depending on it's type. It is used in the account form view
|
||||
can_create_asset = fields.Boolean(compute="_compute_can_create_asset")
|
||||
form_view_ref = fields.Char(compute='_compute_can_create_asset')
|
||||
# decimal quantities are not supported, quantities are rounded to the lower int
|
||||
multiple_assets_per_line = fields.Boolean(string='Multiple Assets per Line', default=False, tracking=True,
|
||||
help="Multiple asset items will be generated depending on the bill line quantity instead of 1 global asset.")
|
||||
|
||||
@api.depends('account_type')
|
||||
def _compute_can_create_asset(self):
|
||||
for record in self:
|
||||
record.can_create_asset = record.account_type in ('asset_fixed', 'asset_non_current')
|
||||
record.form_view_ref = 'at_accountingview_account_asset_form'
|
||||
|
||||
@api.onchange('create_asset')
|
||||
def _onchange_multiple_assets_per_line(self):
|
||||
for record in self:
|
||||
if record.create_asset == 'no':
|
||||
record.multiple_assets_per_line = False
|
||||
Reference in New Issue
Block a user