diff options
| author | Azka Nathan <darizkyfaz@gmail.com> | 2024-09-13 10:25:03 +0700 |
|---|---|---|
| committer | Azka Nathan <darizkyfaz@gmail.com> | 2024-09-13 10:25:03 +0700 |
| commit | b473179e5adde097bc9ec43ee4566b850937f1ed (patch) | |
| tree | 692846858d335ac67fa3881c390188144f3c2090 /indoteknik_custom/models/approval_unreserve.py | |
| parent | 5c6098158ab0f82437aa24e947a66b78b21b6bd7 (diff) | |
unreserve
Diffstat (limited to 'indoteknik_custom/models/approval_unreserve.py')
| -rw-r--r-- | indoteknik_custom/models/approval_unreserve.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/indoteknik_custom/models/approval_unreserve.py b/indoteknik_custom/models/approval_unreserve.py index a8f9fd3b..8c232d9c 100644 --- a/indoteknik_custom/models/approval_unreserve.py +++ b/indoteknik_custom/models/approval_unreserve.py @@ -22,6 +22,7 @@ class ApprovalUnreserve(models.Model): request_date = fields.Date(string="Request Date", default=fields.Date.today, tracking=True) approved_by = fields.Many2one('res.users', string="Approved By", readonly=True, tracking=True) picking_id = fields.Many2one('stock.picking', string="Picking", tracking=True) + user_id = fields.Many2one('res.users', string="User", readonly=True, tracking=True) rejection_reason = fields.Text(string="Rejection Reason", tracking=True) @api.constrains('picking_id') @@ -40,6 +41,8 @@ class ApprovalUnreserve(models.Model): 'move_id': move.id }) + self.user_id = self.picking_id.sale_id.user_id.id + @api.model def create(self, vals): if vals.get('number', 'New') == 'New': @@ -50,6 +53,9 @@ class ApprovalUnreserve(models.Model): self.write({'state': 'waiting_approval'}) def action_approve(self): + if self.env.user.id != self.user_id.id: + raise UserError("Hanya Sales nya yang bisa approve.") + if self.state != 'waiting_approval': raise UserError("Approval can only be done in 'Waiting for Approval' state") self.write({ @@ -60,6 +66,9 @@ class ApprovalUnreserve(models.Model): self._trigger_unreserve() def action_reject(self, reason): + if self.env.user.id != self.user_id.id: + raise UserError("Hanya Sales nya yang bisa reject.") + if self.state != 'waiting_approval': raise UserError("Rejection can only be done in 'Waiting for Approval' state") self.write({ |
