summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/res_partner.py
blob: 1695639d4cc48ba3d3e19e6ca3e92c4af78386e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
from odoo import models, fields
from odoo.exceptions import UserError, ValidationError

class GroupPartner(models.Model):
    _name = 'group.partner'

    name = fields.Char(string='Name')

class ResPartner(models.Model):
    _inherit = 'res.partner'

    reference_number = fields.Char(string="Reference Number")
    company_type_id = fields.Many2one('res.partner.company_type', string='Company Type')
    custom_pricelist_id = fields.Many2one('product.pricelist', string='Price Matrix')
    group_partner_id = fields.Many2one('group.partner', string='Group Partner')
    customer_type = fields.Selection([
        ('pkp', 'PKP'),
        ('nonpkp', 'Non PKP')
    ])
    sppkp = fields.Char(string="SPPKP")
    counter = fields.Integer(string="Counter", default=0)

    def get_child_ids(self):
        partner = self.env['res.partner'].search([('id', '=', self.id)], limit=1)
        partner_child_ids = [x['id'] for x in partner.child_ids] + [partner.id]
        if partner.parent_id:
            partner_child_ids += [x['id'] for x in partner.parent_id.child_ids]
            partner_child_ids += [partner.parent_id.id]
        return partner_child_ids

    def unlink(self):
        if self._name == 'res.partner':
            raise UserError('Maaf anda tidak bisa delete contact')