feat: Re-enable user restrictions for stock picking types and introduce purchase order bypass for confirmation and approval.
This commit is contained in:
parent
fa34513ecc
commit
f914c64c5f
@ -7,3 +7,4 @@ from . import approval_request
|
|||||||
from . import procurement_group
|
from . import procurement_group
|
||||||
from . import stock_move
|
from . import stock_move
|
||||||
from . import report_stock_quantity
|
from . import report_stock_quantity
|
||||||
|
from . import purchase_order
|
||||||
|
|||||||
10
models/purchase_order.py
Normal file
10
models/purchase_order.py
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
from odoo import models
|
||||||
|
|
||||||
|
class PurchaseOrder(models.Model):
|
||||||
|
_inherit = 'purchase.order'
|
||||||
|
|
||||||
|
def button_confirm(self):
|
||||||
|
return super(PurchaseOrder, self.with_context(bypass_user_restriction=True)).button_confirm()
|
||||||
|
|
||||||
|
def button_approve(self, force=False):
|
||||||
|
return super(PurchaseOrder, self.with_context(bypass_user_restriction=True)).button_approve(force=force)
|
||||||
@ -26,15 +26,15 @@ class StockWarehouse(models.Model):
|
|||||||
class StockPickingType(models.Model):
|
class StockPickingType(models.Model):
|
||||||
_inherit = 'stock.picking.type'
|
_inherit = 'stock.picking.type'
|
||||||
|
|
||||||
# @api.model
|
@api.model
|
||||||
# def _search(self, domain, offset=0, limit=None, order=None, **kwargs):
|
def _search(self, domain, offset=0, limit=None, order=None, **kwargs):
|
||||||
# if self.env.context.get('bypass_user_restriction'):
|
if self.env.context.get('bypass_user_restriction'):
|
||||||
# return super()._search(domain, offset=offset, limit=limit, order=order, **kwargs)
|
return super()._search(domain, offset=offset, limit=limit, order=order, **kwargs)
|
||||||
# if not self.env.su and not self.env.user.has_group('base.group_system'):
|
if not self.env.su and not self.env.user.has_group('base.group_system'):
|
||||||
# allowed_ids = get_allowed_ids(self.env, 'res_users_stock_picking_type_rel', 'picking_type_id', self.env.user.id)
|
allowed_ids = get_allowed_ids(self.env, 'res_users_stock_picking_type_rel', 'picking_type_id', self.env.user.id)
|
||||||
# if allowed_ids:
|
if allowed_ids:
|
||||||
# domain = Domain(domain or []) & Domain([('id', 'in', allowed_ids)])
|
domain = Domain(domain or []) & Domain([('id', 'in', allowed_ids)])
|
||||||
# return super()._search(domain, offset=offset, limit=limit, order=order, **kwargs)
|
return super()._search(domain, offset=offset, limit=limit, order=order, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user