chore: move "set_missing_values_in_additional_costs" from SCO to SC"
This commit is contained in:
parent
eabd3135f0
commit
ea82fe5bc2
@ -720,6 +720,25 @@ class SubcontractingController(StockController):
|
|||||||
sco_doc = frappe.get_doc("Subcontracting Order", sco)
|
sco_doc = frappe.get_doc("Subcontracting Order", sco)
|
||||||
sco_doc.update_status()
|
sco_doc.update_status()
|
||||||
|
|
||||||
|
def set_missing_values_in_additional_costs(self):
|
||||||
|
self.total_additional_costs = sum(flt(item.amount) for item in self.get("additional_costs"))
|
||||||
|
|
||||||
|
if self.total_additional_costs:
|
||||||
|
if self.distribute_additional_costs_based_on == "Amount":
|
||||||
|
total_amt = sum(flt(item.amount) for item in self.get("items"))
|
||||||
|
for item in self.items:
|
||||||
|
item.additional_cost_per_qty = (
|
||||||
|
(item.amount * self.total_additional_costs) / total_amt
|
||||||
|
) / item.qty
|
||||||
|
else:
|
||||||
|
total_qty = sum(flt(item.qty) for item in self.get("items"))
|
||||||
|
additional_cost_per_qty = self.total_additional_costs / total_qty
|
||||||
|
for item in self.items:
|
||||||
|
item.additional_cost_per_qty = additional_cost_per_qty
|
||||||
|
else:
|
||||||
|
for item in self.items:
|
||||||
|
item.additional_cost_per_qty = 0
|
||||||
|
|
||||||
@frappe.whitelist()
|
@frappe.whitelist()
|
||||||
def get_current_stock(self):
|
def get_current_stock(self):
|
||||||
if self.doctype in ["Purchase Receipt", "Subcontracting Receipt"]:
|
if self.doctype in ["Purchase Receipt", "Subcontracting Receipt"]:
|
||||||
|
|||||||
@ -82,25 +82,6 @@ class SubcontractingOrder(SubcontractingController):
|
|||||||
self.set_missing_values_in_supplied_items()
|
self.set_missing_values_in_supplied_items()
|
||||||
self.set_missing_values_in_items()
|
self.set_missing_values_in_items()
|
||||||
|
|
||||||
def set_missing_values_in_additional_costs(self):
|
|
||||||
self.total_additional_costs = sum(flt(item.amount) for item in self.get("additional_costs"))
|
|
||||||
|
|
||||||
if self.total_additional_costs:
|
|
||||||
if self.distribute_additional_costs_based_on == "Amount":
|
|
||||||
total_amt = sum(flt(item.amount) for item in self.get("items"))
|
|
||||||
for item in self.items:
|
|
||||||
item.additional_cost_per_qty = (
|
|
||||||
(item.amount * self.total_additional_costs) / total_amt
|
|
||||||
) / item.qty
|
|
||||||
else:
|
|
||||||
total_qty = sum(flt(item.qty) for item in self.get("items"))
|
|
||||||
additional_cost_per_qty = self.total_additional_costs / total_qty
|
|
||||||
for item in self.items:
|
|
||||||
item.additional_cost_per_qty = additional_cost_per_qty
|
|
||||||
else:
|
|
||||||
for item in self.items:
|
|
||||||
item.additional_cost_per_qty = 0
|
|
||||||
|
|
||||||
def set_missing_values_in_service_items(self):
|
def set_missing_values_in_service_items(self):
|
||||||
for idx, item in enumerate(self.get("service_items")):
|
for idx, item in enumerate(self.get("service_items")):
|
||||||
self.items[idx].service_cost_per_qty = item.amount / self.items[idx].qty
|
self.items[idx].service_cost_per_qty = item.amount / self.items[idx].qty
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user