Sindbad~EG File Manager
import db from "../../model/index";
import AppError from "../../utils/apiError";
import { successResponse } from "../../utils/responseFormat";
import catchAsync from "../../utils/catchAsync";
const index = catchAsync(async (req, res, next) => {
const query = req.query;
let allData = await db.File.find()
.populate("created_by", ["_id", "first_name", "last_name"])
.exec();
return successResponse(res, allData);
});
const add = catchAsync(async (req, res, next) => {
if (!req.file.filename) {
return next(new AppError("Document must be provided", 404));
}
req.body.files = req.file.filename;
const files = new db.File(req.body);
await files.save();
return successResponse(res, files, "File saved successfully", 201);
});
const edit = catchAsync(async (req, res, next) => {
if (req.file) {
req.body.files = req.file.filename;
}
let result = await db.File.findByIdAndUpdate(
{ _id: req.params.id },
{ $set: req.body },
{ new: true }
);
if (!result) {
return next(new AppError("No data found.", 404));
}
return successResponse(res, result, "File updated successfully");
});
const deleteData = catchAsync(async (req, res, next) => {
let lead = await db.File.findByIdAndDelete({ _id: req.params.id });
if (!lead) {
return next(new AppError("No data found.", 404));
}
return successResponse(res, lead, "File deleted successfully");
});
export default { index, add, edit, deleteData };
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists