/**
 * 배송/화물 관리 라우트
 */

import express from 'express';
import * as deliveryController from '../controllers/deliveryController';
import { authenticateToken } from '../middleware/authMiddleware';

const router = express.Router();

// 모든 라우트에 인증 미들웨어 적용
router.use(authenticateToken);

/**
 * GET /api/delivery/status
 * 배송 현황 조회 (배송 목록 + 이슈 + 오늘 통계)
 */
router.get('/status', deliveryController.getDeliveryStatus);

/**
 * GET /api/delivery/delayed
 * 지연 배송 목록 조회
 */
router.get('/delayed', deliveryController.getDelayedDeliveries);

/**
 * GET /api/delivery/issues
 * 고객 이슈 목록 조회
 * Query: status (optional)
 */
router.get('/issues', deliveryController.getCustomerIssues);

/**
 * PUT /api/delivery/:id/status
 * 배송 상태 업데이트
 */
router.put('/:id/status', deliveryController.updateDeliveryStatus);

/**
 * PUT /api/delivery/issues/:id/status
 * 고객 이슈 상태 업데이트
 */
router.put('/issues/:id/status', deliveryController.updateIssueStatus);

export default router;

