first commit

This commit is contained in:
2026-05-26 16:00:09 +03:30
commit 83fd5c1a86
81 changed files with 6867 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
import { NextFunction } from "express";
import { ServerResponse } from "../types";
export function requireRole(...roles: string[]) {
return (req: Request, res: ServerResponse, next: NextFunction) => {
const user = (req as any).user;
if (!user)
return res
.status(401)
.json({ status: 401, data: {}, message: "احراز هویت انجام نشده است." });
const userRole = user.Role?.name;
if (!userRole || !roles.includes(userRole)) {
return res
.status(403)
.json({
status: 403,
data: {},
message: "شما دسترسی لازم برای این عملیات را ندارید.",
});
}
next();
};
}