|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- # Python scripts for FPSMS backend
-
- This folder holds Python programs that integrate with the FPSMS backend (e.g. calling the public `/py` API).
-
- ## Setup
-
- ```bash
- cd python
- pip install -r requirements.txt
- ```
-
- ## Configuration
-
- Set the backend base URL (optional, default below):
-
- - Environment: `FPSMS_BASE_URL` (default: `http://localhost:8090/api` — includes context path `/api`)
- - Or edit the default in each script.
-
- ## Scripts
-
- | Script | Description |
- |--------|-------------|
- | `Bag1.py` | **GUI**: date selector (default today) and job orders as buttons; click shows "Clicked on Job Order code XXXX item xxxx". Run: `python Bag1.py` |
- | `fetch_job_orders.py` | CLI: fetches job orders by plan date from `GET /py/job-orders` |
- | `label_zpl.py` | ZPL label generator (90° rotated, UTF-8 Chinese, QR). `generate_zpl(batch_no, item_code, chinese_desc)`, `send_zpl(zpl, host, port)`. Run: `python label_zpl.py` to print one test label. |
-
- ## Building Bag1 as a standalone .exe
-
- To distribute Bag1 to customer PCs **without giving them source code or requiring Python**:
-
- 1. On your development PC (with Python installed), open a terminal in the `python` folder.
- 2. Install build dependencies:
-
- ```bash
- pip install -r requirements-build.txt
- ```
-
- 3. Run the build script:
-
- ```bash
- build_exe.bat
- ```
-
- Or run PyInstaller directly:
-
- ```bash
- pyinstaller --onefile --windowed --name Bag1 Bag1.py
- ```
-
- 4. The executable is created at `dist\Bag1.exe`. Copy **only** `Bag1.exe` to the customer computer and run it; no Python or source code is needed. The app will save its settings (`bag1_settings.json`) in the same folder as the exe.
-
- ## Adding new scripts
-
- Add new `.py` files here and list them in this README. Use `requirements.txt` for any new dependencies.
|