import { isSettlementMarketplace, listPeriodExports, listSettlementExportRuns, settlementExportLogAvailable } from '../../../utils/settlementExportLog' // Per-period lexoffice CSV export state of one marketplace order source. // GET ?marketplace=amazon|ebay&orderSourceId=[&runs=1] // → { status, available, periods: { [periodId]: PeriodExportRecord }, runs? } // Local frontend store (data/settlement-exports.db) — see // server/utils/settlementExportLog.ts for why the C_Order marker is not enough. export default defineEventHandler(async (event) => { await getTokenHelper(event) // logged-in session required, no iDempiere round-trip const query = getQuery(event) const marketplace = String(query.marketplace || '') const orderSourceId = Number(query.orderSourceId || 0) if (!isSettlementMarketplace(marketplace) || !orderSourceId) { return { status: 400, message: 'marketplace (amazon|ebay) and orderSourceId are required' } } const available = settlementExportLogAvailable() return { status: 200, available, periods: available ? listPeriodExports(marketplace, orderSourceId) : {}, runs: available && String(query.runs || '') === '1' ? listSettlementExportRuns(marketplace, orderSourceId) : undefined } })