Added get voted details route

This commit is contained in:
Manik Maity
2024-11-13 21:43:10 +05:30
parent a1319b8b2b
commit 131b921d96
3 changed files with 44 additions and 3 deletions

View File

@@ -1,4 +1,4 @@
import { voteMessageTestService } from "../services/vote.service.js"; import { getPollVoteService, voteMessageTestService } from "../services/vote.service.js";
export async function voteTestController(req, res) { export async function voteTestController(req, res) {
try{ try{
@@ -22,4 +22,31 @@ export async function voteTestController(req, res) {
}); });
} }
} }
}
export async function getPollVoteController(req, res) {
try {
const pollId = req.params.pollId;
const userId = req.user._id;
const vote = await getPollVoteService(pollId, userId);
res.status(200).json({
success: true,
message: "Poll data fetched successfully",
data: vote,
});
}
catch (err) {
console.log(err);
if (err.statusCode) {
res.status(err.statusCode).json({
success: false,
message: err.message,
});
} else {
res.status(500).json({
success: false,
message: err.message,
});
}
}
} }

View File

@@ -1,6 +1,6 @@
import express from "express"; import express from "express";
import { verifyToken } from "../../middlwares/verifyToken.js"; import { verifyToken } from "../../middlwares/verifyToken.js";
import { voteTestController } from "../../controllers/vote.controller.js"; import { getPollVoteController, voteTestController } from "../../controllers/vote.controller.js";
const voteRouter = express.Router(); const voteRouter = express.Router();
/** /**
@@ -14,6 +14,6 @@ const voteRouter = express.Router();
* description: Success * description: Success
*/ */
voteRouter.get("/test", voteTestController) voteRouter.get("/test", voteTestController)
// voteRouter.get("/voted/:pollId", verifyToken, getVotedDataController); voteRouter.get("/voted/:pollId", verifyToken, getPollVoteController);
export default voteRouter; export default voteRouter;

View File

@@ -1,3 +1,6 @@
import mongoose from "mongoose";
import { findVoteByPollIdAndUserId } from "../repositories/vote.repo.js";
export function voteMessageTestService(){ export function voteMessageTestService(){
try{ try{
return "Vote route is working✔"; return "Vote route is working✔";
@@ -5,4 +8,15 @@ export function voteMessageTestService(){
catch(err){ catch(err){
throw err; throw err;
} }
}
export function getPollVoteService(pollId, userId) {
try {
const pollIdObjet = new mongoose.Types.ObjectId(pollId);
const vote = findVoteByPollIdAndUserId(pollIdObjet, userId);
return vote;
}
catch (err) {
throw err;
}
} }