Fully working apis

This commit is contained in:
Rishav Jaiswal 2025-01-28 12:01:08 +05:30
parent 0cc9fd91cd
commit 4566a3d39c
5 changed files with 25 additions and 35 deletions

View file

@ -7,7 +7,7 @@ export const getCoaches = async (req, res) => {
const coaches = await prisma.coach.findMany(); const coaches = await prisma.coach.findMany();
res.status(200).json({ status: 200, data: coaches }); res.status(200).json({ status: 200, data: coaches });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };
@ -20,7 +20,7 @@ export const createCoach = async (req, res) => {
}); });
res.status(201).json({ status: 201, data: newEvent }); res.status(201).json({ status: 201, data: newEvent });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };
@ -35,7 +35,7 @@ export const updateCoach = async (req, res) => {
}); });
res.status(200).json({ status: 200, data: updatedEvent }); res.status(200).json({ status: 200, data: updatedEvent });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };
@ -50,6 +50,6 @@ export const deleteCoach = async (req, res) => {
message: "Event deleted successfully", message: "Event deleted successfully",
}); });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };

View file

@ -7,7 +7,7 @@ export const getEvents = async (req, res) => {
const events = await prisma.events.findMany(); const events = await prisma.events.findMany();
res.status(200).json({ status: 200, data: events }); res.status(200).json({ status: 200, data: events });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };
@ -23,7 +23,7 @@ export const createEvent = async (req, res) => {
}); });
res.status(201).json({ status: 201, data: newEvent }); res.status(201).json({ status: 201, data: newEvent });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };
@ -38,7 +38,7 @@ export const updateEvent = async (req, res) => {
}); });
res.status(200).json({ status: 200, data: updatedEvent }); res.status(200).json({ status: 200, data: updatedEvent });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };
@ -53,6 +53,6 @@ export const deleteEvent = async (req, res) => {
message: "Event deleted successfully", message: "Event deleted successfully",
}); });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };

View file

@ -7,49 +7,40 @@ export const getHeroImages = async (req, res) => {
const coaches = await prisma.heroImages.findMany(); const coaches = await prisma.heroImages.findMany();
res.status(200).json({ status: 200, data: coaches }); res.status(200).json({ status: 200, data: coaches });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };
export const createHeroImage = async (req, res) => {
try {
const newEvent = await prisma.heroImages.create({
data: {
...req?.body,
},
});
res.status(201).json({ status: 201, data: newEvent });
} catch (error) {
res.status(500).json({ message: error.message });
}
};
// to be checkedfixed
export const uploadHeroImages = async (req, res) => { export const uploadHeroImages = async (req, res) => {
try { try {
const files = req.files; const files = req.files;
const heroImages = files.map((file) => file.path); const heroImages = files.map((file) => file.filename);
console.log(heroImages);
const newHeroImages = await prisma.heroImages.create({ const newHeroImages = await prisma.heroImages.create({
data: heroImages, data: {
urls: heroImages,
},
}); });
res.status(201).json({ status: 201, data: newHeroImages }); res.status(201).json({ status: 201, data: newHeroImages });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };
export const updateHeroImage = async (req, res) => { export const updateHeroImage = async (req, res) => {
const { id } = req.params; const { id, index } = req.params;
try { try {
const data = await prisma.heroImages.findUnique({where:{id: id}})
let oldArray = data.urls
oldArray[index] = req.file.filename
const updatedEvent = await prisma.heroImages.update({ const updatedEvent = await prisma.heroImages.update({
where: { id: id }, where: { id: id },
data: { data: {
...req?.body, urls: oldArray
}, },
}); });
res.status(200).json({ status: 200, data: updatedEvent }); res.status(200).json({ status: 200, data: updatedEvent });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };
@ -61,9 +52,9 @@ export const deleteHeroImage = async (req, res) => {
}); });
res.status(200).json({ res.status(200).json({
status: 200, status: 200,
message: "Event deleted successfully", message: "Hero Image deleted successfully",
}); });
} catch (error) { } catch (error) {
res.status(500).json({ message: error.message }); res.status(500).json({ status: 500, message: error.message });
} }
}; };

View file

@ -3,7 +3,6 @@ import MulterClient from "../utils/multer.js";
import { import {
getHeroImages, getHeroImages,
createHeroImage,
uploadHeroImages, uploadHeroImages,
updateHeroImage, updateHeroImage,
deleteHeroImage, deleteHeroImage,
@ -12,9 +11,8 @@ import {
const HeroImageRouter = express.Router(); const HeroImageRouter = express.Router();
HeroImageRouter.get("/", getHeroImages) HeroImageRouter.get("/", getHeroImages)
.post("/", createHeroImage)
.post("/upload", MulterClient.array("heroImages", 10), uploadHeroImages) .post("/upload", MulterClient.array("heroImages", 10), uploadHeroImages)
.put("/:id", updateHeroImage) .put("/:id/:index",MulterClient.single("heroImages"), updateHeroImage)
.delete("/:id", deleteHeroImage); .delete("/:id", deleteHeroImage);
export default HeroImageRouter; export default HeroImageRouter;

View file

@ -1,11 +1,12 @@
import multer from "multer"; import multer from "multer";
const storage = multer.diskStorage({ const storage = multer.diskStorage({
destination: function (req, file, cb) { destination: function (req, file, cb) {
cb(null, "./uploads"); cb(null, "./uploads");
}, },
filename: function (req, file, cb) { filename: function (req, file, cb) {
cb(null, Date.now() + "-" + file.originalname); cb(null, (Date.now() + "-" + file.originalname).replaceAll(' ','-'));
}, },
}); });