summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models
diff options
context:
space:
mode:
Diffstat (limited to 'indoteknik_custom/models')
-rw-r--r--indoteknik_custom/models/user_company_request.py16
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