From 73f4b3b97a746198a4fd6b110fb1bec1ac18f758 Mon Sep 17 00:00:00 2001 From: Casey Date: Tue, 16 Dec 2025 11:57:37 -0600 Subject: [PATCH] fix address map --- custom_ui/api/db/clients.py | 27 ++++++++----------- frontend/src/apiUtils.js | 2 +- .../components/clientSubPages/Overview.vue | 11 ++++---- frontend/src/components/pages/Client.vue | 6 ++--- 4 files changed, 20 insertions(+), 26 deletions(-) diff --git a/custom_ui/api/db/clients.py b/custom_ui/api/db/clients.py index 035cb9d..8ce616b 100644 --- a/custom_ui/api/db/clients.py +++ b/custom_ui/api/db/clients.py @@ -109,13 +109,8 @@ def get_client(client_name): clientData.update(map_lead_client(clientData)) links = [] if customer.doctype == "Customer": - links = ( - [{"link_doctype": "Contact", "link_name": row.contact} - for row in customer.get("custom_add_contacts", [])] - + - [{"link_doctype": "Address", "link_name": row.address} - for row in customer.get("custom_select_address", [])] - ) + clientData["addresses"] = customer.custom_select_address or [] + clientData["contacts"] = customer.custom_add_contacts or [] else: links = frappe.get_all( @@ -130,16 +125,16 @@ def get_client(client_name): "parent as link_name", ] ) - - print("DEBUG: Retrieved links from lead:", links) - for link in links: - print("DEBUG: Processing link:", link) - linked_doc = frappe.get_doc(link["link_doctype"], link["link_name"]) - if link["link_doctype"] == "Contact": - clientData["contacts"].append(linked_doc.as_dict()) - elif link["link_doctype"] == "Address": - clientData["addresses"].append(linked_doc.as_dict()) + print("DEBUG: Retrieved links from lead:", links) + for link in links: + print("DEBUG: Processing link:", link) + linked_doc = frappe.get_doc(link["link_doctype"], link["link_name"]) + if link["link_doctype"] == "Contact": + clientData["contacts"].append(linked_doc.as_dict()) + elif link["link_doctype"] == "Address": + clientData["addresses"].append(linked_doc.as_dict()) # TODO: Continue getting other linked docs like jobs, invoices, etc. + print("DEBUG: Final client data prepared:", clientData) return build_success_response(clientData) except frappe.ValidationError as ve: return build_error_response(str(ve), 400) diff --git a/frontend/src/apiUtils.js b/frontend/src/apiUtils.js index add68dc..a6c310a 100644 --- a/frontend/src/apiUtils.js +++ b/frontend/src/apiUtils.js @@ -32,7 +32,7 @@ class ApiUtils { static toCamelCaseObject(obj) { const newObj = Object.entries(obj).reduce((acc, [key, value]) => { - const camelKey = key.replace(/_([a-z])/g, (match, p1) => p1.toUpperCase()); + const camelKey = key.replace(/_([a-zA-Z0-9])/g, (match, p1) => p1.toUpperCase()); // check if value is an array if (Array.isArray(value)) { value = value.map((item) => { diff --git a/frontend/src/components/clientSubPages/Overview.vue b/frontend/src/components/clientSubPages/Overview.vue index 27f1a01..918f2f8 100644 --- a/frontend/src/components/clientSubPages/Overview.vue +++ b/frontend/src/components/clientSubPages/Overview.vue @@ -10,7 +10,6 @@ />
-