mirror of
https://github.com/frappe/erpnext.git
synced 2026-02-17 16:45:02 +00:00
fix: modify all SRE queries to consider new Closed status
This commit is contained in:
@@ -2180,8 +2180,7 @@ def get_reserved_batches_for_sre(kwargs) -> dict:
|
||||
.where(
|
||||
(sre.docstatus == 1)
|
||||
& (sre.item_code == kwargs.item_code)
|
||||
& (sre.reserved_qty >= sre.delivered_qty)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
& (sre.reservation_based_on == "Serial and Batch")
|
||||
)
|
||||
.groupby(sb_entry.batch_no, sre.warehouse)
|
||||
|
||||
@@ -500,7 +500,7 @@ class StockReservationEntry(Document):
|
||||
status = "Delivered"
|
||||
elif self.delivered_qty and self.delivered_qty < self.reserved_qty:
|
||||
status = "Partially Delivered"
|
||||
elif self.reserved_qty == self.voucher_qty:
|
||||
elif self.reserved_qty >= self.voucher_qty:
|
||||
status = "Reserved"
|
||||
else:
|
||||
status = "Partially Reserved"
|
||||
@@ -699,8 +699,7 @@ def get_available_qty_to_reserve(
|
||||
(sre.docstatus == 1)
|
||||
& (sre.item_code == item_code)
|
||||
& (sre.warehouse == warehouse)
|
||||
& (sre.reserved_qty >= sre.delivered_qty)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -750,8 +749,7 @@ def get_available_serial_nos_to_reserve(
|
||||
(sre.docstatus == 1)
|
||||
& (sre.item_code == item_code)
|
||||
& (sre.warehouse == warehouse)
|
||||
& (sre.reserved_qty >= sre.delivered_qty)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
& (sre.reservation_based_on == "Serial and Batch")
|
||||
)
|
||||
)
|
||||
@@ -781,11 +779,7 @@ def get_sre_reserved_qty_for_item_and_warehouse(item_code: str, warehouse: str |
|
||||
"reserved_qty"
|
||||
)
|
||||
)
|
||||
.where(
|
||||
(sre.docstatus == 1)
|
||||
& (sre.item_code == item_code)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
)
|
||||
.where((sre.docstatus == 1) & (sre.item_code == item_code) & (sre.delivered_qty < sre.reserved_qty))
|
||||
.groupby(sre.item_code, sre.warehouse)
|
||||
)
|
||||
|
||||
@@ -841,7 +835,7 @@ def get_sre_reserved_qty_details_for_voucher(voucher_type: str, voucher_no: str)
|
||||
(sre.docstatus == 1)
|
||||
& (sre.voucher_type == voucher_type)
|
||||
& (sre.voucher_no == voucher_no)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
)
|
||||
.groupby(sre.voucher_detail_no)
|
||||
).run(as_list=True)
|
||||
@@ -863,7 +857,7 @@ def get_sre_reserved_warehouses_for_voucher(
|
||||
(sre.docstatus == 1)
|
||||
& (sre.voucher_type == voucher_type)
|
||||
& (sre.voucher_no == voucher_no)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
)
|
||||
.orderby(sre.creation)
|
||||
)
|
||||
@@ -904,7 +898,7 @@ def get_sre_reserved_qty_for_voucher_detail_no(
|
||||
& (sre.voucher_type == voucher_type)
|
||||
& (sre.voucher_no == voucher_no)
|
||||
& (sre.voucher_detail_no == voucher_detail_no)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -938,8 +932,7 @@ def get_sre_reserved_serial_nos_details(
|
||||
(sre.docstatus == 1)
|
||||
& (sre.item_code == item_code)
|
||||
& (sre.warehouse == warehouse)
|
||||
& (sre.reserved_qty > sre.delivered_qty)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
& (sre.reservation_based_on == "Serial and Batch")
|
||||
)
|
||||
.orderby(sb_entry.creation)
|
||||
@@ -969,7 +962,7 @@ def get_sre_reserved_batch_nos_details(item_code: str, warehouse: str, batch_nos
|
||||
& (sre.item_code == item_code)
|
||||
& (sre.warehouse == warehouse)
|
||||
& ((sre.reserved_qty - sre.delivered_qty) > 0)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
& (sre.reservation_based_on == "Serial and Batch")
|
||||
)
|
||||
.groupby(sb_entry.batch_no)
|
||||
@@ -1004,8 +997,7 @@ def get_sre_details_for_voucher(voucher_type: str, voucher_no: str) -> list[dict
|
||||
(sre.docstatus == 1)
|
||||
& (sre.voucher_type == voucher_type)
|
||||
& (sre.voucher_no == voucher_no)
|
||||
& (sre.reserved_qty > sre.delivered_qty)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
)
|
||||
.orderby(sre.creation)
|
||||
).run(as_dict=True)
|
||||
@@ -1026,7 +1018,7 @@ def get_serial_batch_entries_for_voucher(sre_name: str) -> list[dict]:
|
||||
sb_entry.batch_no,
|
||||
(sb_entry.qty - sb_entry.delivered_qty).as_("qty"),
|
||||
)
|
||||
.where((sre.docstatus == 1) & (sre.name == sre_name) & (sre.status.notin(["Delivered", "Cancelled"])))
|
||||
.where((sre.docstatus == 1) & (sre.name == sre_name) & (sre.delivered_qty < sre.reserved_qty))
|
||||
.where(sb_entry.qty > sb_entry.delivered_qty)
|
||||
.orderby(sb_entry.creation)
|
||||
).run(as_dict=True)
|
||||
@@ -1246,8 +1238,7 @@ class StockReservation:
|
||||
(sre.docstatus == 1)
|
||||
& (sre.item_code == item_code)
|
||||
& (sre.warehouse == warehouse)
|
||||
& (sre.reserved_qty >= sre.delivered_qty)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -1733,7 +1724,7 @@ def cancel_stock_reservation_entries(
|
||||
(sre.docstatus == 1)
|
||||
& (sre.from_voucher_type == from_voucher_type)
|
||||
& (sre.from_voucher_no == from_voucher_no)
|
||||
& (sre.status.notin(["Delivered", "Cancelled"]))
|
||||
& (sre.delivered_qty < sre.reserved_qty)
|
||||
)
|
||||
.orderby(sre.creation)
|
||||
)
|
||||
@@ -1789,7 +1780,7 @@ def get_stock_reservation_entries_for_voucher(
|
||||
query = query.where(sre.voucher_detail_no == voucher_detail_no)
|
||||
|
||||
if ignore_status:
|
||||
query = query.where(sre.status.notin(["Delivered", "Cancelled"]))
|
||||
query = query.where(sre.delivered_qty < sre.reserved_qty)
|
||||
|
||||
return query.run(as_dict=True)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user