/** * API Client para Pedimento Codes * Gestiona las operaciones CRUD para las claves de pedimento */ import { api } from '$lib/api'; export interface PedimentoCode { code: string; description: string; } export interface PedimentoCodeListResponse { items: PedimentoCode[]; total: number; page: number; page_size: number; } export interface CreatePedimentoCodeData { code: string; description: string; } export interface UpdatePedimentoCodeData { code?: string; description?: string; } /** * API para Pedimento Codes */ export const pedimentoCodesApi = { /** * Lista todas las claves de pedimento con paginación * @param page - Número de página (por defecto 1) * @param pageSize - Tamaño de página (por defecto 50) */ list: (page = 1, pageSize = 50) => api.get( // CORREGIDO: Añadido '/' antes del '?' `/v1/public/refrence_data/pedimento-codes/?page=${page}&page_size=${pageSize}` ), /** * Obtiene una clave de pedimento por code * @param code - Código de la clave de pedimento */ get: (code: string) => // CORREGIDO: Añadido '/' final api.get(`/v1/public/refrence_data/pedimento-codes/${code}/`), /** * Crea una nueva clave de pedimento * @param data - Datos de la clave de pedimento a crear */ create: (data: CreatePedimentoCodeData) => // CORREGIDO: Añadido '/' final api.post('/v1/public/refrence_data/pedimento-codes/', data), /** * Actualiza una clave de pedimento existente * @param code - Código de la clave de pedimento a actualizar * @param data - Datos a actualizar */ update: (code: string, data: UpdatePedimentoCodeData) => // CORREGIDO: Añadido '/' después del código api.put(`/v1/public/refrence_data/pedimento-codes/${code}/`, data), /** * Elimina una clave de pedimento * @param code - Código de la clave de pedimento a eliminar */ delete: (code: string) => // CORREGIDO: Añadido '/' después del código api.delete(`/v1/public/refrence_data/pedimento-codes/${code}/`) };