Lista Dispozitii Livrare (DL)
Scop
Vizualizarea si gestionarea dispozitiilor de livrare disponibile pentru operatorul curent. Ecranul permite identificarea DL-urilor libere, preluarea acestora, vizualizarea celor preluate de mine sau de alti utilizatori, si accesul la istoricul DL-urilor aprobate.
Prerechizite
Autentificarea cu succes (vezi Setari).
Utilizatorul are drepturi in ERP pe modulul Logistica / Vanzari.
Exista cel putin un DL definit in ERP (functia Vanzari → Dispozitii Livrare in EMSYS).
A. Acces la lista DL
Din meniul principal, apasati cardul Vanzari & Retail. Se deschide submeniul cu o singura optiune disponibila momentan: Dispozitii Livrare. Apasati pe card pentru a deschide lista.

La incarcarea listei, aplicatia descarca de pe server toate DL-urile la care utilizatorul curent are acces (libere sau preluate de altii) si afiseaza un spinner pe durata acestei operatii. Tipic 1-3 secunde pentru ~50-200 DL-uri.
B. Structura ecran lista DL



Ecranul Dispozitii Livrare contine:
Bara de cautare (sus) — filtrare rapida dupa text liber. Suporta prefixe speciale:
dl <numar>— cauta dupa numar documentcmd <numar>— cauta dupa numar comanda clienttranz <numar>— cauta dupa numar tranzactie
Fara prefix, cautarea se face concomitent dupa client, numar comanda si numar tranzactie.
Trei butoane circulare de filtru (dreapta sus, langa cautare) — filtru pe stare:
Deschise (cyan) — DL-uri libere, neasumate de niciun utilizator
Preluate (rosu) — DL-uri preluate de mine
Aprobate (portocaliu) — DL-uri finalizate (aprobate in ERP)
Doar un filtru este activ la un moment dat. Butoanele inactive sunt afisate cu contur colorat fara umplere.
Lista carduri DL — sortata descrescator dupa numar document.
Buton refresh (iconita reincarcare in bara de titlu) — re-fetch lista de pe server.
Pull-to-refresh — trageti lista in jos pentru reincarcare.
C. Card DL — informatii afisate

Fiecare DL este afisat ca un card cu fundal colorat in functie de stare:
Alb — disponibil (liber) SAU aprobat (read-only). Distinctia se face prin iconul de stare (vezi mai jos) si prin culoarea butonului de actiune (cyan = preluare, portocaliu = anulare aprobare).
Albastru deschis — preluat de mine.
Gri deschis — preluat de alt utilizator.
Continutul cardului:
Iconita stare (stanga-sus) + numar DL + data document
Denumire client (font mai mare, max 2 randuri)
Stare (text mic, dreapta) —
aprobat/preluat de mine/disponibil/preluat de <user>Cmd — numar comanda client
Tranz — numar tranzactie unic
Buton de actiune (dreapta) — actiunea principala depinde de stare (vezi sectiunea D).
D. Actiuni disponibile per stare
Preluare — pe DL disponibil (galben)
Apasarea butonului albastru de Play face POST la ERP cu
preluare=1. La succes, DL devine rosu (preluat de mine), iar in lista apare un snackbar verde: „DL <nr> preluat (Tranz <nrtranz>)”. Pozitiile cu codurile de bare sunt descarcate in background si salvate local in SQLite pentru rezilienta la kill/reboot.
Anulare preluare — pe DL preluat de mine (rosu)
Apasarea butonului rosu de Play deschide un dialog de confirmare. La confirmare, DL revine la disponibil (galben) si toate cantitatile scanate local sunt sterse. Snackbar rosu: „Preluare anulata — DL <nr> (Tranz <nrtranz>)”.
Anulare aprobare — pe DL aprobat (alb)
Apasarea butonului portocaliu deschide un dialog de confirmare. La confirmare, DL revine la preluat de mine (rosu) si poate fi rescanat / corectat. Cantitatile scanate inainte de aprobare sunt pastrate in SQLite local — la redeschiderea DL-ului apar exact unde erau.
Notă
Tehnic, anularea aprobarii face doua apeluri server consecutive:
aprobare=0(sterge starea aprobat) sipreluare=1(re-revendica DL-ul). Server-ul EMSYS poate, in functie de implementare, sa steargauserPreluatla anulare aprobare — re-revendicarea explicita asigura ca DL ramane in lista Preluate la urmatorul refresh.
E. Filtrele si lista goala
Daca dupa selectarea unui filtru lista este goala, aplicatia afiseaza un ecran de informare contextual cu pictograma + titlu + indicatie de actiune:
Filtrul Deschise gol — „Nu sunt DL deschise. Trage in jos pentru a re-incarca lista.”
Filtrul Preluate gol — „Nu ai DL-uri preluate. Schimba filtrul pe Deschise si apasa Preluare pe un DL.”
Filtrul Aprobate gol — „Niciun DL aprobat. DL-urile aprobate apar aici dupa ce confirmi cantitatile scanate.”
Cu cautare activa — „Niciun rezultat. Niciun DL nu corespunde cautarii curente.”

F. Tap pe card — deschidere detaliu
Apasati pe corpul cardului (oriunde, in afara butonului Play / actiune) pentru a deschide ecranul de detaliu DL. Vezi Detaliu DL.
Comportamentul deschiderii detaliului depinde de starea DL-ului:
Deschis (liber) — vedere read-only. Nu pot scana fara a face mai intai Preluare.
Preluat de mine — mod editare completa: scanare, reset, trimitere, aprobare.
Preluat de alt utilizator — vedere read-only.
Aprobat (de mine sau altul) — vedere read-only, cu mesajul „DL APROBAT”.