Finished Quick Entry
This commit is contained in:
@@ -3,7 +3,7 @@ from frappe import _
|
||||
|
||||
@frappe.whitelist()
|
||||
def create_customer_full(**data):
|
||||
frappe.only_for("System Manager", "Sales User", "Sales Manager")
|
||||
frappe.only_for(["System Manager", "Sales User", "Sales Manager"])
|
||||
|
||||
required = [
|
||||
"customer_name",
|
||||
@@ -26,16 +26,22 @@ def create_customer_full(**data):
|
||||
try:
|
||||
frappe.db.begin()
|
||||
|
||||
if data.get("custom_auto_pay_enabled") and not data.get("custom_auto_pay_id"):
|
||||
frappe.throw("Auto Pay ID is required when Auto Pay is enabled.")
|
||||
|
||||
|
||||
customer = frappe.get_doc({
|
||||
"doctype": "Customer",
|
||||
"customer_name": data["customer_name"],
|
||||
"customer_type": data["customer_type"],
|
||||
"customer_group": data["customer_group"],
|
||||
"territory": "United States",
|
||||
"custom_auto_pay_status": "Active" if data.get("custom_auto_pay_enabled") else "Disabled",
|
||||
"custom_auto_pay_status": 1 if data.get("custom_auto_pay_enabled") else 0,
|
||||
"custom_auto_pay_id": data.get("custom_auto_pay_id") if data.get("custom_auto_pay_enabled") else "",
|
||||
"custom_send_via": data.get("custom_send_via"),
|
||||
}).insert(ignore_permissions=True)
|
||||
|
||||
|
||||
contact = frappe.get_doc({
|
||||
"doctype": "Contact",
|
||||
"first_name": data["customer_name"]
|
||||
|
||||
@@ -55,11 +55,16 @@ ns_app.customer.open_quick_entry = function (opts = {}) {
|
||||
fieldtype: "Check",
|
||||
default: 0
|
||||
},
|
||||
{
|
||||
fieldname: "custom_auto_pay_id",
|
||||
label: "AutoPay ID",
|
||||
fieldtype: "Data"
|
||||
},
|
||||
{
|
||||
fieldname: "custom_send_via",
|
||||
label: "Send Via",
|
||||
fieldtype: "Select",
|
||||
options: "Mail\nEmail\nFax"
|
||||
options: "mail\nemail\nfax"
|
||||
},
|
||||
|
||||
// ───────── CONTACT ─────────
|
||||
@@ -170,6 +175,24 @@ ns_app.customer.open_quick_entry = function (opts = {}) {
|
||||
|
||||
d.show();
|
||||
|
||||
let autoPayField = d.get_field("custom_auto_pay_enabled");
|
||||
|
||||
// Initial state
|
||||
d.set_df_property(
|
||||
"custom_auto_pay_id",
|
||||
"hidden",
|
||||
!d.get_value("custom_auto_pay_enabled")
|
||||
);
|
||||
|
||||
// When checkbox changes
|
||||
autoPayField.$input.on("change", () => {
|
||||
let isChecked = d.get_value("custom_auto_pay_enabled");
|
||||
|
||||
d.set_df_property("custom_auto_pay_id", "hidden", !isChecked);
|
||||
});
|
||||
|
||||
|
||||
|
||||
// Prevent Enter from submitting unless primary button is focused
|
||||
d.$wrapper.on("keydown", "input, select, textarea", function (e) {
|
||||
if (e.key === "Enter") {
|
||||
|
||||
Reference in New Issue
Block a user