- 테이블 컬럼의 DISTINCT 값을 조회하는 API를 추가하였습니다. 이 API는 특정 테이블과 컬럼에서 DISTINCT 값을 반환하여 선택박스 옵션으로 사용할 수 있도록 합니다. - API 호출 시 멀티테넌시를 고려하여 회사 코드에 따라 필터링을 적용하였습니다. - 관련된 라우터 설정을 추가하여 API 접근을 가능하게 하였습니다. - 프론트엔드에서 DISTINCT 값을 조회할 수 있도록 UnifiedSelect 컴포넌트를 업데이트하였습니다.
30 lines
888 B
TypeScript
30 lines
888 B
TypeScript
import { Router } from "express";
|
|
import { authenticateToken } from "../middleware/authMiddleware";
|
|
import { searchEntity, getEntityOptions, getDistinctColumnValues } from "../controllers/entitySearchController";
|
|
|
|
const router = Router();
|
|
|
|
/**
|
|
* 엔티티 검색 API
|
|
* GET /api/entity-search/:tableName
|
|
*/
|
|
router.get("/:tableName", authenticateToken, searchEntity);
|
|
|
|
export default router;
|
|
|
|
// 엔티티 옵션 라우터 (UnifiedSelect용)
|
|
export const entityOptionsRouter = Router();
|
|
|
|
/**
|
|
* 엔티티 옵션 조회 API
|
|
* GET /api/entity/:tableName/options
|
|
*/
|
|
entityOptionsRouter.get("/:tableName/options", authenticateToken, getEntityOptions);
|
|
|
|
/**
|
|
* 테이블 컬럼의 DISTINCT 값 조회 API (inputType: select 용)
|
|
* GET /api/entity/:tableName/distinct/:columnName
|
|
*/
|
|
entityOptionsRouter.get("/:tableName/distinct/:columnName", authenticateToken, getDistinctColumnValues);
|
|
|