mirror of
https://github.com/donpat1to/Schichtenplaner.git
synced 2025-12-01 06:55:45 +01:00
added backend for user management
This commit is contained in:
30
backend/src/routes/employees.ts
Normal file
30
backend/src/routes/employees.ts
Normal file
@@ -0,0 +1,30 @@
|
||||
// backend/src/routes/employees.ts
|
||||
import express from 'express';
|
||||
import { authMiddleware, requireRole } from '../middleware/auth.js';
|
||||
import {
|
||||
getEmployees,
|
||||
getEmployee,
|
||||
createEmployee,
|
||||
updateEmployee,
|
||||
deleteEmployee,
|
||||
getAvailabilities,
|
||||
updateAvailabilities
|
||||
} from '../controllers/employeeController.js';
|
||||
|
||||
const router = express.Router();
|
||||
|
||||
// Alle Routes benötigen Authentication
|
||||
router.use(authMiddleware);
|
||||
|
||||
// Employee CRUD Routes
|
||||
router.get('/', requireRole(['admin', 'instandhalter']), getEmployees);
|
||||
router.get('/:id', requireRole(['admin', 'instandhalter']), getEmployee);
|
||||
router.post('/', requireRole(['admin']), createEmployee);
|
||||
router.put('/:id', requireRole(['admin']), updateEmployee);
|
||||
router.delete('/:id', requireRole(['admin']), deleteEmployee);
|
||||
|
||||
// Availability Routes
|
||||
router.get('/:employeeId/availabilities', requireRole(['admin', 'instandhalter']), getAvailabilities);
|
||||
router.put('/:employeeId/availabilities', requireRole(['admin', 'instandhalter']), updateAvailabilities);
|
||||
|
||||
export default router;
|
||||
Reference in New Issue
Block a user