// routes/departmentRoutes.js const express = require('express'); const router = express.Router(); const departmentController = require('../controllers/departmentController'); const { requireAuth, requireRole } = require('../middlewares/authMiddleware'); // 부서 목록 조회 (인증 필요) router.get('/', requireAuth, departmentController.getAll); // 부서 상세 조회 router.get('/:id', requireAuth, departmentController.getById); // 부서별 작업자 조회 router.get('/:id/workers', requireAuth, departmentController.getWorkers); // 부서 생성 (관리자만) router.post('/', requireAuth, requireRole(['Admin', 'System Admin']), departmentController.create); // 부서 수정 (관리자만) router.put('/:id', requireAuth, requireRole(['Admin', 'System Admin']), departmentController.update); // 부서 삭제 (관리자만) router.delete('/:id', requireAuth, requireRole(['Admin', 'System Admin']), departmentController.delete); // 작업자 부서 이동 (관리자만) router.post('/move-worker', requireAuth, requireRole(['Admin', 'System Admin']), departmentController.moveWorker); // 여러 작업자 부서 일괄 이동 (관리자만) router.post('/move-workers', requireAuth, requireRole(['Admin', 'System Admin']), departmentController.moveWorkers); module.exports = router;