import express from 'express'; const router = express.Router(); // GET /api/order — 查询订单列表 router.get('/', async (req, res) => { try { const Parse = (globalThis as any).Parse; const q = new Parse.Query('Order'); q.notEqualTo('isDeleted', true); q.descending('createdAt'); q.limit(100); const { status, search } = req.query; if (status && status !== 'all') { q.equalTo('status', status); } if (search) { q.contains('customerName', search as string); } const list = await q.find({ useMasterKey: true }); const data = list.map((o: any) => o.toJSON()); res.json({ success: true, data }); } catch (e: any) { res.status(500).json({ success: false, error: e.message }); } }); // GET /api/order/:id — 查询单个订单 router.get('/:id', async (req, res) => { try { const Parse = (globalThis as any).Parse; const q = new Parse.Query('Order'); q.equalTo('objectId', req.params.id); const order = await q.first({ useMasterKey: true }); if (!order) { return res.status(404).json({ success: false, error: '订单不存在' }); } res.json({ success: true, data: order.toJSON() }); } catch (e: any) { res.status(500).json({ success: false, error: e.message }); } }); // POST /api/order — 创建/更新订单 router.post('/', async (req, res) => { try { const Parse = (globalThis as any).Parse; const { objectId, ...fields } = req.body; let obj: any; if (objectId) { // 更新已有订单 const q = new Parse.Query('Order'); obj = await q.get(objectId, { useMasterKey: true }); } else { // 创建新订单 const Order = Parse.Object.extend('Order'); obj = new Order(); } // 设置字段 Object.entries(fields).forEach(([key, value]) => { obj.set(key, value); }); if (!objectId) { obj.set('isDeleted', false); } const saved = await obj.save(null, { useMasterKey: true }); res.json({ success: true, data: saved.toJSON() }); } catch (e: any) { res.status(500).json({ success: false, error: e.message }); } }); export default router;