# -*- coding: utf-8 -*-

from odoo import models, fields, api


class SgtResPartner(models.Model):
    _inherit = 'res.partner'
    cuentas_count = fields.Integer(compute='calcular_cuentas')

    @api.multi
    def calcular_cuentas(self):
        # Calcular todas las cuentas asociadas a un contribuyente
        self.ensure_one()
        self.cuentas_count = len(self.env['sgt_cuentas'].search([('partner_id', '=', self.id)]))

    @api.multi
    def ver_cuentas(self):
        # Función llamada en la vista, retorna la vista de las cuentas asociadas a un contribuyente.
        self.ensure_one()
        return {
            'name': 'Cuentas Asociadas a {0} {1}'.format((self.display_registro), self.name.encode('utf-8')),
            'create': False,
            'view_mode': 'tree',
            'view_id': False,
            'view_type': 'form',
            'res_model': 'sgt_cuentas',
            'type': 'ir.actions.act_window',
            'target': 'new',
            'domain': [('partner_id', '=', self.id)],
            'context': {},
        }
