A warehouse management system for tracking and managing inventory requests with real-time updates and ERP integration.
- Inventory Management: Track containers by part number and serial number
- ERP Integration: Seamless integration with Plex ERP system
- Real-time Updates: WebSocket support for live request notifications
- Database Persistence: Azure SQL Database for reliable data storage
- Web Interface: User-friendly interface for warehouse operations
- REST API: Complete API for programmatic access
- Location Filtering: Filter containers by production storage locations
- Backend: FastAPI (Python)
- Database: Azure SQL Database
- Frontend: HTML/CSS/JavaScript
- ERP: Plex Manufacturing Cloud
- Real-time: WebSocket connections
- Containerization: Docker support
- Python 3.8+
- Azure SQL Database instance
- Plex ERP system access
- Node.js (for frontend dependencies)
-
Clone the repository
git clone <repository-url> cd Pick_List
-
Install Python dependencies
pip install -r requirements.txt
-
Install Node.js dependencies
npm install
-
Set up environment variables Create a
.envfile with:AZURE_SQL_SERVER=your-server-name AZURE_SQL_DATABASE=your-database-name AZURE_SQL_USERNAME=your-username AZURE_SQL_PASSWORD=your-password PORT=8000
The application requires a REQUESTS table in your Azure SQL Database:
CREATE TABLE REQUESTS (
req_id INT,
serial_no NVARCHAR(255),
part_no NVARCHAR(255),
revision NVARCHAR(50),
quantity DECIMAL(10,2),
location NVARCHAR(255),
deliver_to NVARCHAR(255),
req_time DATETIME
);-
Start the application
python main.py
-
Access the web interface Open your browser to
http://localhost:8000 -
Using Docker
docker build -t pick-list . docker run -p 8000:8000 pick-list
GET /- Main web interfacePOST /part/{part_no}- Get containers for a part numberPOST /part/{part_no}/{serial_no}- Request a specific serial numberGET /requests- Driver interface for viewing requests
GET /api/requests- Retrieve all requests (JSON)DELETE /api/requests/{serial_no}- Delete a requestGET /barcode/{location}- Get barcode for location
WebSocket /ws- Real-time updates
Pick_List/
├── main.py # FastAPI application
├── requirements.txt # Python dependencies
├── package.json # Node.js dependencies
├── Dockerfile # Container configuration
├── templates/ # HTML templates
│ ├── index.html # Main interface
│ └── driver.html # Driver interface
├── static/ # Static assets
│ ├── assets/ # Images and icons
│ ├── *.css # Stylesheets
│ └── *.js # JavaScript files
└── venv/ # Virtual environment
The application connects to:
- Azure SQL Database: For persistent storage
- Plex ERP System: For inventory data retrieval
- Production Storage Locations: Filtered inventory locations
-
Activate virtual environment
source venv/bin/activate # Linux/Mac # or venv\Scripts\activate # Windows
-
Run in development mode
uvicorn main:app --reload --host 0.0.0.0 --port 8000
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is proprietary to Vintech CZ.
For technical support or questions, contact the development team.