From cf4393550881bc358e1a92ec87dfa19900303e59 Mon Sep 17 00:00:00 2001 From: Muhammed Raihan P A <99407382+pu-raihan@users.noreply.github.com> Date: Wed, 19 Feb 2025 01:22:54 -0800 Subject: [PATCH] clear contact details when switching from existing to new contact - Ensure previously selected contact details are removed when toggling - Clear all fields in the 'contact_details_section' when choosing an existing contact - Set 'contact' field to null when switching to a new contact - Prevents unnecessary data from being sent to the API --- frontend/src/components/Modals/DealModal.vue | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/frontend/src/components/Modals/DealModal.vue b/frontend/src/components/Modals/DealModal.vue index 9c38f1ef..068feed1 100644 --- a/frontend/src/components/Modals/DealModal.vue +++ b/frontend/src/components/Modals/DealModal.vue @@ -190,6 +190,24 @@ function createDeal() { if (deal.website && !deal.website.startsWith('http')) { deal.website = 'https://' + deal.website } + if (chooseExistingContact.value) { + const contactDetailsFields = new Set( + tabs.data.flatMap((tab) => + tab.sections + .filter((section) => section.name === 'contact_details_section') + .flatMap((section) => + section.columns.flatMap((column) => + column.fields.map((field) => field.fieldname), + ), + ), + ), + ) + + contactDetailsFields.forEach((field) => { + deal[field] = null + }) + } else deal['contact'] = null + createResource({ url: 'crm.fcrm.doctype.crm_deal.crm_deal.create_deal', params: { args: deal },