const express = require("express"); const router = express.Router(); const { authMiddleware, adminMiddleware } = require("../middleware"); const repo = require("../repo"); router.patch( "/driver/weekly-schedules/:scheduleId/status", authMiddleware, async (req, res) => { const out = await repo.updateWeeklyScheduleStatus(req); return res.status(out.statusCode).json(out.body); }, ); router.get( "/admin/weekly-schedules", authMiddleware, adminMiddleware, async (req, res) => { const out = await repo.listWeeklySchedules(req); return res.status(out.statusCode).json(out.body); }, ); router.post( "/admin/weekly-schedules", authMiddleware, adminMiddleware, async (req, res) => { const out = await repo.createWeeklySchedule(req); return res.status(out.statusCode).json(out.body); }, ); router.post( "/admin/weekly-schedules/bulk", authMiddleware, adminMiddleware, async (req, res) => { const out = await repo.bulkCreateWeeklySchedules(req); return res.status(out.statusCode).json(out.body); }, ); router.put( "/admin/weekly-schedules/:scheduleId", authMiddleware, adminMiddleware, async (req, res) => { const out = await repo.updateWeeklySchedule(req); return res.status(out.statusCode).json(out.body); }, ); router.put( "/admin/weekly-schedules/:scheduleId/shift", authMiddleware, adminMiddleware, async (req, res) => { const out = await repo.updateWeeklyScheduleShift(req); return res.status(out.statusCode).json(out.body); }, ); router.delete( "/admin/weekly-schedules/:scheduleId", authMiddleware, adminMiddleware, async (req, res) => { const out = await repo.deleteWeeklySchedule(req); return res.status(out.statusCode).json(out.body); }, ); module.exports = router;