import express from "express"; import { authenticateToken } from "../middleware/authMiddleware"; import { saveFormData, saveFormDataEnhanced, updateFormData, updateFormDataPartial, deleteFormData, getFormData, getFormDataList, validateFormData, getTableColumns, getTablePrimaryKeys, } from "../controllers/dynamicFormController"; const router = express.Router(); // 모든 라우트에 인증 미들웨어 적용 router.use(authenticateToken); // 폼 데이터 CRUD router.post("/save", saveFormData); // 기존 버전 (레거시 지원) router.post("/save-enhanced", saveFormDataEnhanced); // 개선된 버전 router.put("/:id", updateFormData); router.patch("/:id/partial", updateFormDataPartial); // 부분 업데이트 router.delete("/:id", deleteFormData); router.get("/:id", getFormData); // 화면별 폼 데이터 목록 조회 router.get("/screen/:screenId", getFormDataList); // 폼 데이터 검증 router.post("/validate", validateFormData); // 테이블 컬럼 정보 조회 (검증용) router.get("/table/:tableName/columns", getTableColumns); // 테이블 기본키 조회 router.get("/table/:tableName/primary-keys", getTablePrimaryKeys); export default router;