index.get.ts 676 Bytes
import { z } from 'zod'
import { WORK_ORDER_STATUS_VALUES } from '../../../app/types/work-order'
import { getMockWorkOrders } from '../../utils/mock-work-orders'

const querySchema = z.object({
  orderNo: z.string().optional(),
  deviceCode: z.string().optional(),
  batchNo: z.string().optional(),
  ownerUsername: z.string().optional(),
  status: z.enum(WORK_ORDER_STATUS_VALUES).optional(),
  plannedStart: z.string().optional(),
  plannedEnd: z.string().optional()
})

export default eventHandler((event) => {
  const raw = getQuery(event)
  const parsed = querySchema.safeParse(raw)

  if (!parsed.success) {
    return []
  }

  return getMockWorkOrders(parsed.data)
})