Revert "fix: Reserve and Unreserve buttons visibility in SO"

This reverts commit cdb31816918c8d07344f9af4b7cdf43d0f2b959e.
This commit is contained in:
s-aga-r 2023-04-23 15:31:53 +05:30
parent 0cd10a50d2
commit 0b5f03e88c
2 changed files with 18 additions and 17 deletions

View File

@ -66,16 +66,18 @@ frappe.ui.form.on("Sales Order", {
}
if (frm.is_new()) {
if (frm.doc.__onload && frm.doc.__onload.enable_stock_reservation) {
if (frm.doc.__onload.reserve_stock_on_so_submission) {
// If `Reserve Stock on Sales Order Submission` is enabled in Stock Settings, set Reserve Stock to 1 else 0.
frm.set_value("reserve_stock", value ? 1 : 0);
frappe.db.get_single_value("Stock Settings", "enable_stock_reservation").then((value) => {
if (value) {
frappe.db.get_single_value("Stock Settings", "reserve_stock_on_sales_order_submission").then((value) => {
// If `Reserve Stock on Sales Order Submission` is enabled in Stock Settings, set Reserve Stock to 1 else 0.
frm.set_value("reserve_stock", value ? 1 : 0);
})
} else {
// If `Stock Reservation` is disabled in Stock Settings, set Reserve Stock to 0 and read only.
frm.set_value("reserve_stock", 0);
frm.set_df_property("reserve_stock", "read_only", 1);
}
} else {
// If `Stock Reservation` is disabled in Stock Settings, set Reserve Stock to 0 and read only.
frm.set_value("reserve_stock", 0);
frm.set_df_property("reserve_stock", "read_only", 1);
}
})
}
}
},
@ -287,7 +289,7 @@ erpnext.selling.SalesOrderController = class SalesOrderController extends erpnex
}
// Stock Reservation > Reserve button will be only visible if the SO has unreserved stock.
if (this.frm.doc.__onload && this.frm.doc.__onload.enable_stock_reservation && this.frm.doc.__onload.has_unreserved_stock) {
if (this.frm.doc.__onload && this.frm.doc.__onload.has_unreserved_stock) {
this.frm.add_custom_button(__('Reserve'), () => this.create_stock_reservation_entries(), __('Stock Reservation'));
}

View File

@ -50,13 +50,12 @@ class SalesOrder(SellingController):
super(SalesOrder, self).__init__(*args, **kwargs)
def onload(self) -> None:
stock_settings = frappe.get_doc("Stock Settings")
self.set_onload("enable_stock_reservation", stock_settings.enable_stock_reservation)
self.set_onload(
"reserve_stock_on_so_submission", stock_settings.reserve_stock_on_sales_order_submission
)
self.set_onload("has_reserved_stock", has_reserved_stock(self.doctype, self.name))
self.set_onload("has_unreserved_stock", self.has_unreserved_stock())
if frappe.get_cached_value("Stock Settings", None, "enable_stock_reservation"):
if self.has_unreserved_stock():
self.set_onload("has_unreserved_stock", True)
if has_reserved_stock(self.doctype, self.name):
self.set_onload("has_reserved_stock", True)
def validate(self):
super(SalesOrder, self).validate()