Compare commits
4 Commits
56cc2ff2e0
...
4fd05ddd59
| Author | SHA1 | Date |
|---|---|---|
|
|
4fd05ddd59 | |
|
|
436ec1c908 | |
|
|
0f9cd93b8b | |
|
|
e723523ec5 |
|
|
@ -1617,10 +1617,11 @@ export async function getCategoryColumnsByMenu(
|
||||||
logger.info("📥 메뉴별 카테고리 컬럼 조회 요청", { menuObjid, companyCode });
|
logger.info("📥 메뉴별 카테고리 컬럼 조회 요청", { menuObjid, companyCode });
|
||||||
|
|
||||||
if (!menuObjid) {
|
if (!menuObjid) {
|
||||||
return res.status(400).json({
|
res.status(400).json({
|
||||||
success: false,
|
success: false,
|
||||||
message: "메뉴 OBJID가 필요합니다.",
|
message: "메뉴 OBJID가 필요합니다.",
|
||||||
});
|
});
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 1. 형제 메뉴 조회
|
// 1. 형제 메뉴 조회
|
||||||
|
|
@ -1648,11 +1649,12 @@ export async function getCategoryColumnsByMenu(
|
||||||
logger.info("✅ 형제 메뉴 테이블 조회 완료", { tableNames, count: tableNames.length });
|
logger.info("✅ 형제 메뉴 테이블 조회 완료", { tableNames, count: tableNames.length });
|
||||||
|
|
||||||
if (tableNames.length === 0) {
|
if (tableNames.length === 0) {
|
||||||
return res.json({
|
res.json({
|
||||||
success: true,
|
success: true,
|
||||||
data: [],
|
data: [],
|
||||||
message: "형제 메뉴에 연결된 테이블이 없습니다.",
|
message: "형제 메뉴에 연결된 테이블이 없습니다.",
|
||||||
});
|
});
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 3. 테이블들의 카테고리 타입 컬럼 조회 (테이블 라벨 포함)
|
// 3. 테이블들의 카테고리 타입 컬럼 조회 (테이블 라벨 포함)
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,8 @@ export interface CodeInfo {
|
||||||
description?: string | null;
|
description?: string | null;
|
||||||
sort_order: number;
|
sort_order: number;
|
||||||
is_active: string;
|
is_active: string;
|
||||||
company_code: string; // 추가
|
company_code: string;
|
||||||
|
menu_objid?: number | null; // 메뉴 기반 코드 관리용
|
||||||
created_date?: Date | null;
|
created_date?: Date | null;
|
||||||
created_by?: string | null;
|
created_by?: string | null;
|
||||||
updated_date?: Date | null;
|
updated_date?: Date | null;
|
||||||
|
|
|
||||||
|
|
@ -161,6 +161,8 @@ class NumberingRuleService {
|
||||||
companyCode: string,
|
companyCode: string,
|
||||||
menuObjid?: number
|
menuObjid?: number
|
||||||
): Promise<NumberingRuleConfig[]> {
|
): Promise<NumberingRuleConfig[]> {
|
||||||
|
let siblingObjids: number[] = []; // catch 블록에서 접근 가능하도록 함수 최상단에 선언
|
||||||
|
|
||||||
try {
|
try {
|
||||||
logger.info("메뉴별 사용 가능한 채번 규칙 조회 시작 (메뉴 스코프)", {
|
logger.info("메뉴별 사용 가능한 채번 규칙 조회 시작 (메뉴 스코프)", {
|
||||||
companyCode,
|
companyCode,
|
||||||
|
|
@ -170,7 +172,6 @@ class NumberingRuleService {
|
||||||
const pool = getPool();
|
const pool = getPool();
|
||||||
|
|
||||||
// 1. 형제 메뉴 OBJID 조회
|
// 1. 형제 메뉴 OBJID 조회
|
||||||
let siblingObjids: number[] = [];
|
|
||||||
if (menuObjid) {
|
if (menuObjid) {
|
||||||
siblingObjids = await getSiblingMenuObjids(menuObjid);
|
siblingObjids = await getSiblingMenuObjids(menuObjid);
|
||||||
logger.info("형제 메뉴 OBJID 목록", { menuObjid, siblingObjids });
|
logger.info("형제 메뉴 OBJID 목록", { menuObjid, siblingObjids });
|
||||||
|
|
|
||||||
|
|
@ -2057,6 +2057,7 @@ export class TableManagementService {
|
||||||
sortBy?: string;
|
sortBy?: string;
|
||||||
sortOrder?: string;
|
sortOrder?: string;
|
||||||
enableEntityJoin?: boolean;
|
enableEntityJoin?: boolean;
|
||||||
|
companyCode?: string; // 멀티테넌시 필터용
|
||||||
additionalJoinColumns?: Array<{
|
additionalJoinColumns?: Array<{
|
||||||
sourceTable: string;
|
sourceTable: string;
|
||||||
sourceColumn: string;
|
sourceColumn: string;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue