eliminacion y cracion de registros reactivos

This commit is contained in:
2026-05-14 11:28:09 -05:00
parent 6f2ce605a8
commit 23ae03343b
4 changed files with 34 additions and 16 deletions

View File

@@ -3,7 +3,7 @@ import type { UnitConversion } from '$lib/api/dashboard/a76/general_catalogs/uni
import { renderComponent } from '$lib/components/ui/data-table';
import DataTableActions from './data-table-actions.svelte';
export function createColumns(
onSuccess?: () => void,
onSuccess?: (item?: UnitConversion) => void,
{ canEdit = true, canDelete = true }: { canEdit?: boolean; canDelete?: boolean } = {}
): ColumnDef<UnitConversion>[] {
return [

View File

@@ -24,7 +24,7 @@
item?: UnitConversion | null;
conversion?: UnitConversion | null;
mode?: 'create' | 'edit';
onSuccess?: () => void;
onSuccess?: (item: UnitConversion) => void;
} = $props();
// Atajos
@@ -90,14 +90,15 @@
throw new Error('El factor de conversión debe ser un número válido');
}
let saved: UnitConversion;
if (isEdit && currentConversion) {
await updateUnitConversion(currentConversion.id, dataToSend, companyId);
saved = await updateUnitConversion(currentConversion.id, dataToSend, companyId);
} else {
await createUnitConversion(dataToSend, companyId);
saved = await createUnitConversion(dataToSend, companyId);
}
open = false;
if (onSuccess) onSuccess();
if (onSuccess) onSuccess(saved);
} catch (e) {
error = e instanceof Error ? e.message : 'Error al guardar';
} finally {

View File

@@ -14,7 +14,7 @@
canDelete = true
}: {
conversion: UnitConversion;
onSuccess?: () => void;
onSuccess?: (item?: UnitConversion, isDelete?: boolean) => void;
canEdit?: boolean;
canDelete?: boolean;
} = $props();
@@ -40,7 +40,7 @@
await deleteUnitConversion(conversion.id, companyStore.activeCompany.id);
toast.success('Conversión eliminada');
if (onSuccess) {
onSuccess();
onSuccess(conversion, true);
}
} catch (e) {
const errorMsg = e instanceof Error ? e.message : 'Error desconocido al eliminar el registro';
@@ -86,5 +86,5 @@
bind:open={dialogOpen}
conversion={conversion}
mode="edit"
{onSuccess}
onSuccess={(saved) => onSuccess?.(saved)}
/>