From 1b87635d3dd7e4c0bf3c4db2900a96366d99ba87 Mon Sep 17 00:00:00 2001 From: Hussain Nagaria Date: Sun, 19 Oct 2025 18:37:42 +0530 Subject: [PATCH] feat: also store form id in lead --- crm/fcrm/doctype/crm_lead/crm_lead.json | 15 +++++++++++++-- crm/fcrm/doctype/crm_lead/crm_lead.py | 1 + .../doctype/lead_sync_source/facebook.py | 6 +----- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/crm/fcrm/doctype/crm_lead/crm_lead.json b/crm/fcrm/doctype/crm_lead/crm_lead.json index 3d89c787..557b2514 100644 --- a/crm/fcrm/doctype/crm_lead/crm_lead.json +++ b/crm/fcrm/doctype/crm_lead/crm_lead.json @@ -57,7 +57,9 @@ "log_tab", "status_change_log", "syncing_tab", - "facebook_lead_id" + "facebook_lead_id", + "column_break_ixmu", + "facebook_form_id" ], "fields": [ { @@ -338,13 +340,22 @@ "fieldtype": "Data", "label": "Facebook Lead ID", "unique": 1 + }, + { + "fieldname": "column_break_ixmu", + "fieldtype": "Column Break" + }, + { + "fieldname": "facebook_form_id", + "fieldtype": "Data", + "label": "Facebook Form ID" } ], "grid_page_length": 50, "image_field": "image", "index_web_pages_for_search": 1, "links": [], - "modified": "2025-09-29 19:21:49.483883", + "modified": "2025-10-19 18:36:24.683076", "modified_by": "Administrator", "module": "FCRM", "name": "CRM Lead", diff --git a/crm/fcrm/doctype/crm_lead/crm_lead.py b/crm/fcrm/doctype/crm_lead/crm_lead.py index 81c1396e..ba527db9 100644 --- a/crm/fcrm/doctype/crm_lead/crm_lead.py +++ b/crm/fcrm/doctype/crm_lead/crm_lead.py @@ -28,6 +28,7 @@ class CRMLead(Document): communication_status: DF.Link | None converted: DF.Check email: DF.Data | None + facebook_form_id: DF.Data | None facebook_lead_id: DF.Data | None first_name: DF.Data first_responded_on: DF.Datetime | None diff --git a/crm/lead_syncing/doctype/lead_sync_source/facebook.py b/crm/lead_syncing/doctype/lead_sync_source/facebook.py index 680d14cd..f9569b23 100644 --- a/crm/lead_syncing/doctype/lead_sync_source/facebook.py +++ b/crm/lead_syncing/doctype/lead_sync_source/facebook.py @@ -37,6 +37,7 @@ class FacebookSyncSource: } crm_lead_data["source"] = "Facebook" crm_lead_data["facebook_lead_id"] = lead["id"] + crm_lead_data["facebook_form_id"] = self.form_id try: frappe.get_doc( @@ -198,8 +199,3 @@ def get_pages_with_forms() -> list[dict]: forms = frappe.db.get_all("Facebook Lead Form", filters={"page": page["id"]}, fields=["id", "name"]) page["forms"] = forms return pages - - -def validate_duplicate(lead: dict, field_mapping: dict): - # if a lead exists with - pass