35 lines
936 B
JavaScript
35 lines
936 B
JavaScript
// routes/deliveryRoutes.js
|
|
|
|
const express = require('express');
|
|
const { protect, authorize } = require('../middleware/auth');
|
|
const trackingController = require('../controllers/orderTrackingController');
|
|
|
|
const router = express.Router();
|
|
|
|
/**
|
|
* @desc Get delivery estimation for pincode
|
|
* @route POST /api/delivery/estimate
|
|
* @access Public
|
|
*/
|
|
router.post('/estimate', trackingController.getDeliveryEstimate);
|
|
|
|
/**
|
|
* @desc Get order tracking details
|
|
* @route GET /api/orders/:orderId/tracking
|
|
* @access Private
|
|
*/
|
|
router.get('/orders/:orderId/tracking', protect, trackingController.getOrderTracking);
|
|
|
|
/**
|
|
* @desc Update order status (Admin)
|
|
* @route PUT /api/admin/orders/:orderId/status
|
|
* @access Private/Admin
|
|
*/
|
|
router.put(
|
|
'/admin/:orderId/status',
|
|
protect,
|
|
authorize('ADMIN', 'SUPER_ADMIN'),
|
|
trackingController.updateOrderStatus
|
|
);
|
|
|
|
module.exports = router; |