diff options
| author | Azka Nathan <darizkyfaz@gmail.com> | 2024-09-12 09:46:14 +0700 |
|---|---|---|
| committer | Azka Nathan <darizkyfaz@gmail.com> | 2024-09-12 09:46:14 +0700 |
| commit | 82f0467cd3f014761fd35bd04eecc485ed8addda (patch) | |
| tree | 75611274f899a1b2c38df55f713c4fba668dd950 | |
| parent | 8edde46e16d4d977e84a3681c03d1bfab8591a71 (diff) | |
push
| -rwxr-xr-x | indoteknik_custom/models/sale_order.py | 7 | ||||
| -rwxr-xr-x | indoteknik_custom/views/sale_order.xml | 2 |
2 files changed, 6 insertions, 3 deletions
diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py index d389f6ae..abfbb799 100755 --- a/indoteknik_custom/models/sale_order.py +++ b/indoteknik_custom/models/sale_order.py @@ -113,10 +113,13 @@ class SaleOrder(models.Model): def do_unreserve(self): user_id = self.env.user.id - if user_id != self.user_id.id: + if user_id != self.user_id.id and user_id != self.helper_by_id.id: raise UserError(_("Only the user who created the picking can unreserve it.")) - self.unreserve_id.with_context({'darimana': 'sale.order'}).do_unreserve() + if self.unreserve_id and self.unreserve_id.state == 'assigned': + self.unreserve_id.with_context({'darimana': 'sale.order'}).do_unreserve() + else: + raise UserError(_("Picking not found.")) def _compute_date_kirim(self): for rec in self: diff --git a/indoteknik_custom/views/sale_order.xml b/indoteknik_custom/views/sale_order.xml index 54c01594..68116544 100755 --- a/indoteknik_custom/views/sale_order.xml +++ b/indoteknik_custom/views/sale_order.xml @@ -14,7 +14,7 @@ <button name="do_unreserve" string="Unreserve Picking" type="object" - attrs="{'invisible': [('state', 'not in', ['draft', 'cancel', 'done'])]}" + attrs="{'invisible': [('state', 'in', ['draft', 'cancel', 'done'])]}" /> <button name="sale_order_approve" string="Ask Approval" |
