2025-11-05 15:23:57 +09:00
|
|
|
import { Router } from "express";
|
2025-11-07 10:22:49 +09:00
|
|
|
import {
|
|
|
|
|
getCategoryColumns,
|
|
|
|
|
getCategoryValues,
|
|
|
|
|
addCategoryValue,
|
|
|
|
|
updateCategoryValue,
|
|
|
|
|
deleteCategoryValue,
|
|
|
|
|
bulkDeleteCategoryValues,
|
|
|
|
|
reorderCategoryValues,
|
2025-11-13 12:17:10 +09:00
|
|
|
getColumnMapping,
|
|
|
|
|
createColumnMapping,
|
|
|
|
|
getLogicalColumns,
|
|
|
|
|
deleteColumnMapping,
|
2025-11-13 14:41:24 +09:00
|
|
|
getSecondLevelMenus,
|
2025-11-07 10:22:49 +09:00
|
|
|
} from "../controllers/tableCategoryValueController";
|
2025-11-05 15:23:57 +09:00
|
|
|
import { authenticateToken } from "../middleware/authMiddleware";
|
|
|
|
|
|
|
|
|
|
const router = Router();
|
|
|
|
|
|
|
|
|
|
// 모든 라우트에 인증 미들웨어 적용
|
|
|
|
|
router.use(authenticateToken);
|
|
|
|
|
|
|
|
|
|
// 테이블의 카테고리 컬럼 목록 조회
|
2025-11-07 10:22:49 +09:00
|
|
|
router.get("/:tableName/columns", getCategoryColumns);
|
2025-11-05 15:23:57 +09:00
|
|
|
|
|
|
|
|
// 카테고리 값 목록 조회
|
2025-11-07 10:22:49 +09:00
|
|
|
router.get("/:tableName/:columnName/values", getCategoryValues);
|
2025-11-05 15:23:57 +09:00
|
|
|
|
|
|
|
|
// 카테고리 값 추가
|
2025-11-07 10:22:49 +09:00
|
|
|
router.post("/values", addCategoryValue);
|
2025-11-05 15:23:57 +09:00
|
|
|
|
|
|
|
|
// 카테고리 값 수정
|
2025-11-07 10:22:49 +09:00
|
|
|
router.put("/values/:valueId", updateCategoryValue);
|
2025-11-05 15:23:57 +09:00
|
|
|
|
|
|
|
|
// 카테고리 값 삭제
|
2025-11-07 10:22:49 +09:00
|
|
|
router.delete("/values/:valueId", deleteCategoryValue);
|
2025-11-05 15:23:57 +09:00
|
|
|
|
|
|
|
|
// 카테고리 값 일괄 삭제
|
2025-11-07 10:22:49 +09:00
|
|
|
router.post("/values/bulk-delete", bulkDeleteCategoryValues);
|
2025-11-05 15:23:57 +09:00
|
|
|
|
|
|
|
|
// 카테고리 값 순서 변경
|
2025-11-07 10:22:49 +09:00
|
|
|
router.post("/values/reorder", reorderCategoryValues);
|
2025-11-05 15:23:57 +09:00
|
|
|
|
2025-11-13 12:17:10 +09:00
|
|
|
// ================================================
|
|
|
|
|
// 컬럼 매핑 관련 라우트 (논리명 ↔ 물리명)
|
|
|
|
|
// ================================================
|
|
|
|
|
|
2025-11-13 14:41:24 +09:00
|
|
|
// 2레벨 메뉴 목록 조회 (메뉴 선택용)
|
|
|
|
|
router.get("/second-level-menus", getSecondLevelMenus);
|
|
|
|
|
|
2025-11-13 12:17:10 +09:00
|
|
|
// 컬럼 매핑 조회
|
|
|
|
|
router.get("/column-mapping/:tableName/:menuObjid", getColumnMapping);
|
|
|
|
|
|
|
|
|
|
// 논리적 컬럼 목록 조회
|
|
|
|
|
router.get("/logical-columns/:tableName/:menuObjid", getLogicalColumns);
|
|
|
|
|
|
|
|
|
|
// 컬럼 매핑 생성/수정
|
|
|
|
|
router.post("/column-mapping", createColumnMapping);
|
|
|
|
|
|
|
|
|
|
// 컬럼 매핑 삭제
|
|
|
|
|
router.delete("/column-mapping/:mappingId", deleteColumnMapping);
|
|
|
|
|
|
2025-11-05 15:23:57 +09:00
|
|
|
export default router;
|
|
|
|
|
|