// 배치관리 라우트 // 작성일: 2024-12-24 import { Router } from "express"; import { BatchController } from "../controllers/batchController"; import { authenticateToken } from "../middleware/authMiddleware"; const router = Router(); /** * GET /api/batch-configs * 배치 설정 목록 조회 */ router.get("/", authenticateToken, BatchController.getBatchConfigs); /** * GET /api/batch-configs/connections * 사용 가능한 커넥션 목록 조회 */ router.get("/connections", BatchController.getAvailableConnections); /** * GET /api/batch-configs/connections/:type/tables * 내부 DB 테이블 목록 조회 */ router.get("/connections/:type/tables", authenticateToken, BatchController.getTablesFromConnection); /** * GET /api/batch-configs/connections/:type/:id/tables * 외부 DB 테이블 목록 조회 */ router.get("/connections/:type/:id/tables", authenticateToken, BatchController.getTablesFromConnection); /** * GET /api/batch-configs/connections/:type/tables/:tableName/columns * 내부 DB 테이블 컬럼 정보 조회 */ router.get("/connections/:type/tables/:tableName/columns", authenticateToken, BatchController.getTableColumns); /** * GET /api/batch-configs/connections/:type/:id/tables/:tableName/columns * 외부 DB 테이블 컬럼 정보 조회 */ router.get("/connections/:type/:id/tables/:tableName/columns", authenticateToken, BatchController.getTableColumns); /** * GET /api/batch-configs/:id * 특정 배치 설정 조회 */ router.get("/:id", authenticateToken, BatchController.getBatchConfigById); /** * POST /api/batch-configs * 배치 설정 생성 */ router.post("/", authenticateToken, BatchController.createBatchConfig); /** * PUT /api/batch-configs/:id * 배치 설정 수정 */ router.put("/:id", authenticateToken, BatchController.updateBatchConfig); /** * DELETE /api/batch-configs/:id * 배치 설정 삭제 (논리 삭제) */ router.delete("/:id", authenticateToken, BatchController.deleteBatchConfig); export default router;