삭제버튼 동작

This commit is contained in:
kjs
2025-10-23 17:55:04 +09:00
parent 4f2dd0710e
commit c228ddb498
7 changed files with 120 additions and 32 deletions

View File

@@ -29,6 +29,7 @@ export interface ButtonPrimaryComponentProps extends ComponentRendererProps {
tableName?: string;
onRefresh?: () => void;
onClose?: () => void;
onFlowRefresh?: () => void;
// 폼 데이터 관련
originalData?: Record<string, any>; // 부분 업데이트용 원본 데이터
@@ -64,6 +65,7 @@ export const ButtonPrimaryComponent: React.FC<ButtonPrimaryComponentProps> = ({
tableName,
onRefresh,
onClose,
onFlowRefresh,
selectedRows,
selectedRowsData,
flowSelectedData,
@@ -418,8 +420,14 @@ export const ButtonPrimaryComponent: React.FC<ButtonPrimaryComponentProps> = ({
});
// 삭제 액션인데 선택된 데이터가 없으면 경고 메시지 표시하고 중단
if (processedConfig.action.type === "delete" && (!selectedRowsData || selectedRowsData.length === 0)) {
console.log("⚠️ 삭제할 데이터가 선택되지 않았습니다.");
const hasDataToDelete =
(selectedRowsData && selectedRowsData.length > 0) || (flowSelectedData && flowSelectedData.length > 0);
if (processedConfig.action.type === "delete" && !hasDataToDelete) {
console.log("⚠️ 삭제할 데이터가 선택되지 않았습니다.", {
hasSelectedRowsData: !!(selectedRowsData && selectedRowsData.length > 0),
hasFlowSelectedData: !!(flowSelectedData && flowSelectedData.length > 0),
});
toast.warning("삭제할 항목을 먼저 선택해주세요.");
return;
}
@@ -432,6 +440,7 @@ export const ButtonPrimaryComponent: React.FC<ButtonPrimaryComponentProps> = ({
onFormDataChange,
onRefresh,
onClose,
onFlowRefresh, // 플로우 새로고침 콜백 추가
// 테이블 선택된 행 정보 추가
selectedRows,
selectedRowsData,
@@ -517,6 +526,7 @@ export const ButtonPrimaryComponent: React.FC<ButtonPrimaryComponentProps> = ({
onSelectedRowsChange: _onSelectedRowsChange,
flowSelectedData: _flowSelectedData, // 플로우 선택 데이터 필터링
flowSelectedStepId: _flowSelectedStepId, // 플로우 선택 스텝 ID 필터링
onFlowRefresh: _onFlowRefresh, // 플로우 새로고침 콜백 필터링
originalData: _originalData, // 부분 업데이트용 원본 데이터 필터링
refreshKey: _refreshKey, // 필터링 추가
isInModal: _isInModal, // 필터링 추가