2025-09-08 16:46:53 +09:00
|
|
|
import express from "express";
|
|
|
|
|
import { authenticateToken } from "../middleware/authMiddleware";
|
|
|
|
|
import {
|
|
|
|
|
createTableRelationship,
|
|
|
|
|
getTableRelationships,
|
|
|
|
|
getTableRelationship,
|
|
|
|
|
updateTableRelationship,
|
|
|
|
|
deleteTableRelationship,
|
|
|
|
|
createDataLink,
|
|
|
|
|
getLinkedDataByRelationship,
|
|
|
|
|
deleteDataLink,
|
2025-09-08 18:18:47 +09:00
|
|
|
getTableData,
|
2025-09-08 16:46:53 +09:00
|
|
|
} from "../controllers/dataflowController";
|
|
|
|
|
|
|
|
|
|
const router = express.Router();
|
|
|
|
|
|
|
|
|
|
// 모든 라우트에 인증 미들웨어 적용
|
|
|
|
|
router.use(authenticateToken);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 테이블 관계 생성
|
|
|
|
|
* POST /api/dataflow/table-relationships
|
|
|
|
|
*/
|
|
|
|
|
router.post("/table-relationships", createTableRelationship);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 테이블 관계 목록 조회 (회사별)
|
|
|
|
|
* GET /api/dataflow/table-relationships
|
|
|
|
|
*/
|
|
|
|
|
router.get("/table-relationships", getTableRelationships);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 특정 테이블 관계 조회
|
|
|
|
|
* GET /api/dataflow/table-relationships/:relationshipId
|
|
|
|
|
*/
|
|
|
|
|
router.get("/table-relationships/:relationshipId", getTableRelationship);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 테이블 관계 수정
|
|
|
|
|
* PUT /api/dataflow/table-relationships/:relationshipId
|
|
|
|
|
*/
|
|
|
|
|
router.put("/table-relationships/:relationshipId", updateTableRelationship);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 테이블 관계 삭제
|
|
|
|
|
* DELETE /api/dataflow/table-relationships/:relationshipId
|
|
|
|
|
*/
|
|
|
|
|
router.delete("/table-relationships/:relationshipId", deleteTableRelationship);
|
|
|
|
|
|
|
|
|
|
// ==================== 데이터 연결 관리 라우트 ====================
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 데이터 연결 생성
|
|
|
|
|
* POST /api/dataflow/data-links
|
|
|
|
|
*/
|
|
|
|
|
router.post("/data-links", createDataLink);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 관계별 연결된 데이터 조회
|
|
|
|
|
* GET /api/dataflow/data-links/relationship/:relationshipId
|
|
|
|
|
*/
|
|
|
|
|
router.get(
|
|
|
|
|
"/data-links/relationship/:relationshipId",
|
|
|
|
|
getLinkedDataByRelationship
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 데이터 연결 삭제
|
|
|
|
|
* DELETE /api/dataflow/data-links/:bridgeId
|
|
|
|
|
*/
|
|
|
|
|
router.delete("/data-links/:bridgeId", deleteDataLink);
|
|
|
|
|
|
2025-09-08 18:18:47 +09:00
|
|
|
// ==================== 테이블 데이터 조회 라우트 ====================
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 테이블 실제 데이터 조회
|
|
|
|
|
* GET /api/dataflow/table-data/:tableName
|
|
|
|
|
*/
|
|
|
|
|
router.get("/table-data/:tableName", getTableData);
|
|
|
|
|
|
2025-09-08 16:46:53 +09:00
|
|
|
export default router;
|