import request from '@/utils/request'; import type { ApiResponse, PageResult } from '@/types/api'; import type { CoilVO, CoilSaveParams, CoilPageParams } from '@/types/aps/coil'; /** Paginated coil list */ export const getCoilPage = (params: CoilPageParams) => request.get>>('/aps/coil/page', { params }); /** Get single coil by id */ export const getCoil = (id: number) => request.get>(`/aps/coil/get?id=${id}`); /** Create coil */ export const createCoil = (data: CoilSaveParams) => request.post>('/aps/coil/create', data); /** Update coil */ export const updateCoil = (data: CoilSaveParams) => request.put>('/aps/coil/update', data); /** Delete coil */ export const deleteCoil = (id: number) => request.delete>(`/aps/coil/delete?id=${id}`); /** Batch import coils from Excel */ export const importCoils = (file: File) => { const formData = new FormData(); formData.append('file', file); return request.post>( '/aps/coil/import', formData, { headers: { 'Content-Type': 'multipart/form-data' } } ); }; /** Export coils to Excel */ export const exportCoils = (params: Omit) => request.get('/aps/coil/export', { params, responseType: 'blob' }); /** Download import template */ export const downloadCoilTemplate = () => request.get('/aps/coil/import-template', { responseType: 'blob' });