ajinkya-mhetre-mern
Version:
A MERN starter with frontend and backend folders
30 lines (24 loc) • 786 B
JavaScript
// ===== src/routes/customer.js =====
const express = require('express');
const router = express.Router();
const {
getAllProducts,
getProduct,
placeOrder,
getMyOrders,
getOrder,
cancelOrder
} = require('../controllers/customerController');
const auth = require('../middleware/auth');
const { checkRole } = require('../middleware/roleCheck');
// Public routes (no auth required)
router.get('/products', getAllProducts);
router.get('/products/:productId', getProduct);
// Protected customer routes
router.use(auth);
router.use(checkRole('customer'));
router.post('/orders', placeOrder);
router.get('/orders', getMyOrders);
router.get('/orders/:orderId', getOrder);
router.put('/orders/:orderId/cancel', cancelOrder);
module.exports = router;