diff --git a/mrp_multi_level/models/mrp_inventory.py b/mrp_multi_level/models/mrp_inventory.py index 75ae6b023..43c44c9fe 100644 --- a/mrp_multi_level/models/mrp_inventory.py +++ b/mrp_multi_level/models/mrp_inventory.py @@ -67,6 +67,12 @@ class MrpInventory(models.Model): inverse_name="mrp_inventory_id", readonly=True, ) + supply_method = fields.Selection( + string="Supply Method", + related="product_mrp_area_id.supply_method", + readonly=True, + store=True, + ) @api.multi def _compute_uom_id(self): diff --git a/mrp_multi_level/views/mrp_inventory_views.xml b/mrp_multi_level/views/mrp_inventory_views.xml index 9903d1ab3..6d51b932a 100644 --- a/mrp_multi_level/views/mrp_inventory_views.xml +++ b/mrp_multi_level/views/mrp_inventory_views.xml @@ -14,6 +14,7 @@ + @@ -51,6 +52,7 @@ name="%(mrp_multi_level.act_mrp_inventory_procure)d" icon="fa-cogs" type="action" attrs="{'invisible':[('to_procure','<=',0.0)]}"/> + @@ -103,6 +105,9 @@ + diff --git a/mrp_multi_level/wizards/mrp_inventory_procure.py b/mrp_multi_level/wizards/mrp_inventory_procure.py index e107a6ba6..54d677e30 100644 --- a/mrp_multi_level/wizards/mrp_inventory_procure.py +++ b/mrp_multi_level/wizards/mrp_inventory_procure.py @@ -19,16 +19,16 @@ class MrpInventoryProcure(models.TransientModel): @api.model def _prepare_item(self, planned_order): return { - 'planned_order_id': planned_order.id, - 'qty': planned_order.mrp_qty - planned_order.qty_released, - 'uom_id': planned_order.mrp_inventory_id.uom_id.id, - 'date_planned': planned_order.due_date, - 'mrp_inventory_id': planned_order.mrp_inventory_id.id, - 'product_id': planned_order.product_id.id, - 'warehouse_id': planned_order.mrp_area_id.warehouse_id.id, - 'location_id': - planned_order.product_mrp_area_id.location_proc_id.id or - planned_order.mrp_area_id.location_id.id, + "planned_order_id": planned_order.id, + "qty": planned_order.mrp_qty - planned_order.qty_released, + "uom_id": planned_order.mrp_inventory_id.uom_id.id, + "date_planned": planned_order.due_date, + "mrp_inventory_id": planned_order.mrp_inventory_id.id, + "product_id": planned_order.product_id.id, + "warehouse_id": planned_order.mrp_area_id.warehouse_id.id, + "location_id": planned_order.product_mrp_area_id.location_proc_id.id + or planned_order.mrp_area_id.location_id.id, + "supply_method": planned_order.product_mrp_area_id.supply_method, } @api.model @@ -126,6 +126,21 @@ class MrpInventoryProcureItem(models.TransientModel): string='Location', comodel_name='stock.location', ) + planned_order_id = fields.Many2one(comodel_name="mrp.planned.order") + product_id = fields.Many2one(string="Product", comodel_name="product.product") + warehouse_id = fields.Many2one(string="Warehouse", comodel_name="stock.warehouse") + location_id = fields.Many2one(string="Location", comodel_name="stock.location") + supply_method = fields.Selection( + string="Supply Method", + selection=[ + ("buy", "Buy"), + ("none", "Undefined"), + ("manufacture", "Produce"), + ("pull", "Pull From"), + ("push", "Push To"), + ("pull_push", "Pull & Push"), + ], + ) def _prepare_procurement_values(self, group=False): return { diff --git a/mrp_multi_level/wizards/mrp_inventory_procure_views.xml b/mrp_multi_level/wizards/mrp_inventory_procure_views.xml index 482bf5dc8..5002bdb10 100644 --- a/mrp_multi_level/wizards/mrp_inventory_procure_views.xml +++ b/mrp_multi_level/wizards/mrp_inventory_procure_views.xml @@ -23,6 +23,7 @@ +