Trying add reload page in DeleteDialog on transfertype

This commit is contained in:
bagusajisaputroo
2025-04-11 11:31:43 +07:00
parent 211392c7b3
commit cb9b0e96a4

View File

@ -19,34 +19,48 @@ const DeleteDialog = () => {
message: '' message: ''
}); });
const doDeleteTransferType = useCallback(async () => {
const doDeleteTransferType = useCallback(async (id:string|null) => {
if (!selectedTransferType) { if (!selectedTransferType) {
toast.error('No Transfer Type selected'); toast.error('No Transfer Type selected');
return; return;
} }
// Kirim enforce=false untuk memastikan soft delete try {
const response = await DeleteData(`${API_URL}/transactiontype/delete/${selectedTransferType}/false`, { // Kirim enforce=false untuk memastikan soft delete
id: selectedTransferType const response = await DeleteData(`${API_URL}/transactiontype/delete/${selectedTransferType}/false`, {
}); id: selectedTransferType
});
if (response?.status) { console.log("status", response?.status)
setAlert({ show: false, message: '' });
handleDeleteDialog(false, null); if (response?.status) {
reload(); setAlert({ show: false, message: '' });
setTimeout(() => toast.success('Success Delete Transaction Type'), 0); handleDeleteDialog(false, null);
} else {
setAlert({ show: true, message: response?.message }); // First reload the data grid
// setTimeout(() => toast.error('Failed Delete Product'), 0); reload();
// Show success toast
toast.success('Success Delete Transaction Type');
// Then reload the entire page after a short delay
setTimeout(() => {
window.location.reload();
}, 300); // Small delay to ensure the toast is visible
} else {
setAlert({ show: true, message: response?.message || 'Failed to delete transaction type' });
}
} catch (error) {
console.error('Delete error:', error);
setAlert({ show: true, message: 'An error occurred while deleting' });
} }
}, [selectedTransferType, DeleteData, handleDeleteDialog, reload]); }, [selectedTransferType, DeleteData, handleDeleteDialog, reload]);
const handleDelete = ((id:string|null) => { const handleDelete = () => {
console.log(id); doDeleteTransferType();
doDeleteTransferType(id); };
})
console.log('selectedTransferType:', selectedTransferType);
return ( return (
<Dialog open={showDeleteDialog} onOpenChange={(open) => handleDeleteDialog(open, null)}> <Dialog open={showDeleteDialog} onOpenChange={(open) => handleDeleteDialog(open, null)}>
@ -65,10 +79,10 @@ const DeleteDialog = () => {
)} )}
</DialogHeader> </DialogHeader>
<DialogFooter className="flex justify-end items-center gap-4 mt-3"> <DialogFooter className="flex justify-end items-center gap-4 mt-3">
<Button variant={'outline'} onClick={() => handleDeleteDialog(false, null)}> <Button variant="outline" onClick={() => handleDeleteDialog(false, null)}>
Cancel Cancel
</Button> </Button>
<Button variant={'destructive'} onClick={() => handleDelete(selectedTransferType)}> <Button variant="destructive" onClick={handleDelete}>
Delete Delete
</Button> </Button>
</DialogFooter> </DialogFooter>
@ -77,5 +91,4 @@ const DeleteDialog = () => {
); );
}; };
export default DeleteDialog; export default DeleteDialog;
export { DeleteDialog };