feat : add academics api

This commit is contained in:
ARJUN S THAMPI
2026-03-16 12:39:41 +05:30
parent 9ae190754a
commit aaa62ae3f5
9 changed files with 9723 additions and 9403 deletions

View File

@@ -0,0 +1,117 @@
import prisma from "../prisma/client.js";
// CREATE ACADEMICS & RESEARCH
export const createAcademicsResearch = async (req, res) => {
try {
const {fullName, number, emailId, subject, courseName, message} = req.body;
if (!fullName || !number) {
return res.status(400).json({
success: false,
message: "Full name and number are required",
});
}
const data = await prisma.academicsResearch.create({
data: {
fullName,
number,
emailId,
subject,
courseName,
message,
},
});
res.status(200).json({
success: true,
status: 200,
data,
message: "Academics & Research added successfully",
});
} catch (error) {
console.error(error);
res.status(500).json({
success: false,
message: "Failed to add Academics & Research inquiry",
});
}
};
// GET ALL
export const getAcademicsResearch = async (req, res) => {
try {
const data = await prisma.academicsResearch.findMany({
orderBy: {
createdAt: "desc",
},
});
res.json({
success: true,
data,
});
} catch (error) {
res.status(500).json({
success: false,
message: "Failed to fetch records",
});
}
};
// GET SINGLE
export const getSingleAcademicsResearch = async (req, res) => {
try {
const {id} = req.params;
const data = await prisma.academicsResearch.findUnique({
where: {
id: Number(id),
},
});
if (!data) {
return res.status(404).json({
success: false,
message: "Record not found",
});
}
res.json({
success: true,
data,
});
} catch (error) {
res.status(500).json({
success: false,
message: "Failed to fetch record",
});
}
};
// DELETE
export const deleteAcademicsResearch = async (req, res) => {
try {
const {id} = req.params;
await prisma.academicsResearch.delete({
where: {
id: Number(id),
},
});
res.json({
success: true,
message: "Record deleted successfully",
});
} catch (error) {
res.status(500).json({
success: false,
message: "Failed to delete record",
});
}
};