async function handleCourierDispatch(order, courier) { // 1. Assign courier in POS await assignCourier(order.id, courier.id); // 2. Print delivery slip await printDeliverySlip(order, courier); // 3. Update API await markOnTheWay(order.payment_key); // 4. Send SMS to courier await sendCourierSMS(courier.phone, order.address); console.log(`✅ Order ${order.id} dispatched to ${courier.name}`);}
Copy
async function autoDispatch() { // Get prepared orders const preparedOrders = await getOrdersByStatus('CONFIRMED'); for (const order of preparedOrders) { if (order.courier_type !== 'restaurant') continue; // Find available courier const courier = await findAvailableCourier(); if (courier) { await assignCourier(order.id, courier.id); await markOnTheWay(order.payment_key); console.log(`Auto-dispatched order ${order.id}`); } }}// Run every 2 minutessetInterval(autoDispatch, 120000);
Copy
async function handleQRScan(qrCode) { // Parse order from QR code const order = await parseOrderQR(qrCode); // Verify order status if (order.status !== 'CONFIRMED') { alert('Order not ready for delivery'); return; } // Mark on the way await markOnTheWay(order.payment_key); // Courier confirmation showSuccessMessage('Order marked for delivery');}