Files
starr-philproperties/routes/admin/task.routes.js
T
kennethobsequio 1e567397d0 not yet
Signed-off-by: Kenneth Obsequio <k80308392@gmail.com>
2026-05-21 11:48:37 +08:00

35 lines
2.5 KiB
JavaScript

const router = require("express").Router();
const controller = require("../../controllers/admin/task.controller");
const { sensitiveOpsLimiter } = require("../../middleware/rateLimiter.middleware");
router.get("/field-values", controller.getTaskFieldValues);
// ─── Task Lists ───────────────────────────────────────────────────────────────
router.get("/", controller.getTaskLists);
router.get("/archived", controller.getArchivedTaskLists);
router.post("/", sensitiveOpsLimiter, controller.createTaskList);
router.post("/bulk-archive", sensitiveOpsLimiter, controller.bulkArchiveTaskLists);
router.post("/bulk-restore", sensitiveOpsLimiter, controller.bulkRestoreTaskLists);
router.get("/:taskListId", controller.getTaskList);
router.patch("/:taskListId", sensitiveOpsLimiter, controller.updateTaskList);
router.delete("/:taskListId", sensitiveOpsLimiter, controller.archiveTaskList);
router.patch("/:taskListId/restore", sensitiveOpsLimiter, controller.restoreTaskList);
router.get("/:taskListId/tasks/field-values", controller.getTaskFieldValues);
// ─── Task List Groups ─────────────────────────────────────────────────────────
router.get("/:taskListId/groups", controller.getTaskListGroups);
router.post("/:taskListId/groups/assign", sensitiveOpsLimiter, controller.assignGroups);
router.post("/:taskListId/groups/unassign", sensitiveOpsLimiter, controller.unassignGroups);
// ─── Tasks (nested under task-list) ──────────────────────────────────────────
router.get("/:taskListId/tasks", controller.getTasks);
router.get("/:taskListId/tasks/archived", controller.getArchivedTasks);
router.post("/:taskListId/tasks", sensitiveOpsLimiter, controller.createTask);
router.post("/:taskListId/tasks/bulk-archive", sensitiveOpsLimiter, controller.bulkArchiveTasks);
router.post("/:taskListId/tasks/bulk-restore", sensitiveOpsLimiter, controller.bulkRestoreTasks);
router.get("/:taskListId/tasks/:taskId", controller.getTask);
router.patch("/:taskListId/tasks/:taskId", sensitiveOpsLimiter, controller.updateTask);
router.delete("/:taskListId/tasks/:taskId", sensitiveOpsLimiter, controller.archiveTask);
router.patch("/:taskListId/tasks/:taskId/restore", sensitiveOpsLimiter, controller.restoreTask);
module.exports = router;