Content section done

This commit is contained in:
print-signs 2023-10-23 16:21:28 +05:30
parent 428df6f30c
commit 5b70fde8cd
6 changed files with 342 additions and 0 deletions

3
app.js
View File

@ -39,6 +39,7 @@ import LanguageRoute from "./resources/setting/Language/language_routes.js";
import PurposeRoute from "./resources/setting/Purpose/Purpose_routes.js";
// category Route
import categoryRoute from "./resources/Category/categoryRoutes.js";
import ContentRoute from "./resources/Content/ContentRoutes.js";
//business_Type
import Business_TypeRoute from "./resources/setting/Business_Type/Business_routes.js";
@ -62,6 +63,8 @@ app.use("/api", ProductRouter);
app.use("/api/businesses", BusinessRoute);
// Category
app.use("/api/category", categoryRoute);
// Content
app.use("/api/content", ContentRoute);
//Order
app.use("/api", orderRoute);
//Departure

View File

@ -0,0 +1,229 @@
import { PrivacyAndPolicy } from "./PrivacyPolicyModel.js";
import { Shipping } from "./ShippingModel.js";
import { TermsAndCondition } from "./TermsandConditonModel.js";
export const AddTermsAndConditions = async (req, res) => {
try {
if (!req?.user) return res.status(400).json({ message: "please login !" });
// console.log(req?.user)
req.body.user = req.user._id;
const { content } = req.body;
const termsAndCondition = await TermsAndCondition.create({
termsAndContionContent: content,
addedBy: req.user._id,
});
res.status(201).json({
success: true,
termsAndCondition,
message: "Added successfully",
});
} catch (error) {
res.status(500).json({
success: false,
message: error.message ? error.message : "Something went Wrong",
});
}
};
export const getTermsAndCondition = async (req, res) => {
try {
if (!req?.user) return res.status(400).json({ message: "please login !" });
// console.log(req?.user)
const termsAndCondition = await TermsAndCondition.find({
addedBy: req.user._id,
});
res.status(200).json({
success: true,
termsAndCondition,
message: "Found successfully ",
});
} catch (error) {
res.status(500).json({
success: false,
message: error.message ? error.message : "Something went Wrong",
});
}
};
export const updateTermsAndConditions = async (req, res) => {
try {
if (!req?.user) return res.status(400).json({ message: "please login !" });
// console.log(req?.user)
const { content } = req.body;
const termsAndCondition = await TermsAndCondition.findOneAndUpdate(
{
addedBy: req.user._id,
},
{
termsAndContionContent: content,
}
);
res.status(200).json({
success: true,
termsAndCondition,
message: "updated successfully ",
});
} catch (error) {
res.status(500).json({
success: false,
message: error.message ? error.message : "Something went Wrong",
});
}
};
// Privacy policy controller functions
export const AddPrivacyAndPolicy = async (req, res) => {
try {
if (!req?.user) return res.status(400).json({ message: "please login !" });
// console.log(req?.user)
req.body.user = req.user._id;
const { content } = req.body;
const privacyAndPolicy = await PrivacyAndPolicy.create({
privacyAndPolicyContent: content,
addedBy: req.user._id,
});
res.status(201).json({
success: true,
privacyAndPolicy,
message: "Added successfully",
});
} catch (error) {
res.status(500).json({
success: false,
message: error.message ? error.message : "Something went Wrong",
});
}
};
export const getPrivacyPolicy = async (req, res) => {
try {
if (!req?.user) return res.status(400).json({ message: "please login !" });
// console.log(req?.user)
const privacyAndPolicy = await PrivacyAndPolicy.find({
addedBy: req.user._id,
});
res.status(200).json({
success: true,
privacyAndPolicy,
message: "Found successfully ",
});
} catch (error) {
res.status(500).json({
success: false,
message: error.message ? error.message : "Something went Wrong",
});
}
};
export const updatePrivacyPolicy = async (req, res) => {
try {
if (!req?.user) return res.status(400).json({ message: "please login !" });
// console.log(req?.user)
const { content } = req.body;
const privacyAndPolicy = await PrivacyAndPolicy.findOneAndUpdate(
{
addedBy: req.user._id,
},
{
privacyAndPolicyContent: content,
}
);
res.status(200).json({
success: true,
privacyAndPolicy,
message: "updated successfully ",
});
} catch (error) {
res.status(500).json({
success: false,
message: error.message ? error.message : "Something went Wrong",
});
}
};
// Shipping Controller
export const AddShipping = async (req, res) => {
try {
if (!req?.user) return res.status(400).json({ message: "please login !" });
// console.log(req?.user)
req.body.user = req.user._id;
const { content } = req.body;
const shipping = await Shipping.create({
shippingContent: content,
addedBy: req.user._id,
});
res.status(201).json({
success: true,
shipping,
message: "Added successfully",
});
} catch (error) {
res.status(500).json({
success: false,
message: error.message ? error.message : "Something went Wrong",
});
}
};
export const getShipping = async (req, res) => {
try {
if (!req?.user) return res.status(400).json({ message: "please login !" });
// console.log(req?.user)
const shipping = await Shipping.find({
addedBy: req.user._id,
});
res.status(200).json({
success: true,
shipping,
message: "Found successfully ",
});
} catch (error) {
res.status(500).json({
success: false,
message: error.message ? error.message : "Something went Wrong",
});
}
};
export const updateShipping = async (req, res) => {
try {
if (!req?.user) return res.status(400).json({ message: "please login !" });
// console.log(req?.user)
const { content } = req.body;
const shipping = await Shipping.findOneAndUpdate(
{
addedBy: req.user._id,
},
{
shippingContent: content,
}
);
res.status(200).json({
success: true,
shipping,
message: "updated successfully ",
});
} catch (error) {
res.status(500).json({
success: false,
message: error.message ? error.message : "Something went Wrong",
});
}
};

View File

@ -0,0 +1,50 @@
import express from "express";
import {
AddPrivacyAndPolicy,
AddShipping,
AddTermsAndConditions,
getPrivacyPolicy,
getShipping,
getTermsAndCondition,
updatePrivacyPolicy,
updateShipping,
updateTermsAndConditions,
} from "./ContentController.js";
import { isAuthenticatedUser, authorizeRoles } from "../../middlewares/auth.js";
const router = express.Router();
router
.route("/terms-and-conditions")
.post(isAuthenticatedUser, authorizeRoles("admin"), AddTermsAndConditions);
router
.route("/terms-and-conditions")
.get(isAuthenticatedUser, authorizeRoles("admin"), getTermsAndCondition);
router
.route("/terms-and-condition-update")
.patch(
isAuthenticatedUser,
authorizeRoles("admin"),
updateTermsAndConditions
);
router
.route("/privacy-and-policy")
.post(isAuthenticatedUser, authorizeRoles("admin"), AddPrivacyAndPolicy);
router
.route("/privacy-and-policy")
.get(isAuthenticatedUser, authorizeRoles("admin"), getPrivacyPolicy);
router
.route("/privacy-and-policy-update")
.patch(isAuthenticatedUser, authorizeRoles("admin"), updatePrivacyPolicy);
router
.route("/shipping-and-policy")
.post(isAuthenticatedUser, authorizeRoles("admin"), AddShipping);
router
.route("/shipping-and-policy")
.get(isAuthenticatedUser, authorizeRoles("admin"), getShipping);
router
.route("/shipping-and-policy-update")
.patch(isAuthenticatedUser, authorizeRoles("admin"), updateShipping);
export default router;

View File

@ -0,0 +1,21 @@
import mongoose from "mongoose";
const { Schema, model } = mongoose;
const privacyAndPolicySchema = new Schema(
{
privacyAndPolicyContent: {
type: String,
},
addedBy: {
type: mongoose.Schema.ObjectId,
ref: "User",
required: true,
},
},
{ timestamps: true }
);
export const PrivacyAndPolicy = model(
"PrivacyAndPolicy",
privacyAndPolicySchema
);

View File

@ -0,0 +1,18 @@
import mongoose from "mongoose";
const { Schema, model } = mongoose;
const shippingSchema = new Schema(
{
shippingContent: {
type: String,
},
addedBy: {
type: mongoose.Schema.ObjectId,
ref: "User",
required: true,
},
},
{ timestamps: true }
);
export const Shipping = model("Shipping", shippingSchema);

View File

@ -0,0 +1,21 @@
import mongoose from "mongoose";
const { Schema, model } = mongoose;
const termsAndContionSchema = new Schema(
{
termsAndContionContent: {
type: String,
},
addedBy: {
type: mongoose.Schema.ObjectId,
ref: "User",
required: true,
},
},
{ timestamps: true }
);
export const TermsAndCondition = model(
"TermsAndCondition",
termsAndContionSchema
);