blob: 2467261af4630089443398f7cf7288677db3f87a (
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
|
from odoo import models, fields
from odoo.exceptions import UserError
class UserCompanyRequest(models.Model):
_name = 'user.company.request'
_rec_name = 'user_id'
user_id = fields.Many2one('res.partner', string='User')
user_company_id = fields.Many2one('res.partner', string='Company')
user_input = fields.Char(string='User Input')
is_approve = fields.Selection([
('approved', 'Approve'),
('rejected', 'Reject'),
], string='Approval')
def write(self, vals):
is_approve = vals.get('is_approve')
if self.is_approve and is_approve:
raise UserError('Tidak dapat mengubah approval yang sudah diisi')
if not self.is_approve and is_approve:
if is_approve == 'approved':
self.user_id.parent_id = self.user_company_id.id
else:
new_company = self.env['res.partner'].create({
'name': self.user_input
})
self.user_id.parent_id = new_company.id
return super(UserCompanyRequest, self).write(vals)
|