mirror of
https://github.com/frappe/erpnext.git
synced 2026-08-15 15:38:39 +00:00
feat: alert when Required By falls back to today
Items whose requested date has passed silently got today as Required By, which
is a date the buyer never asked for. A toast now says so.
(cherry picked from commit 53e09dfdd6)
This commit is contained in:
@@ -227,6 +227,7 @@ def make_purchase_orders_by_supplier(source_name: str, item_suppliers: str | lis
|
|||||||
items_by_supplier.setdefault(row.supplier, {})[row.material_request_item] = flt(row.qty)
|
items_by_supplier.setdefault(row.supplier, {})[row.material_request_item] = flt(row.qty)
|
||||||
|
|
||||||
purchase_orders = []
|
purchase_orders = []
|
||||||
|
is_rescheduled = False
|
||||||
for supplier, requested_qty in items_by_supplier.items():
|
for supplier, requested_qty in items_by_supplier.items():
|
||||||
purchase_order = make_purchase_order(
|
purchase_order = make_purchase_order(
|
||||||
source_name,
|
source_name,
|
||||||
@@ -237,11 +238,21 @@ def make_purchase_orders_by_supplier(source_name: str, item_suppliers: str | lis
|
|||||||
},
|
},
|
||||||
)
|
)
|
||||||
for item in purchase_order.items:
|
for item in purchase_order.items:
|
||||||
item.schedule_date = item.schedule_date or nowdate()
|
if not item.schedule_date:
|
||||||
|
item.schedule_date = nowdate()
|
||||||
|
is_rescheduled = True
|
||||||
|
|
||||||
purchase_order.insert()
|
purchase_order.insert()
|
||||||
purchase_orders.append(purchase_order.name)
|
purchase_orders.append(purchase_order.name)
|
||||||
|
|
||||||
|
if is_rescheduled:
|
||||||
|
frappe.toast(
|
||||||
|
_("{0} was set to today for items whose requested date has passed").format(
|
||||||
|
_(frappe.get_meta("Purchase Order Item").get_label("schedule_date"))
|
||||||
|
),
|
||||||
|
indicator="orange",
|
||||||
|
)
|
||||||
|
|
||||||
frappe.msgprint(
|
frappe.msgprint(
|
||||||
_("{0} created").format(
|
_("{0} created").format(
|
||||||
comma_and([get_link_to_form("Purchase Order", name) for name in purchase_orders])
|
comma_and([get_link_to_form("Purchase Order", name) for name in purchase_orders])
|
||||||
|
|||||||
Reference in New Issue
Block a user