Files
bodyshop/server/notifications/scenarioBuilders.js

97 lines
2.3 KiB
JavaScript

const consoleDir = require("../utils/consoleDir");
const { getJobAssignmentType } = require("./stringHelpers");
const alternateTransportChangedBuilder = (data) => {
consoleDir(data);
};
const billPostedHandler = (data) => {
consoleDir(data);
};
const criticalPartsStatusChangedBuilder = (data) => {
consoleDir(data);
};
const intakeDeliveryChecklistCompletedBuilder = (data) => {
consoleDir(data);
};
const jobAssignedToMeBuilder = (data) => {
return {
app: {
key: "notifications.job.assigned",
variables: {
type: data.scenarioFields?.[0],
jobId: data.jobId,
bodyShopName: data.bodyShopName
},
recipients: data.scenarioWatchers.map((watcher) => ({ email: watcher.user, employeeId: watcher.employeeId }))
},
email: {
subject: `You have been assigned to [${getJobAssignmentType(data.scenarioFields?.[0])}] on ${data?.jobRoNumber} in ${data.bodyShopName}`,
body: `Hello, a new job has been assigned to you in ${data.bodyShopName}.`,
recipient: data.scenarioWatchers.map((watcher) => watcher.user)
},
fcm: {}
};
};
const jobsAddedToProductionBuilder = (data) => {
consoleDir(data);
};
const jobStatusChangeBuilder = (data) => {
consoleDir(data);
};
const newMediaAddedReassignedBuilder = (data) => {
consoleDir(data);
};
const newNoteAddedBuilder = (data) => {
consoleDir(data);
};
const newTimeTicketPostedBuilder = (data) => {
consoleDir(data);
};
const partMarkedBackOrderedBuilder = (data) => {
consoleDir(data);
};
const paymentCollectedCompletedBuilder = (data) => {
consoleDir(data);
};
const scheduledDatesChangedBuilder = (data) => {
consoleDir(data);
};
const supplementImportedBuilder = (data) => {
consoleDir(data);
};
const tasksUpdatedCreatedBuilder = async (data) => {
consoleDir(data);
};
module.exports = {
alternateTransportChangedBuilder,
billPostedHandler,
criticalPartsStatusChangedBuilder,
intakeDeliveryChecklistCompletedBuilder,
jobAssignedToMeBuilder,
jobsAddedToProductionBuilder,
jobStatusChangeBuilder,
newMediaAddedReassignedBuilder,
newNoteAddedBuilder,
newTimeTicketPostedBuilder,
partMarkedBackOrderedBuilder,
paymentCollectedCompletedBuilder,
scheduledDatesChangedBuilder,
supplementImportedBuilder,
tasksUpdatedCreatedBuilder
};