Centralized packing and shipping label management application built with Java Spring (non-Boot) and React.
Backend: Java 11, Spring Framework 5.3.21, Hibernate 5.6.9, H2 Database
Frontend: React 18.2, Axios, React Toastify
- Java 11+
- Maven 3.6+
- Node.js 16+ and npm
cd backend
mvn clean compile
java -cp "target/classes:$(mvn dependency:build-classpath -q -Dmdep.outputFile=/dev/stdout)" com.packing.ApplicationBackend runs on http://localhost:8080
cd frontend
npm install
npm startFrontend runs on http://localhost:3001
- Select Client - Choose from dropdown (cookies auto-load)
- Enter Order ID - Input order identifier
- Enter Cookies - Client Cookie and Database Cookie (auto-populated if saved)
- Fetch Order Info - Get location and item IDs to scan
- Confirm Packing - Acknowledge packing with marketplace
- Generate Shipping Label - Download shipping label and invoice PDFs
GET /api/cookies- List all cookiesPOST /api/cookies- Save/update cookieGET /api/cookies/{clientName}- Get cookie by clientPOST /api/packing/order-info- Fetch order location and item IDsPOST /api/packing/confirm- Confirm packingPOST /api/packing/shipping-label- Generate shipping label and invoice
Pre-configured Clients:
- Amazon Client 1
- Flipkart Client 1
Test Order IDs:
12345ortest- Returns Warehouse A location67890- Returns Warehouse B location- Any other ID - Returns default location
- Order IDs containing "fail" - Returns error (for testing error handling)
Note: All API calls are currently mocked for testing. Update MarketplaceService.java with actual API endpoints for production.
backend/src/main/java/com/packing/
├── config/ # Spring configuration
├── controller/ # REST controllers
├── service/ # Business logic
├── dao/ # Data access
└── model/ # Entity models
frontend/src/
├── components/ # React components
└── services/ # API services
backend/src/main/java/com/packing/service/MarketplaceService.java- Update with real API URLsbackend/src/main/java/com/packing/config/DatabaseConfig.java- Database configurationfrontend/src/services/api.js- API base URL configuration
- Errors logged to
backend/logs/error_*.txt - Toast notifications for user feedback
- Error responses stored in database