summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/purchase_order.py
diff options
context:
space:
mode:
Diffstat (limited to 'indoteknik_custom/models/purchase_order.py')
-rwxr-xr-xindoteknik_custom/models/purchase_order.py48
1 files changed, 24 insertions, 24 deletions
diff --git a/indoteknik_custom/models/purchase_order.py b/indoteknik_custom/models/purchase_order.py
index 5c23b9b8..caad90d3 100755
--- a/indoteknik_custom/models/purchase_order.py
+++ b/indoteknik_custom/models/purchase_order.py
@@ -498,7 +498,7 @@ class PurchaseOrder(models.Model):
('order_id', '=', line.sale_id.id)
], limit=1, order='price_reduce_taxexcl')
- sum_so_margin += sale_order_line.item_margin
+ sum_so_margin += line.qty_po / line.qty_so * sale_order_line.item_margin
# sales_price = sale_order_line.price_reduce_taxexcl * sale_order_line.product_uom_qty
sales_price = sale_order_line.price_reduce_taxexcl * po_line.product_qty
if sale_order_line.order_id.shipping_cost_covered == 'indoteknik':
@@ -508,20 +508,20 @@ class PurchaseOrder(models.Model):
sum_sales_price += sales_price
purchase_price = po_line.price_subtotal
if line.purchase_order_id.delivery_amount > 0:
- purchase_price += line.delivery_amt_line
+ purchase_price += po_line.delivery_amt_line
real_item_margin = sales_price - purchase_price
sum_margin += real_item_margin
- if sum_so_margin != 0 and sum_sales_price != 0 and sum_margin != 0:
- self.total_so_margin = sum_so_margin
- self.total_so_percent_margin = round((sum_so_margin / sum_sales_price), 2) * 100
- self.total_margin = sum_margin
- self.total_percent_margin = round((sum_margin / sum_sales_price), 2) * 100
- else:
- self.total_margin = 0
- self.total_percent_margin = 0
- self.total_so_margin = 0
- self.total_so_percent_margin = 0
+ if sum_so_margin != 0 and sum_sales_price != 0 and sum_margin != 0:
+ self.total_so_margin = sum_so_margin
+ self.total_so_percent_margin = round((sum_so_margin / sum_sales_price), 2) * 100
+ self.total_margin = sum_margin
+ self.total_percent_margin = round((sum_margin / sum_sales_price), 2) * 100
+ else:
+ self.total_margin = 0
+ self.total_percent_margin = 0
+ self.total_so_margin = 0
+ self.total_so_percent_margin = 0
# def compute_total_margin_from_apo(self):
# purchase_price_dict = {}
@@ -545,8 +545,8 @@ class PurchaseOrder(models.Model):
# sum_so_margin += sale_order_line.item_margin
- # sales_price = sale_order_line.price_reduce_taxexcl * line.qty_so
- # # sales_price = sale_order_line.price_reduce_taxexcl * lines.product_qty
+ # # sales_price = sale_order_line.price_reduce_taxexcl * line.qty_so
+ # sales_price = sale_order_line.price_reduce_taxexcl * lines.product_qty
# if sale_order_line.order_id.shipping_cost_covered == 'indoteknik':
# sales_price -= sale_order_line.delivery_amt_line
@@ -569,16 +569,16 @@ class PurchaseOrder(models.Model):
# real_item_margin = sales_price - purchase_price
# sum_margin += real_item_margin
- # if sum_so_margin != 0 and sum_sales_price != 0 and sum_margin != 0:
- # self.total_so_margin = sum_so_margin
- # self.total_so_percent_margin = round((sum_so_margin / sum_sales_price), 2) * 100
- # self.total_margin = sum_margin
- # self.total_percent_margin = round((sum_margin / sum_sales_price), 2) * 100
- # else:
- # self.total_margin = 0
- # self.total_percent_margin = 0
- # self.total_so_margin = 0
- # self.total_so_percent_margin = 0
+ # if sum_so_margin != 0 and sum_sales_price != 0 and sum_margin != 0:
+ # self.total_so_margin = sum_so_margin
+ # self.total_so_percent_margin = round((sum_so_margin / sum_sales_price), 2) * 100
+ # self.total_margin = sum_margin
+ # self.total_percent_margin = round((sum_margin / sum_sales_price), 2) * 100
+ # else:
+ # self.total_margin = 0
+ # self.total_percent_margin = 0
+ # self.total_so_margin = 0
+ # self.total_so_percent_margin = 0
def compute_amt_total_without_service(self):
for order in self: