/** DELETE /api/settings/carrier-rates/destroy — body: { ids: number[] } */ import { withIdempiere } from '../../../utils/shipping/withIdempiere' import fetchHelper from '../../../utils/fetchHelper' import { CARRIER_RATE_MODEL } from '../../../utils/shipping/carrierRates' export default defineEventHandler(withIdempiere(async (event, token) => { const body: any = await readBody(event) const ids: number[] = Array.isArray(body?.ids) ? body.ids.map(Number).filter(Boolean) : [] const failed: { id: number; message: string }[] = [] for (const id of ids) { try { await fetchHelper(event, `${CARRIER_RATE_MODEL}/${id}`, 'DELETE', token, null) } catch (e: any) { failed.push({ id, message: e?.data?.detail || e?.message || String(e) }) } } return { status: failed.length ? 207 : 200, deleted: ids.length - failed.length, failed } }))