fix: update remaining qty calculation

(cherry picked from commit f523c7889e)
This commit is contained in:
SowmyaArunachalam
2025-12-23 22:02:57 +05:30
committed by Mergify
parent 074faa162f
commit d889623ffa
2 changed files with 7 additions and 5 deletions

View File

@@ -873,17 +873,20 @@ def make_material_request(source_name, target_doc=None):
def get_remaining_packed_item_qty(so_item):
delivered_qty = frappe.db.get_value(
"Sales Order Item", {"docstatus": 1, "name": so_item.parent_detail_docname}, ["delivered_qty"]
"Sales Order Item", {"name": so_item.parent_detail_docname}, ["delivered_qty"]
)
bundle_item_qty = frappe.db.get_value("Product Bundle Item", {"parent": so_item.parent_item}, ["qty"])
bundle_item_qty = frappe.db.get_value(
"Product Bundle Item", {"parent": so_item.parent_item, "item_code": so_item.item_code}, ["qty"]
)
return flt(
(
flt(so_item.qty)
- flt(requested_item_qty.get(so_item.name, {}).get("qty"))
- max(
flt(delivered_qty) - flt(requested_item_qty.get(so_item.name, {}).get("received_qty")),
flt(delivered_qty) * flt(bundle_item_qty)
- flt(requested_item_qty.get(so_item.name, {}).get("received_qty")),
0,
)
)

View File

@@ -919,8 +919,7 @@ class TestMaterialRequest(FrappeTestCase):
is_purchase_item=0,
)
pb = make_product_bundle(parent=bundle_item, items=[sub_item_a, sub_item_b])
pb.submit()
make_product_bundle(parent=bundle_item, items=[sub_item_a, sub_item_b])
so = make_sales_order(item_code=bundle_item)
so.submit()