ERP-node/backend-node/src/routes/flowExternalDbConnectionRou...

49 lines
1.5 KiB
TypeScript
Raw Normal View History

2025-10-20 17:50:27 +09:00
import { Router } from "express";
import { FlowExternalDbConnectionController } from "../controllers/flowExternalDbConnectionController";
import { authenticateToken } from "../middleware/authMiddleware";
const router = Router();
const controller = new FlowExternalDbConnectionController();
/**
* DB
* DB
*/
// 모든 외부 DB 연결 목록 조회 (읽기 전용 - 인증 불필요)
// 민감한 정보(비밀번호)는 반환하지 않으므로 안전
router.get("/", (req, res) => controller.getAll(req, res));
// 특정 외부 DB 연결 조회
router.get("/:id", authenticateToken, (req, res) =>
controller.getById(req, res)
);
// 새 외부 DB 연결 생성
router.post("/", authenticateToken, (req, res) => controller.create(req, res));
// 외부 DB 연결 수정
router.put("/:id", authenticateToken, (req, res) =>
controller.update(req, res)
);
// 외부 DB 연결 삭제
router.delete("/:id", authenticateToken, (req, res) =>
controller.delete(req, res)
);
// 외부 DB 연결 테스트
router.post("/:id/test", authenticateToken, (req, res) =>
controller.testConnection(req, res)
);
// 외부 DB의 테이블 목록 조회 (읽기 전용 - 인증 불필요)
router.get("/:id/tables", (req, res) => controller.getTables(req, res));
// 외부 DB의 특정 테이블의 컬럼 목록 조회 (읽기 전용 - 인증 불필요)
router.get("/:id/tables/:tableName/columns", (req, res) =>
controller.getTableColumns(req, res)
);
export default router;