ERP-node/backend-node/src/routes/batchRoutes.ts

70 lines
2.0 KiB
TypeScript

// 배치관리 라우트
// 작성일: 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;