soft delete code added

This commit is contained in:
Mansi1916
2025-07-12 12:50:43 +05:30
parent dd2ceadee5
commit 7305fc1311
5 changed files with 77 additions and 11 deletions

View File

@@ -2,7 +2,7 @@ const Meeting = require("../models/Meeting");
exports.getMeetings = async (req, res) => {
try {
const meetings = await Meeting.find();
const meetings = await Meeting.find({ isDelete : false });
const formattedMeetings = meetings.map((meeting) => {
const formattedAgenda = meeting.agenda
? meeting.agenda.map((item, index) => `<li>${index + 1}. ${item}</li>`).join("")
@@ -16,3 +16,20 @@ exports.getMeetings = async (req, res) => {
res.status(500).json({ error: "Error fetching meetings" });
}
};
// ✅ Soft delete controller (NEW)
exports.softDeleteMeeting = async (req, res) => {
try {
const { id } = req.params;
const meeting = await Meeting.findByIdAndUpdate(id, { isDeleted: true }, { new: true });
if (!meeting) {
return res.status(404).json({ error: "Meeting not found" });
}
res.json({ message: "Meeting soft deleted successfully", meeting });
} catch (error) {
console.error("Error soft deleting meeting:", error);
res.status(500).json({ error: "Failed to soft delete meeting" });
}
};

View File

@@ -11,6 +11,10 @@ const meetingSchema = new mongoose.Schema({
endTime: String,
recipients: [String],
attachments: [{ filename: String, path: String }],
isDeleted: {
type: Boolean,
default: false
}
});
module.exports = mongoose.model("Meeting", meetingSchema);

View File

@@ -1,8 +1,16 @@
const express = require("express");
const { getMeetings } = require("../controllers/meetingController");
const {
getMeetings,
softDeleteMeeting // ✅ Add this line
} = require("../controllers/meetingController");
const router = express.Router();
// GET all non-deleted meetings
router.get("/meetings", getMeetings);
// ✅ Add soft delete route
router.patch("/meetings/:id/soft-delete", softDeleteMeeting);
module.exports = router;