These interface towards the respective repositories. Wine: - /api/wine/:id - getWineById - /api/wines - allWines Messages: - /api/lottery/messages/winner/:id - notifyWinnerById
31 lines
815 B
JavaScript
31 lines
815 B
JavaScript
const path = require("path");
|
|
const messageRepository = require(path.join(__dirname, "../message"));
|
|
const winnerRepository = require(path.join(__dirname, "../winner"));
|
|
|
|
const notifyWinnerById = (req, res) => {
|
|
const { id } = req.params;
|
|
const isAdmin = req.isAuthenticated();
|
|
|
|
return winnerRepository
|
|
.winnerById(id, isAdmin)
|
|
.then(winner => messageRepository.sendPrizeSelectionLink(winner))
|
|
.then(messageResponse =>
|
|
res.send({
|
|
messageResponse,
|
|
success: true
|
|
})
|
|
)
|
|
.catch(error => {
|
|
const { statusCode, message } = error;
|
|
|
|
return res.status(statusCode || 500).send({
|
|
message: message || "Unexpected error occured while sending message to winner by id.",
|
|
success: false
|
|
});
|
|
});
|
|
};
|
|
|
|
module.exports = {
|
|
notifyWinnerById
|
|
};
|