Download ops/backend-dm/controllers/packagesController.js from MouleeswaranM/FairRelay: direct link, hf CLI and curl.
- Browser
- Download file 2.37 kB
-
https://huggingface.co/MouleeswaranM/FairRelay/resolve/refs%2Fpr%2F21/ops/backend-dm/controllers/packagesController.js
- Command line
-
hf download hf://MouleeswaranM/FairRelay@refs/pr/21/ops/backend-dm/controllers/packagesController.js
-
curl -L -o packagesController.js https://huggingface.co/MouleeswaranM/FairRelay/resolve/refs%2Fpr%2F21/ops/backend-dm/controllers/packagesController.js
2.37 kB
| const { PrismaClient } = require('@prisma/client'); | |
| const prisma = new PrismaClient(); | |
| const MOCK_PACKAGES = [ | |
| { id: 'pkg-001', trackingNo: 'PKG-A1B2C3D4', pickup: { location: 'Mumbai Warehouse', lat: 19.0760, lng: 72.8777 }, delivery: { location: 'Pune Hub', lat: 18.5204, lng: 73.8567 }, driver: 'Rajesh Kumar', status: 'IN_TRANSIT', date: new Date(), weight: 450 }, | |
| { id: 'pkg-002', trackingNo: 'PKG-E5F6G7H8', pickup: { location: 'Bangalore Depot', lat: 12.9716, lng: 77.5946 }, delivery: { location: 'Chennai Port', lat: 13.0827, lng: 80.2707 }, driver: 'Priya Sharma', status: 'COMPLETED', date: new Date(Date.now() - 86400000), weight: 280 }, | |
| { id: 'pkg-003', trackingNo: 'PKG-I9J0K1L2', pickup: { location: 'Delhi NCR', lat: 28.6139, lng: 77.2090 }, delivery: { location: 'Jaipur City', lat: 26.9124, lng: 75.7873 }, driver: 'Amit Patel', status: 'CARGO_LOADED', date: new Date(), weight: 620 }, | |
| ]; | |
| async function fetchPackages() { | |
| return prisma.delivery.findMany({ | |
| where: { status: { in: ['COMPLETED', 'IN_TRANSIT', 'EN_ROUTE_TO_DROP', 'CARGO_LOADED'] } }, | |
| include: { driver: { select: { name: true } } }, | |
| orderBy: { createdAt: 'desc' }, | |
| take: 10 | |
| }); | |
| } | |
| function formatPackage(pkg) { | |
| return { | |
| id: pkg.id, | |
| trackingNo: pkg.trackingNumber || `PKG-${pkg.id.substring(0, 8)}`, | |
| pickup: { location: pkg.pickupLocation, lat: pkg.pickupLat, lng: pkg.pickupLng }, | |
| delivery: { location: pkg.dropLocation, lat: pkg.dropLat, lng: pkg.dropLng }, | |
| driver: pkg.driver?.name || 'Unassigned', | |
| status: pkg.status, | |
| date: pkg.createdAt, | |
| weight: pkg.cargoWeight || 0 | |
| }; | |
| } | |
| // GET /api/packages/history - Get last 10 package deliveries with location data | |
| const getHistory = async (req, res) => { | |
| try { | |
| const packages = await fetchPackages(); | |
| res.json(packages.map(formatPackage)); | |
| } catch (error) { | |
| console.warn('[Demo Mode] getHistory using mock data'); | |
| res.json(MOCK_PACKAGES); | |
| } | |
| }; | |
| const getHistoryWeb = async (req, res) => { | |
| try { | |
| const packages = await fetchPackages(); | |
| res.json(packages.map(formatPackage)); | |
| } catch (error) { | |
| console.warn('[Demo Mode] getHistoryWeb using mock data'); | |
| res.json(MOCK_PACKAGES); | |
| } | |
| }; | |
| module.exports = { getHistory, getHistoryWeb }; | |