Initial commit: aplicatie de cantarire si etichetare

Aplicatie Flask + SQLite pentru productie alimentara: cantarirea
componentelor unui produs finit si tiparirea etichetei prin QZ Tray.

- produse finite (retete) formate din componente cantarite
- designer vizual de etichete (mm/px, zona sigura, campuri variabile,
  cod QR cu continut din mai multe bucati)
- legare produs finit -> sablon de eticheta
- navigare pe doua taburi: Cantarire / Setari
- administrare: componente, produse finite, sabloane, campuri, istoric
- backup, resetare baza de date, checklist de pregatire, /healthz
- CLI de administrare si serviciu systemd pentru productie
- vendor/syncpulse-scale-bridge (GPL-3.0-or-later) pentru citirea cantarului
This commit is contained in:
2026-10-18 23:38:45 +03:00
commit bff6d70b17
107 changed files with 21428 additions and 0 deletions
+34
View File
@@ -0,0 +1,34 @@
@echo off
REM Pornire pe Windows (statia cu cantarul si imprimanta termica).
REM Ruleaza o singura data: python -m venv .venv
REM .venv\Scripts\pip install -r requirements.txt
setlocal
cd /d "%~dp0.."
if not exist ".venv\Scripts\python.exe" (
echo [!] Nu exista .venv. Ruleaza intai:
echo python -m venv .venv
echo .venv\Scripts\pip install -r requirements.txt
pause
exit /b 1
)
REM Cheia de sesiune: genereaz-o o data si pastreaz-o intre reporniri.
if "%CANTARIRE_SECRET_KEY%"=="" (
if exist "instance\secret.key" (
set /p CANTARIRE_SECRET_KEY=<instance\secret.key
) else (
for /f "delims=" %%k in ('.venv\Scripts\python.exe -c "import secrets;print(secrets.token_urlsafe(48))"') do set "CANTARIRE_SECRET_KEY=%%k"
if not exist "instance" mkdir "instance"
> instance\secret.key echo %CANTARIRE_SECRET_KEY%
)
)
echo.
echo Cantarire ^& etichetare - http://127.0.0.1:5000/
echo Inchide fereastra pentru a opri serverul.
echo.
.venv\Scripts\python.exe run.py --production --host 127.0.0.1 --port 5000
pause