FactuGES_ERP/modules/supplier/src/web/shared/api/delete-supplier-by-id.api.ts

31 lines
936 B
TypeScript
Raw Normal View History

2026-04-03 20:03:48 +00:00
import type { IDataSource } from "@erp/core/client";
2026-04-05 12:01:52 +00:00
/**
* Elimina un proveedor existente en el sistema utilizando la fuente de datos proporcionada.
*
* @param dataSource - La fuente de datos para interactuar con la API.
* @param params - Los parámetros necesarios para eliminar el proveedor.
* @returns Una promesa que se resuelve cuando el proveedor ha sido eliminado exitosamente.
* @throws Error si el ID del proveedor no es proporcionado o si la eliminación falla.
*/
2026-04-03 20:03:48 +00:00
2026-04-05 12:01:52 +00:00
export interface DeleteSupplierByIdParams {
id: string;
signal?: AbortSignal;
}
export type DeleteSupplierByIdResult = void;
export function deleteSupplierById(
dataSource: IDataSource,
params: DeleteSupplierByIdParams
): Promise<DeleteSupplierByIdResult> {
const { id, signal } = params;
2026-04-03 20:03:48 +00:00
2026-04-05 12:01:52 +00:00
if (!id) throw new Error("supplierId is required");
return dataSource.deleteOne<DeleteSupplierByIdResult>("suppliers", id, {
2026-04-03 20:03:48 +00:00
signal,
});
}