fix(stock): confirm before changing item qty from the batch selector (backport #58123) (#58125)

This commit is contained in:
mergify[bot]
2026-08-13 19:37:31 +05:30
committed by GitHub
parent f9fd3bc526
commit 4f3ffd3820

View File

@@ -670,6 +670,27 @@ erpnext.SerialBatchPackageSelector = class SerialNoBatchBundleUpdate {
frappe.throw(__("Rejected Warehouse and Accepted Warehouse cannot be same."));
}
let qty_to_fetch = flt(this.dialog.get_value("qty"));
let total_qty = entries.reduce((total, row) => total + (flt(row.qty) || 1.0), 0);
if (flt(total_qty, 6) !== flt(qty_to_fetch, 6)) {
const confirm_dialog = frappe.confirm(
__(
"<strong>Total qty</strong> of the rows (<strong>{0}</strong>) does not match the <strong>Qty to Fetch</strong> (<strong>{1}</strong>). Qty of the item will be changed to <strong>{0}</strong>. Are you sure want to proceed?",
[format_number(total_qty), format_number(qty_to_fetch)]
),
() => this.create_bundle_entries(entries, warehouse)
);
confirm_dialog.indicator = "blue";
confirm_dialog.set_indicator();
return;
}
this.create_bundle_entries(entries, warehouse);
}
create_bundle_entries(entries, warehouse) {
frappe
.call({
method: "erpnext.stock.doctype.serial_and_batch_bundle.serial_and_batch_bundle.add_serial_batch_ledgers",