Skip to content

Commit 3d5ca87

Browse files
committed
connected CRM Application with Notification Services
1 parent a5434f5 commit 3d5ca87

File tree

1,031 files changed

+263599
-56
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,031 files changed

+263599
-56
lines changed

.env

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
PORT = 8030
1+
PORT = 7777

controllers/ticket.controller.js

+14-7
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ const User = require('../models/user.model');
22
const Ticket = require('../models/ticket.model');
33
const constants = require('../utils/constants');
44
const converter = require('../utils/objectConverter');
5+
const sendEmail = require('../utils/notificationClient').sendEmail
56

67
/*
78
* Create a Ticket;
@@ -110,7 +111,7 @@ const createTicket = async (req, res) => {
110111
// Initialize ticketsCreated if it's undefined
111112
if (!user.ticketsCreated) {
112113
user.ticketsCreated = [];
113-
}
114+
}
114115

115116
// Push the ticket ID to ticketsCreated
116117
user.ticketsCreated.push(ticket._id);
@@ -129,12 +130,16 @@ const createTicket = async (req, res) => {
129130
// Save the engineer
130131
await engineer.save();
131132

132-
res.status(201).send(converter.ticketResponse(ticket));
133-
} catch (err) {
134-
console.error("Some error happened while creating the ticket", err.message);
133+
/**
134+
* Sending the notification to the assigned Engineer in asynchronous manner
135+
*/
136+
sendEmail(ticket._id, "Ticket with id: " + ticket._id + " created", ticket.description, [user.email, engineer.email], user.email);
137+
138+
res.status(201).send(converter.ticketResponse(ticket));
139+
} catch(err) {
140+
console.log("Somr error happened while creating the ticket", err.message);
135141
res.status(500).send({
136-
message: "Some internal server error",
137-
error: err.message
142+
message: "Some internal server error"
138143
});
139144
}
140145
};
@@ -191,7 +196,8 @@ const updateTicket = async (req,res)=>{
191196
userId: ticket.reporter
192197
});
193198

194-
199+
sendEmail(ticket._id, "Ticket with Id: " + ticket._id + " updated", ticket.description,
200+
savedUser.email + "," + engineer.email+"," + reporter.email, savedUser.email);
195201

196202

197203
res.status(200).send(converter.ticketResponse(updatedTicket));
@@ -247,3 +253,4 @@ module.exports = { createTicket, updateTicket, getAllTickets, getOneTicket }; //
247253

248254

249255

256+

node_modules/.cache/mongodb-memory-server/6.0.9.lock

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

node_modules/.cache/mongodb-memory-server/mongodb-windows-x86_64-6.0.9.zip.downloading

Whitespace-only changes.

node_modules/.package-lock.json

+123-8
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

node_modules/@types/node/LICENSE

+21
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

node_modules/@types/node/README.md

+15
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)