summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAzka Nathan <darizkyfaz@gmail.com>2024-11-11 13:43:58 +0700
committerAzka Nathan <darizkyfaz@gmail.com>2024-11-11 13:43:58 +0700
commite40f5a21ec251363b3b71d81b7801a782716ca0a (patch)
tree37f5ab3e698edcf6e73b9c9812e9dd2421ac9b88
parent3404e2526fd4d95fc93224fbcfb5ddbfd254dcb5 (diff)
add approval sales manager and marketing manager on rpo
-rw-r--r--indoteknik_custom/models/requisition.py17
-rw-r--r--indoteknik_custom/views/requisition.xml7
2 files changed, 23 insertions, 1 deletions
diff --git a/indoteknik_custom/models/requisition.py b/indoteknik_custom/models/requisition.py
index c4104ec5..e09c9e41 100644
--- a/indoteknik_custom/models/requisition.py
+++ b/indoteknik_custom/models/requisition.py
@@ -22,15 +22,30 @@ class Requisition(models.Model):
requisition_match = fields.One2many('requisition.purchase.match', 'requisition_id', string='Matches', auto_join=True)
sale_order_id = fields.Many2one('sale.order', string='SO', help='harus diisi nomor SO yang ingin digenerate',
domain="[('state', '=', 'sale')]")
+ sales_approve = fields.Boolean(string='Sales Approve', tracking=3, copy=False)
+ merchandise_approve = fields.Boolean(string='Merchandise Approve', tracking=3, copy=False)
@api.model
def create(self, vals):
vals['number'] = self.env['ir.sequence'].next_by_code('requisition') or '0'
result = super(Requisition, self).create(vals)
return result
-
+
+ def button_approve(self):
+ if self.env.user.id not in [377, 19]:
+ raise UserError('Hanya Vita dan Darren Yang Bisa Approve')
+ if self.env.user.id == 377:
+ self.sales_approve = True
+ elif self.env.user.id == 19:
+ if not self.sales_approve:
+ raise UserError('Vita Belum Approve')
+ self.merchandise_approve = True
def create_po_from_requisition(self):
+ if not self.sales_approve:
+ raise UserError('Harus di Approve Vita')
+ if not self.merchandise_approve:
+ raise UserError('Harus di Approve Darren')
if not self.requisition_lines:
raise UserError('Tidak ada Lines, belum bisa create PO')
if self.is_po:
diff --git a/indoteknik_custom/views/requisition.xml b/indoteknik_custom/views/requisition.xml
index b704baaf..a866690d 100644
--- a/indoteknik_custom/views/requisition.xml
+++ b/indoteknik_custom/views/requisition.xml
@@ -50,6 +50,13 @@
<field name="model">requisition</field>
<field name="arch" type="xml">
<form>
+ <header>
+ <button name="button_approve"
+ string="Approve"
+ type="object"
+ class="mr-2 oe_highlight"
+ />
+ </header>
<sheet string="Requisition">
<div class="oe_button_box" name="button_box"/>
<group>