diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2023-02-24 15:44:15 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2023-02-24 15:44:15 +0700 |
| commit | 029e8fce907060de2a2514b5abc731f4cd9da96e (patch) | |
| tree | 9559eb4bc43178e3fadcce9ef68395c916b1fe9b /indoteknik_custom/models | |
| parent | 63a562d83e9ca64fcd5464e8d63a2a387cc8611a (diff) | |
User company request approve and reject action
Diffstat (limited to 'indoteknik_custom/models')
| -rw-r--r-- | indoteknik_custom/models/user_company_request.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/indoteknik_custom/models/user_company_request.py b/indoteknik_custom/models/user_company_request.py index c69b789c..2467261a 100644 --- a/indoteknik_custom/models/user_company_request.py +++ b/indoteknik_custom/models/user_company_request.py @@ -1,4 +1,5 @@ from odoo import models, fields +from odoo.exceptions import UserError class UserCompanyRequest(models.Model): @@ -12,4 +13,19 @@ class UserCompanyRequest(models.Model): ('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)
\ No newline at end of file |
