From 029e8fce907060de2a2514b5abc731f4cd9da96e Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Fri, 24 Feb 2023 15:44:15 +0700 Subject: User company request approve and reject action --- indoteknik_custom/models/user_company_request.py | 16 ++++++++++++++++ indoteknik_custom/views/user_company_request.xml | 17 ++++++++++++++--- 2 files changed, 30 insertions(+), 3 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 diff --git a/indoteknik_custom/views/user_company_request.xml b/indoteknik_custom/views/user_company_request.xml index 0b787683..2efc1e9b 100644 --- a/indoteknik_custom/views/user_company_request.xml +++ b/indoteknik_custom/views/user_company_request.xml @@ -4,11 +4,17 @@ user.company.request.tree user.company.request - + - + + @@ -24,7 +30,12 @@ - + -- cgit v1.2.3