From e7ff231d611df44b71cbd497424b6077b1c88a87 Mon Sep 17 00:00:00 2001 From: Azka Nathan Date: Mon, 25 Sep 2023 15:17:15 +0700 Subject: fix miss compute margin po --- indoteknik_custom/models/purchase_order.py | 5 ++--- indoteknik_custom/models/purchase_order_line.py | 1 + indoteknik_custom/views/purchase_order.xml | 3 +++ 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/indoteknik_custom/models/purchase_order.py b/indoteknik_custom/models/purchase_order.py index 3fb61955..daf8d269 100755 --- a/indoteknik_custom/models/purchase_order.py +++ b/indoteknik_custom/models/purchase_order.py @@ -195,6 +195,7 @@ class PurchaseOrder(models.Model): 'product_qty': order_line.product_qty, 'qty_available_store': qty_available, 'suggest': suggest, + 'so_line_id': order_line.id, } self.order_line.create(values) @@ -258,8 +259,6 @@ class PurchaseOrder(models.Model): self.env['po.sync.price'].create([{ 'order_line_id': line.id, }]) - - def _send_mail(self): output = io.BytesIO() @@ -341,7 +340,7 @@ class PurchaseOrder(models.Model): sum_so_margin = sum_sales_price = sum_margin = 0 for line in self.order_line: sale_order_line = self.env['sale.order.line'].search( - [('product_id', '=', line.product_id.id), + [('id', '=', line.so_line_id.id), ('order_id', '=', line.order_id.sale_order_id.id)], limit=1, order='price_reduce_taxexcl') sum_so_margin += sale_order_line.item_margin sales_price = sale_order_line.price_reduce_taxexcl * sale_order_line.product_uom_qty diff --git a/indoteknik_custom/models/purchase_order_line.py b/indoteknik_custom/models/purchase_order_line.py index 39aeba0f..95e85122 100755 --- a/indoteknik_custom/models/purchase_order_line.py +++ b/indoteknik_custom/models/purchase_order_line.py @@ -29,6 +29,7 @@ class PurchaseOrderLine(models.Model): qty_available_store = fields.Float(string='Available') suggest = fields.Char(string='Suggest') price_vendor = fields.Float(string='Price Vendor', compute='compute_price_vendor') + so_line_id = fields.Many2one('sale.order.line', string='ID SO Line') def compute_price_vendor(self): for line in self: diff --git a/indoteknik_custom/views/purchase_order.xml b/indoteknik_custom/views/purchase_order.xml index 85e08f79..ac423bc5 100755 --- a/indoteknik_custom/views/purchase_order.xml +++ b/indoteknik_custom/views/purchase_order.xml @@ -63,6 +63,9 @@ + + + -- cgit v1.2.3