# Guzzini Sales (Flutter)

App tablet landscape **online-only** per agenti VTE Guzzini. Login con utente agente, KPI portfolio, rivenditori/movimenti, creazione SalesOrder.

## Requisiti

- Flutter 3.27+ / Dart 3.6+
- Tablet Android (orientamento landscape forzato)
- Rete verso VTE: `https://vteguzzini.mypantarei.net`

## Endpoint

`POST /modules/SDK/src/Agenti/http_api.php`

Auth dopo login: header `X-Agenti-User` + `X-Agenti-Key` (accesskey VTE).

Operazioni: `login`, `me`, `kpi`, `rivenditori`, `rivenditore`, `riepilogo`, `movimenti`, `prodotti`, `ordini`, `chat`, `oggi`, `progetti`, `visite`, `visita`, `visite_save`, `visita_completa`, `voce_extract`, `visite_delete`, `visite_status`, `visitreport_save`.

## Demo

Utente seed: `l.bianchi` / `VteAgent!Demo26`

Web (landscape tablet): https://vteguzzini.mypantarei.net/demo/guzzini-sales/

APK download: https://vteguzzini.mypantarei.net/demo/guzzini-sales.apk

## Build

```bash
cd Appoggio/guzzini-sales-app
export JAVA_HOME=$HOME/jdk-17   # se non c'è Java di sistema
export ANDROID_HOME=$HOME/android-sdk
export PATH=$JAVA_HOME/bin:$ANDROID_HOME/cmdline-tools/latest/bin:$PATH

flutter pub get
flutter analyze
flutter build apk --release
flutter build web --release --base-href /demo/guzzini-sales/
```

APK: `build/app/outputs/flutter-apk/app-release.apk`  
Web: symlink → `vteguzzini/demo/guzzini-sales` → `build/web`

Per puntare a un altro VTE, cambia `baseUrl` in `lib/api/agenti_api.dart`.

## Struttura

* `lib/widgets/assistant_panel.dart` — FAB + chat (come B2B)
* `lib/api/agenti_api.dart` — client HTTP (+ `op: chat`)
* Backend: `vteguzzini/modules/SDK/src/Agenti/AgentiChat.php` (Gemini + tool portfolio)
