feat: 카테고리 값 삭제 기능 개선 및 하위 카테고리 수집 로직 추가
- 카테고리 값 삭제 시, 자기 자신과 모든 하위 카테고리 ID를 재귀적으로 수집하는 기능을 추가하였습니다. - 삭제 대상 카테고리 값 수집 완료 후, 하위 카테고리부터 역순으로 삭제하는 로직을 구현하였습니다. - 관련된 로그 메시지를 추가하여 삭제 과정과 결과를 기록하도록 하였습니다. - 화면 관리 기능에서 하위 항목 개수를 계산하는 로직을 개선하여 사용자에게 더 정확한 정보를 제공하도록 하였습니다.
This commit is contained in:
@@ -112,6 +112,7 @@ import "@/lib/registry/utils/performanceOptimizer";
|
||||
interface ScreenDesignerProps {
|
||||
selectedScreen: ScreenDefinition | null;
|
||||
onBackToList: () => void;
|
||||
onScreenUpdate?: (updatedScreen: Partial<ScreenDefinition>) => void;
|
||||
}
|
||||
|
||||
// 패널 설정 (통합 패널 1개)
|
||||
@@ -127,7 +128,7 @@ const panelConfigs: PanelConfig[] = [
|
||||
},
|
||||
];
|
||||
|
||||
export default function ScreenDesigner({ selectedScreen, onBackToList }: ScreenDesignerProps) {
|
||||
export default function ScreenDesigner({ selectedScreen, onBackToList, onScreenUpdate }: ScreenDesignerProps) {
|
||||
// 패널 상태 관리
|
||||
const { panelStates, togglePanel, openPanel, closePanel } = usePanelState(panelConfigs);
|
||||
|
||||
@@ -1683,6 +1684,11 @@ export default function ScreenDesigner({ selectedScreen, onBackToList }: ScreenD
|
||||
console.log("✅ 저장 성공! 메뉴 할당 모달 열기");
|
||||
toast.success("화면이 저장되었습니다.");
|
||||
|
||||
// 저장 성공 후 부모에게 화면 정보 업데이트 알림 (테이블명 즉시 반영)
|
||||
if (onScreenUpdate && currentMainTableName) {
|
||||
onScreenUpdate({ tableName: currentMainTableName });
|
||||
}
|
||||
|
||||
// 저장 성공 후 메뉴 할당 모달 열기
|
||||
setShowMenuAssignmentModal(true);
|
||||
} catch (error) {
|
||||
@@ -1691,7 +1697,7 @@ export default function ScreenDesigner({ selectedScreen, onBackToList }: ScreenD
|
||||
} finally {
|
||||
setIsSaving(false);
|
||||
}
|
||||
}, [selectedScreen, layout, screenResolution, tables]);
|
||||
}, [selectedScreen, layout, screenResolution, tables, onScreenUpdate]);
|
||||
|
||||
// 다국어 자동 생성 핸들러
|
||||
const handleGenerateMultilang = useCallback(async () => {
|
||||
|
||||
Reference in New Issue
Block a user