38 lines
2.2 KiB
JavaScript
38 lines
2.2 KiB
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
|
|
const authMiddleware = require('../middleware/authMiddleware');
|
|
const adminOnly = require('../middleware/adminOnly');
|
|
const AdminUserController = require('../controller/admin/AdminUserController');
|
|
const DocumentTemplateController = require('../controller/documentTemplate/DocumentTemplateController');
|
|
const CoffeeController = require('../controller/admin/CoffeeController');
|
|
const CompanySettingsController = require('../controller/admin/CompanySettingsController');
|
|
const DashboardPlatformsController = require('../controller/admin/DashboardPlatformsController');
|
|
const ShippingFeesController = require('../controller/admin/ShippingFeesController');
|
|
const I18nPreferencesController = require('../controller/admin/I18nPreferencesController');
|
|
const { getRouterPathFromApiEnv } = require('../utils/apiPath');
|
|
|
|
const I18N_PREFERENCES_ROUTE_PATH = getRouterPathFromApiEnv('BACKEND_I18N_PREFERENCES_PATH', '/api/admin/i18n/preferences');
|
|
const multer = require('multer');
|
|
const upload = multer({ storage: multer.memoryStorage() });
|
|
|
|
// PUT /admin/users/:id/permissions (moved from routes/admin.js)
|
|
router.put('/admin/users/:id/permissions', authMiddleware, adminOnly, AdminUserController.updateUserPermissions);
|
|
|
|
// PUT /document-templates/:id (moved from routes/documentTemplates.js)
|
|
router.put('/document-templates/:id', authMiddleware, upload.single('file'), DocumentTemplateController.updateTemplate);
|
|
// Admin: update coffee product (supports picture file replacement)
|
|
router.put('/admin/coffee/:id', authMiddleware, adminOnly, upload.single('picture'), CoffeeController.update);
|
|
|
|
// Admin: update company settings (invoice address etc.)
|
|
router.put('/admin/company-settings', authMiddleware, adminOnly, CompanySettingsController.update);
|
|
|
|
// Admin: update dashboard platform
|
|
router.put('/admin/dashboard-platforms/:id', authMiddleware, adminOnly, DashboardPlatformsController.update);
|
|
|
|
// Admin: update shipping fee for a piece count (60/120)
|
|
router.put('/admin/shipping-fees/:pieceCount', authMiddleware, adminOnly, ShippingFeesController.updatePrice);
|
|
router.put(I18N_PREFERENCES_ROUTE_PATH, authMiddleware, adminOnly, I18nPreferencesController.put);
|
|
|
|
module.exports = router;
|