diff --git a/src/controllers/project/projectAddSf.controller.js b/src/controllers/project/projectAddSf.controller.js index 39bb9b5..cc08b15 100644 --- a/src/controllers/project/projectAddSf.controller.js +++ b/src/controllers/project/projectAddSf.controller.js @@ -83,26 +83,26 @@ async function project_add_sf(req, res) { // Send data to Salesforce API after successful registration try { - // const salesforceUrl = `${process.env.SF_DOCTRACKER_API_URL}services/apexrest/docva/api/`; + const salesforceUrl = `${process.env.SF_DOCTRACKER_API_URL}services/apexrest/docva/api/`; - // const response = await fetch(salesforceUrl, { - // method: 'POST', - // headers: { - // 'Content-Type': 'application/json', - // }, - // body: JSON.stringify(created) - // }); + const response = await fetch(salesforceUrl, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify(created) + }); - // if (!response.ok) { - // const errorText = await response.text(); - // throw new Error(`Salesforce API responded with status ${response.status}: ${errorText}`); - // } + if (!response.ok) { + const errorText = await response.text(); + throw new Error(`Salesforce API responded with status ${response.status}: ${errorText}`); + } - // const result = await response.json(); - // console.log("✅ Successfully synced VA data to Salesforce:", result); + const result = await response.json(); + console.log("✅ Successfully synced VA data to Salesforce:", result); - // res.status(201).json({ success: true, data: created, SyncSalesforce: result }); - res.status(201).json({ success: true, data: created, relationships: relationshipUpdate }); + res.status(201).json({ success: true, data: created, SyncSalesforce: result }); + // res.status(201).json({ success: true, data: created, relationships: relationshipUpdate }); } catch (error) { console.error("❌ Failed to sync with Salesforce:", error.message); diff --git a/src/controllers/va/vaLeaves/vaLeavesApply.controller.js b/src/controllers/va/vaLeaves/vaLeavesApply.controller.js index 489a6e3..b7e3fde 100644 --- a/src/controllers/va/vaLeaves/vaLeavesApply.controller.js +++ b/src/controllers/va/vaLeaves/vaLeavesApply.controller.js @@ -144,80 +144,80 @@ async function va_leave_apply_function(req, res) { await leaveRequest.save(); - // try { - // const salesforceUrl = `${process.env.SF_DOCTRACKER_API_URL}services/apexrest/docva/api/timesheet-adjustment`; - // const sfData = { - // "id": adjustmentRequest._id, - // "va": { - // "id": vaId - // }, - // "project": { - // "id": projectId - // }, - // "date": adjustmentDate.toISOString().split('T')[0], - // "loginTime": loginDateTime.toISOString(), - // "logoutTime": logoutDateTime.toISOString(), - // "comment": comment, - // "status": "PENDING", - // "rejectionReason": "", - // "adjustedHours": formatTime(adjustedSeconds) - // } - - // const response = await fetch(salesforceUrl, { - // method: 'POST', - // headers: { - // 'Content-Type': 'application/json', - // // Add any required headers for Salesforce authentication - // // 'Authorization': 'Bearer ' + process.env.SF_ACCESS_TOKEN - // }, - // body: JSON.stringify({"data": sfData}) - // }); - - // if (!response.ok) { - // const errorText = await response.text(); - // throw new Error(`Salesforce API responded with status ${response.status}: ${errorText}`); - // } - - // const result = await response.json(); - // // console.log("✅ Successfully synced VA data to Salesforce:", result); - - // return res.status(201).json({ - // success: true, - // message: "Adjustment request submitted successfully", - // data: { - // adjustmentId: adjustmentRequest._id, - // date: adjustmentDate.toISOString().split('T')[0], - // loginTime: loginDateTime.toISOString(), - // logoutTime: logoutDateTime.toISOString(), - // adjustedHours: formatTime(adjustedSeconds), - // comment: comment, - // status: "PENDING" - // }, - // SyncSalesforce: result - // }); - // } catch (error) { - // console.error("Failed to sync with Salesforce:", error.message); - // console.log(error) - - // // Create a custom error to distinguish Salesforce errors - // const salesforceError = new Error(`Salesforce sync failed: ${error.message}`); - // salesforceError.isSalesforceError = true; - // throw salesforceError; - // } - - return res.status(201).json({ - success: true, - message: "Leave request submitted successfully", - data: { - leaveId: leaveRequest._id, - dateFrom: startDate.toISOString().split('T')[0], - dateTo: endDate.toISOString().split('T')[0], - totalDays: totalDays, - leaveType, - comment, - status: "PENDING" + try { + const salesforceUrl = `${process.env.SF_DOCTRACKER_API_URL}services/apexrest/docva/api/timesheet-adjustment`; + const sfData = { + "id": adjustmentRequest._id, + "va": { + "id": vaId + }, + "project": { + "id": projectId + }, + "date": adjustmentDate.toISOString().split('T')[0], + "loginTime": loginDateTime.toISOString(), + "logoutTime": logoutDateTime.toISOString(), + "comment": comment, + "status": "PENDING", + "rejectionReason": "", + "adjustedHours": formatTime(adjustedSeconds) } - }); + + const response = await fetch(salesforceUrl, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + // Add any required headers for Salesforce authentication + // 'Authorization': 'Bearer ' + process.env.SF_ACCESS_TOKEN + }, + body: JSON.stringify({"data": sfData}) + }); + + if (!response.ok) { + const errorText = await response.text(); + throw new Error(`Salesforce API responded with status ${response.status}: ${errorText}`); + } + + const result = await response.json(); + // console.log("✅ Successfully synced VA data to Salesforce:", result); + + return res.status(201).json({ + success: true, + message: "Adjustment request submitted successfully", + data: { + adjustmentId: adjustmentRequest._id, + date: adjustmentDate.toISOString().split('T')[0], + loginTime: loginDateTime.toISOString(), + logoutTime: logoutDateTime.toISOString(), + adjustedHours: formatTime(adjustedSeconds), + comment: comment, + status: "PENDING" + }, + SyncSalesforce: result + }); + } catch (error) { + console.error("Failed to sync with Salesforce:", error.message); + console.log(error) + + // Create a custom error to distinguish Salesforce errors + const salesforceError = new Error(`Salesforce sync failed: ${error.message}`); + salesforceError.isSalesforceError = true; + throw salesforceError; + } + + // return res.status(201).json({ + // success: true, + // message: "Leave request submitted successfully", + // data: { + // leaveId: leaveRequest._id, + // dateFrom: startDate.toISOString().split('T')[0], + // dateTo: endDate.toISOString().split('T')[0], + // totalDays: totalDays, + // leaveType, + // comment, + // status: "PENDING" + // } + // }); } catch (error) { console.error("Leave apply error:", error);