=============== Setari si Login =============== .. contents:: :depth: 2 :local: Scop **** Asigurarea conexiunii corecte si sigure intre aplicatia mobila de livrari si mediul ERP, in vederea preluarii dispozitiilor de livrare si transmiterii cantitatilor scanate. Functia permite configurarea parametrilor tehnici, a credentialelor de acces, a scannerului hardware si a profilurilor QR. Obiective principale: - definirea adresei serverului si a tipului de conexiune (HTTPS, port); - autentificarea utilizatorilor pe baza conturilor definite in ERP; - verificarea conectivitatii si a drepturilor de acces; - configurarea scannerului hardware (camera / scaner integrat 2D); - definirea profilurilor QR pentru populare automata a campurilor la scanarea unui cod QR; - schimbarea limbii aplicatiei (RO / EN). A. Autentificare la pornire *************************** |image_login| La prima deschidere a aplicatiei, ecranul de **Autentificare** afiseaza campurile goale, cu o adresa server implicita (``host.server .com``). La deschiderile urmatoare, campurile sunt pre-populate cu valorile ultimei autentificari reusite (inclusiv parola, salvata securizat in Android Keystore / iOS Keychain). Campuri obligatorii: - *Protocol* — HTTPS (recomandat) sau HTTP. Aplicatia accepta certificate self-signed pentru servere ERP din retea interna. - *Adresa server* — ``host`` sau ``host:port`` (ex: ``host.server .com``). Daca tastati direct ``https://host/...``, schema din URL are prioritate fata de toggle-ul Protocol. - *Firma* — codul firmei din ERP. - *Utilizator* — contul cu drepturi pe modulul Logistica / Vanzari in ERP. - *Parola* — parola contului. Apasati **Autentificare**. La succes, aplicatia salveaza toate valorile (parola in storage criptat) si trece direct la meniul principal. La urmatoarea deschidere a aplicatiei, doar apasati butonul **Autentificare** — toate campurile sunt deja completate. In caz de eroare este afisat un mesaj explicativ (ex: *Date de autentificare invalide*, *Timeout — server-ul nu raspunde*, *Introduceti o adresa valida*). B. Schimbare limba ****************** In partea de sus a ecranului de autentificare exista un dropdown cu limba interfetei: **Română** sau **English**. Alegerea este salvata pe dispozitiv si pastrata intre deschideri. La prima deschidere aplicatia porneste in Română indiferent de limba sistemului de operare. Schimbarea afecteaza imediat toate textele din aplicatie (butoane, labels, mesaje de eroare, snackbar-uri). C. Meniu Setari |icon_settings_btn| ************************************ Din meniul principal (dupa autentificare), apasati pe iconita din coltul stanga-sus al barei de titlu. Se deschide ecranul **Setari**. |image_setari| Optiuni disponibile: - *Tip scanner* — selectie intre **Scanner** (hardware integrat Unitech EA660) si **Camera** (camera dispozitivului). Modificarea afecteaza toate ecranele de scanare. - *Setari QR* — deschide ecranul de configurare profil QR (vezi sectiunea E). - *Optimizeaza baza de date* — ruleaza ``VACUUM`` pe SQLite local. Recupereaza spatiu dupa stergeri repetate. Operatie sigura, dar blocheaza interfata 1-2 secunde pe dispozitive lente. - *Ajutor* — deschide acest manual de utilizare in interiorul aplicatiei (WebView). D. Tip scanner ************** Aplicatia suporta doua surse de scanare a codurilor de bare: - *Camera* — se foloseste camera telefonului sau tabletei. Recomandat pentru iPhone / iPad / Android consumer fara scanner integrat. - *Scanner hardware integrat* — pentru terminale industriale cu scanner 2D dedicat (Unitech EA660). Aplicatia comunica cu scanner-ul prin canal nativ (``MethodChannel + EventChannel``) si injecteaza automat codul scanat in fluxul de scanare al ecranului activ. Pentru scanner hardware, aplicatia gestioneaza automat: - *Scan2Key* (emulare tastatura) — dezactivat pe durata cat aplicatia asculta direct prin ``EventChannel``, pentru a evita dublarea evenimentelor. - *Listener persistent* — pe ecranul de detaliu DL, scanner-ul functioneaza si fara a apasa butonul **Scan** — apasati declansatorul fizic, codul este detectat automat. - *Feedback audio* — la cod necunoscut (nu apartine articolelor de pe DL), aplicatia reda un beep distinct pe difuzor + vibratie puternica. La cod recunoscut, scanner-ul emite propriul beep de hardware si aplicatia adauga doar o vibratie scurta. E. Profil QR (scanare coduri QR combinate) ******************************************* |image_qr_list| Aplicatia permite definirea unuia sau mai multor profiluri QR. Un profil QR mapeaza cheile dintr-un cod QR JSON la campurile din ecranul de scanare. La scanarea unui cod QR configurat, aplicatia populeaza automat mai multe campuri deodata. Operatii disponibile in ecranul **Profil QR**: - *Adauga profil nou* — defineste un nou profil cu nume + cheile dorite. - *Editare profil* (iconita creion) — modifica cheile unui profil existent. - *Sterge profil* (iconita cos) — elimina un profil din lista. Profilul **Implicit** nu poate fi sters. - *Set profil activ* — apasati pe radio button-ul din stanga numelui. Doar un singur profil este activ la un moment dat. |image_qr_editor| Cheile configurabile pentru fiecare profil: - *Cheie cod bare* — obligatorie, numele cheii JSON care contine codul de bare (ex: ``codbare``). - *Cheie lot* — optionala, cheia JSON care contine lotul (ex: ``lot``). - *Cheie serie* — optionala, cheia JSON care contine seria (ex: ``serie``). Cheile cu valoare goala sunt considerate inactive si nu sunt interpretate la scanare. Numele profilului este modificabil pentru profilurile noi, dar nu si pentru profilul **Implicit** (este protejat ca seed). .. note:: Profilurile QR sunt salvate local pe dispozitiv si nu se sincronizeaza intre utilizatori. Daca un client foloseste un format QR specific, fiecare operator trebuie sa-si configureze profilul local odata, apoi setarea ramane in memorie. F. Logout |icon_logout| *********************** In meniul principal, apasati pe iconita (X rosu) din coltul dreapta-sus al barei de titlu. Aplicatia revine la ecranul de **Autentificare**. Datele de autentificare raman pre-completate pentru urmatoarea conectare (exceptie face parola). .. |icon_settings| image:: ../Logistics/Logisticsmedia/icon_settings.png :alt: Iconita Setari .. |icon_settings_btn| image:: ../Logistics/Logisticsmedia/icon_settings.png :alt: Buton Setari .. |icon_logout| image:: ../Logistics/Logisticsmedia/icon_logout.png :alt: Buton Logout .. |image_login| image:: ../Logistics/Logisticsmedia/login.png :alt: Ecran autentificare cu campuri pre-populate .. |image_setari| image:: ../Logistics/Logisticsmedia/setari.png :alt: Meniu Setari aplicatie .. |image_qr_list| image:: ../Logistics/Logisticsmedia/qr_profile_list.png :alt: Lista profiluri QR cu badge IMPLICIT .. |image_qr_editor| image:: ../Logistics/Logisticsmedia/qr_profile_editor.png :alt: Editor profil QR cu campuri Nume, Cod bare, Lot, Serie