From 7794ada908d06af0463b0ec85e22b10cf8bddf19 Mon Sep 17 00:00:00 2001 From: Pratish Ninawe Date: Fri, 29 Sep 2023 15:55:27 +0530 Subject: [PATCH] integrated api for tab 3 contact details --- src/views/Campaigns/ContactDetails.js | 4 +- src/views/Campaigns/Preview.js | 65 +++++++++++---------------- 2 files changed, 28 insertions(+), 41 deletions(-) diff --git a/src/views/Campaigns/ContactDetails.js b/src/views/Campaigns/ContactDetails.js index 3a741ed..99c899c 100644 --- a/src/views/Campaigns/ContactDetails.js +++ b/src/views/Campaigns/ContactDetails.js @@ -180,7 +180,9 @@ const ContactDetails = ({ props }) => { { const handleSubmit = async (e) => { e.preventDefault(); - // console.log(data); - // const campaignData = { - // campaignType: data.campaignType, - // campaignName: data.campaignName, - // language: data.language, - // videoTemplate: data.video, - // recipients: data.recipients, - // }; + const hasEmptyRecipients = data.recipients.some((recipient) => { + return !recipient.name || !recipient.contact; + }); + + if (hasEmptyRecipients) { + swal({ + title: "Validation Error", + text: "Please fill Conatct details", + icon: "error", + button: "Close", + }); + return; + } const formattedRecipients = data.recipients.map((recipient) => ({ name: recipient.name, - contact: recipient.contact.email || recipient.contact.phoneNumber, + contact: recipient.contact, })); - // console.log(data.campaignType); - const formData = new FormData(); - formData.append("campaignType", data.campaignType); - formData.append("campaignName", data.campaignName); - formData.append("language", data.language); - formData.append("videoTemplate", data.video); - // formData.set("recipients",JSON.stringify(formattedRecipients)); - // console.log("campaignData", campaignData); - // console.log("formData", formData); + const campaignData = { + campaignType: data.campaignType, + campaignName: data.campaignName, + language: data.language, + recipients: formattedRecipients, + }; axios - .post(`/api/campaign/create`, formData, { + .post(`/api/campaign/create`, campaignData, { headers: { Authorization: `Bearer ${token}`, - "Content-Type": "multipart/form-data", "Access-Control-Allow-Origin": "*", }, }) @@ -51,10 +52,10 @@ const Preview = ({ props }) => { ? res?.data?.message : "Campaign added successfully!", icon: "success", - button: "Return", + button: "Close", }); setLoading(false); - // handleView(5); + handleView(5); }) .catch((err) => { setLoading(false); @@ -64,7 +65,7 @@ const Preview = ({ props }) => { title: "Warning", text: message, icon: "error", - button: "Retry", + button: "Close", dangerMode: true, }); }); @@ -100,9 +101,7 @@ const Preview = ({ props }) => { marginBottom: "1rem", textTransform: "capitalize", }} - onClick={() => { - handleView(5); - }} + onClick={handleSubmit} > Next @@ -147,20 +146,6 @@ const Preview = ({ props }) => { )} -
- -
); };