Files
Webklar-Kundenbereich/server/routes/admin/employees.js
Kenso Grimm cf4b3ce4d1 chore: aktuellen Live-Stand sichern (Admin-API, Services, Auth-Erweiterungen)
Sichert den bisher uncommitteten Produktionsstand des Kundenbereich-Servers,
damit kuenftige Deploys (git reset --hard) nichts mehr verwerfen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-11 16:24:53 +00:00

52 lines
1.3 KiB
JavaScript

import { Router } from 'express'
import { requireAppwriteStaff } from '../../middleware/appwriteStaff.js'
import {
createEmployeeWithLogin,
deleteEmployeeWithLogin,
listEmployeesForAdmin,
updateEmployeeWithLogin,
} from '../../services/employeeAdmin.js'
const router = Router()
router.use(requireAppwriteStaff)
router.get('/', async (_req, res) => {
try {
return res.json({ employees: await listEmployeesForAdmin() })
} catch (error) {
return res.status(error.status || 500).json({ error: error.message })
}
})
router.post('/', async (req, res) => {
try {
return res.status(201).json(await createEmployeeWithLogin(req.body || {}))
} catch (error) {
return res.status(error.status || 500).json({ error: error.message })
}
})
router.patch('/:employeeId', async (req, res) => {
try {
return res.json(await updateEmployeeWithLogin(
req.params.employeeId,
req.body || {},
req.appwriteUser.$id
))
} catch (error) {
return res.status(error.status || 500).json({ error: error.message })
}
})
router.delete('/:employeeId', async (req, res) => {
try {
return res.json(
await deleteEmployeeWithLogin(req.params.employeeId, req.appwriteUser.$id)
)
} catch (error) {
return res.status(error.status || 500).json({ error: error.message })
}
})
export default router