import laravelHelper from "../../../utils/laravelHelper"

// Manual "import this one eBay order now" — proxies to the Laravel middleware,
// which owns the actual eBay → iDempiere order-creation pipeline (same one the
// scheduled sync uses). No iDempiere token needed here: Laravel authenticates to
// iDempiere itself with its own service token.
export default defineEventHandler(async (event) => {
  const body: any = await readBody(event)
  const { orderSourceId, ebayOrderId, docTypeTargetId, deliveryRule, invoiceRule } = body || {}

  if (!orderSourceId || !ebayOrderId) {
    return { status: 400, message: 'orderSourceId and ebayOrderId are required' }
  }

  try {
    const res: any = await laravelHelper(event, 'sales/orders/import-ebay-order', 'POST', {
      orderSourceId, ebayOrderId, docTypeTargetId, deliveryRule, invoiceRule
    })
    return res?.success ? { status: 200, ...res } : { status: 400, message: res?.message || 'Import failed' }
  } catch (err: any) {
    return { status: err?.status || 500, message: err?.data?.message || err?.message || 'Import failed' }
  }
})
