user and role controllers
This commit is contained in:
parent
6865507545
commit
ab01fc2f76
25 changed files with 769 additions and 26 deletions
12
src/routes/admin/index.ts
Normal file
12
src/routes/admin/index.ts
Normal file
|
@ -0,0 +1,12 @@
|
|||
import express from "express";
|
||||
import PermissionHelper from "../../helpers/permissionHelper";
|
||||
|
||||
import role from "./role";
|
||||
import user from "./user";
|
||||
|
||||
var router = express.Router({ mergeParams: true });
|
||||
|
||||
router.use("/role", PermissionHelper.passCheckMiddleware("read", "user", "role"), role);
|
||||
router.use("/user", PermissionHelper.passCheckMiddleware("read", "user", "user"), user);
|
||||
|
||||
export default router;
|
59
src/routes/admin/role.ts
Normal file
59
src/routes/admin/role.ts
Normal file
|
@ -0,0 +1,59 @@
|
|||
import express, { Request, Response } from "express";
|
||||
import PermissionHelper from "../../helpers/permissionHelper";
|
||||
import {
|
||||
createRole,
|
||||
deleteRole,
|
||||
getAllRoles,
|
||||
getRoleById,
|
||||
getRolePermissions,
|
||||
updateRole,
|
||||
updateRolePermissions,
|
||||
} from "../../controller/admin/roleController";
|
||||
|
||||
var router = express.Router({ mergeParams: true });
|
||||
|
||||
router.get("/", async (req: Request, res: Response) => {
|
||||
await getAllRoles(req, res);
|
||||
});
|
||||
|
||||
router.get("/:id", async (req: Request, res: Response) => {
|
||||
await getRoleById(req, res);
|
||||
});
|
||||
|
||||
router.get("/:id/permissions", async (req: Request, res: Response) => {
|
||||
await getRolePermissions(req, res);
|
||||
});
|
||||
|
||||
router.post(
|
||||
"/",
|
||||
PermissionHelper.passCheckMiddleware("create", "user", "role"),
|
||||
async (req: Request, res: Response) => {
|
||||
await createRole(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.patch(
|
||||
"/:id",
|
||||
PermissionHelper.passCheckMiddleware("update", "user", "role"),
|
||||
async (req: Request, res: Response) => {
|
||||
await updateRole(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.patch(
|
||||
"/:id/permissions",
|
||||
PermissionHelper.passCheckMiddleware("update", "user", "role"),
|
||||
async (req: Request, res: Response) => {
|
||||
await updateRolePermissions(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.delete(
|
||||
"/:id",
|
||||
PermissionHelper.passCheckMiddleware("delete", "user", "role"),
|
||||
async (req: Request, res: Response) => {
|
||||
await deleteRole(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
export default router;
|
73
src/routes/admin/user.ts
Normal file
73
src/routes/admin/user.ts
Normal file
|
@ -0,0 +1,73 @@
|
|||
import express, { Request, Response } from "express";
|
||||
import PermissionHelper from "../../helpers/permissionHelper";
|
||||
import {
|
||||
deleteUser,
|
||||
getAllUsers,
|
||||
getUserById,
|
||||
getUserPermissions,
|
||||
getUserRoles,
|
||||
updateUser,
|
||||
updateUserPermissions,
|
||||
updateUserRoles,
|
||||
} from "../../controller/admin/userController";
|
||||
import { inviteUser } from "../../controller/inviteController";
|
||||
|
||||
var router = express.Router({ mergeParams: true });
|
||||
|
||||
router.get("/", async (req: Request, res: Response) => {
|
||||
await getAllUsers(req, res);
|
||||
});
|
||||
|
||||
router.get("/:id", async (req: Request, res: Response) => {
|
||||
await getUserById(req, res);
|
||||
});
|
||||
|
||||
router.get("/:id/permissions", async (req: Request, res: Response) => {
|
||||
await getUserPermissions(req, res);
|
||||
});
|
||||
|
||||
router.get("/:id/roles", async (req: Request, res: Response) => {
|
||||
await getUserRoles(req, res);
|
||||
});
|
||||
|
||||
router.post(
|
||||
"/invite",
|
||||
PermissionHelper.passCheckMiddleware("create", "user", "user"),
|
||||
async (req: Request, res: Response) => {
|
||||
await inviteUser(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.patch(
|
||||
"/:id",
|
||||
PermissionHelper.passCheckMiddleware("update", "user", "user"),
|
||||
async (req: Request, res: Response) => {
|
||||
await updateUser(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.patch(
|
||||
"/:id/permissions",
|
||||
PermissionHelper.passCheckMiddleware("update", "user", "user"),
|
||||
async (req: Request, res: Response) => {
|
||||
await updateUserPermissions(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.patch(
|
||||
"/:id/roles",
|
||||
PermissionHelper.passCheckMiddleware("update", "user", "user"),
|
||||
async (req: Request, res: Response) => {
|
||||
await updateUserRoles(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
router.delete(
|
||||
"/:id",
|
||||
PermissionHelper.passCheckMiddleware("delete", "user", "user"),
|
||||
async (req: Request, res: Response) => {
|
||||
await deleteUser(req, res);
|
||||
}
|
||||
);
|
||||
|
||||
export default router;
|
|
@ -8,7 +8,7 @@ import errorHandler from "../middleware/errorHandler";
|
|||
|
||||
import setup from "./setup";
|
||||
import auth from "./auth";
|
||||
import PermissionHelper from "../helpers/permissionHelper";
|
||||
import admin from "./admin/index";
|
||||
|
||||
export default (app: Express) => {
|
||||
app.set("query parser", "extended");
|
||||
|
@ -24,6 +24,6 @@ export default (app: Express) => {
|
|||
app.use("/setup", allowSetup, setup);
|
||||
app.use("/auth", auth);
|
||||
app.use(authenticate);
|
||||
app.use("/secured", PermissionHelper.passCheckMiddleware("admin", "user"), (req, res) => {});
|
||||
app.use("/admin", admin);
|
||||
app.use(errorHandler);
|
||||
};
|
||||
|
|
|
@ -17,7 +17,7 @@ router.post(
|
|||
"/",
|
||||
ParamaterPassCheckHelper.requiredIncludedMiddleware(["username", "mail", "firstname", "lastname"]),
|
||||
async (req, res) => {
|
||||
await inviteUser(req, res);
|
||||
await inviteUser(req, res, false);
|
||||
}
|
||||
);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue