From 56bb6d2f83a2c8dec98160bed397a26007df7450 Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Fri, 2 Aug 2024 10:51:18 +0700 Subject: fixed test case --- indoteknik_custom/models/sale_order.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py index d6f04607..2a930a73 100755 --- a/indoteknik_custom/models/sale_order.py +++ b/indoteknik_custom/models/sale_order.py @@ -836,7 +836,7 @@ class SaleOrder(models.Model): def calculate_selling_price(self): for order_line in self.order_line: - rec_purchase_price, rec_taxes, rec_vendor_id = order_line._get_purchase_price(order_line.product_id) + rec_purchase_price, rec_taxes_id, rec_vendor_id = order_line._get_purchase_price(order_line.product_id) state = ['sale', 'done'] last_so = self.env['sale.order.line'].search([ ('order_id.partner_id.id', '=', order_line.order_id.partner_id.id), @@ -848,10 +848,11 @@ class SaleOrder(models.Model): # selling_price = last_so.price_unit # tax_id = last_so.tax_id if rec_vendor_id == order_line.vendor_id.id and rec_purchase_price != last_so.purchase_price: + rec_taxes = self.env['account.tax'].search([('id', '=', rec_taxes_id)], limit=1) if rec_taxes.price_include: - selling_price = (rec_purchase_price / 1.11) / (1 - (last_so.line_item_margin / 100)) + selling_price = (rec_purchase_price / 1.11) / (1 - (last_so.item_percent_margin / 100)) else: - selling_price = rec_purchase_price / (1 - (last_so.line_item_margin / 100)) + selling_price = rec_purchase_price / (1 - (last_so.item_percent_margin / 100)) tax_id = last_so.tax_id discount = 0 elif rec_vendor_id != last_so.vendor_id.id: @@ -873,5 +874,3 @@ class SaleOrder(models.Model): order_line.tax_id = tax_id order_line.discount = discount print(1) - - -- cgit v1.2.3