docs: ghid utilizator (medii test/prod, termeni simpli) + README pe per-env
docs/ghid-utilizator.md (nou): ghid pentru service-uri, fara termeni tehnici — cum configurezi credentialele RAR pe Testare/Productie, cum stii unde trimiti (statusbar + badge rosu=real), cum trimiti (fisier/soft), starile unei trimiteri, intrebari frecvente. README: link catre ghid; sectiunea creds RAR actualizata la sloturi per-mediu (rar_target pe POST /v1/conturi/rar-creds, rar_env pe POST /v1/prezentari); corectata nota iesita din uz despre GET-uri (sunt account-scoped, nomenclator public intentionat); RAR_ENV clarificat ca ancora globala peste care au prioritate mediile per-cont. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
20
README.md
20
README.md
@@ -12,6 +12,7 @@ Trimiterea catre RAR e **dezactivata implicit** (`AUTOPASS_WORKER_SEND_ENABLED=f
|
|||||||
|
|
||||||
Sursa de adevar pentru contractul RAR: [`docs/api-rar-contract.md`](docs/api-rar-contract.md).
|
Sursa de adevar pentru contractul RAR: [`docs/api-rar-contract.md`](docs/api-rar-contract.md).
|
||||||
Progres + proces: [`docs/ROADMAP.md`](docs/ROADMAP.md).
|
Progres + proces: [`docs/ROADMAP.md`](docs/ROADMAP.md).
|
||||||
|
**Ghid pentru utilizatori (service-uri), in termeni simpli:** [`docs/ghid-utilizator.md`](docs/ghid-utilizator.md).
|
||||||
|
|
||||||
## Pornire rapida
|
## Pornire rapida
|
||||||
|
|
||||||
@@ -105,16 +106,25 @@ python3 -m tools.account list [--pending] | activate --account N | set-admin --a
|
|||||||
python3 -m tools.apikey create|list|rotate|revoke --account N # cheie afisata O SINGURA DATA
|
python3 -m tools.apikey create|list|rotate|revoke --account N # cheie afisata O SINGURA DATA
|
||||||
```
|
```
|
||||||
|
|
||||||
**Creds RAR per cont** (ca worker-ul sa trimita fara parola in fiecare cerere) — criptate Fernet at-rest:
|
**Creds RAR per cont, pe medii** — fiecare cont are doua sloturi separate de credentiale RAR,
|
||||||
|
**Testare** si **Productie** (sisteme RAR distincte; un set de creds merge pe exact unul). Criptate
|
||||||
|
Fernet at-rest. Din web se seteaza in **Cont → Credentiale RAR** (doua sectiuni, cu validare prin login
|
||||||
|
si confirmare unica la activarea Productie). Din API, campul `rar_target` alege slotul:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
# Seteaza creds pe mediul Testare (lipsa rar_target -> mediul implicit / ancora globala)
|
||||||
curl -s -X POST http://localhost:8010/v1/conturi/rar-creds \
|
curl -s -X POST http://localhost:8010/v1/conturi/rar-creds \
|
||||||
-H 'X-API-Key: rfak_...' -H 'Content-Type: application/json' \
|
-H 'X-API-Key: rfak_...' -H 'Content-Type: application/json' \
|
||||||
-d '{"email": "service@exemplu.ro", "password": "parola-rar"}'
|
-d '{"email": "service@exemplu.ro", "password": "parola-rar", "rar_target": "test"}'
|
||||||
```
|
```
|
||||||
|
|
||||||
> GET-urile de listare (`/v1/prezentari`, `/v1/nomenclator`, `/v1/audit/export`) sunt momentan
|
La trimitere, `POST /v1/prezentari` accepta `rar_env` (`test`/`prod`); lipsa lui -> mediul implicit al
|
||||||
> **globale si neprotejate** — filtrarea pe cont ramane de adaugat.
|
contului. Pe ce mediu a mers fiecare rand vezi in `GET /v1/prezentari` (camp `rar_env`) si in badge-ul din
|
||||||
|
dashboard. Explicatie pentru operatori: [`docs/ghid-utilizator.md`](docs/ghid-utilizator.md).
|
||||||
|
|
||||||
|
> POST-urile si listarile per-cont (`/v1/prezentari`, `/v1/audit/export`, fragmentele web) sunt
|
||||||
|
> **filtrate pe contul cheii API**. `GET /v1/nomenclator` ramane public intentionat (coduri RAR publice,
|
||||||
|
> fara date personale).
|
||||||
|
|
||||||
## Proba reala la RAR (mediu test)
|
## Proba reala la RAR (mediu test)
|
||||||
|
|
||||||
@@ -133,7 +143,7 @@ curl -s -X POST http://localhost:8010/v1/conturi/rar-creds \
|
|||||||
| Variabila | Implicit | Rol |
|
| Variabila | Implicit | Rol |
|
||||||
|-----------|----------|-----|
|
|-----------|----------|-----|
|
||||||
| `DB_PATH` | `./data/autopass.db` | calea SQLite |
|
| `DB_PATH` | `./data/autopass.db` | calea SQLite |
|
||||||
| `RAR_ENV` | `test` | `test` / `prod` |
|
| `RAR_ENV` | `test` | ancora globala `test` / `prod`; mediile per-cont (Testare/Productie) au prioritate cand contul le are configurate |
|
||||||
| `REQUIRE_API_KEY` | `false` | `true` = cere cheie pe `/v1/*` (prod) |
|
| `REQUIRE_API_KEY` | `false` | `true` = cere cheie pe `/v1/*` (prod) |
|
||||||
| `WEB_AUTH_REQUIRED` | `true` | `false` = dashboard fara login, cont id=1 (dev) |
|
| `WEB_AUTH_REQUIRED` | `true` | `false` = dashboard fara login, cont id=1 (dev) |
|
||||||
| `CREDS_KEY` | (efemera) | **cheie Fernet creds RAR — trebuie PARTAJATA intre API si worker** |
|
| `CREDS_KEY` | (efemera) | **cheie Fernet creds RAR — trebuie PARTAJATA intre API si worker** |
|
||||||
|
|||||||
128
docs/ghid-utilizator.md
Normal file
128
docs/ghid-utilizator.md
Normal file
@@ -0,0 +1,128 @@
|
|||||||
|
# Ghid de utilizator — RAR AUTOPASS
|
||||||
|
|
||||||
|
Ghid simplu pentru service-uri auto. Explica cum trimiti prezentarile catre RAR AUTOPASS
|
||||||
|
prin aplicatie, cu accent pe cele doua medii: **Testare** si **Productie**.
|
||||||
|
|
||||||
|
Fara termeni tehnici. Daca esti dezvoltator si cauti API/instalare, vezi [README.md](../README.md).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Ce face aplicatia
|
||||||
|
|
||||||
|
Legea 142/2023 obliga service-urile auto autorizate sa transmita la RAR, la finalul fiecarei
|
||||||
|
lucrari, datele obligatorii (VIN, kilometraj etc.). Aplicatia asta face transmiterea in locul tau:
|
||||||
|
tu incarci lucrarile (dintr-un fisier sau din softul tau), iar aplicatia le declara la RAR si iti
|
||||||
|
arata ce a mers si ce nu.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Cele doua medii: Testare si Productie
|
||||||
|
|
||||||
|
La RAR exista **doua sisteme separate**:
|
||||||
|
|
||||||
|
- **Testare** — pentru probe. Ce trimiti aici NU e o declaratie oficiala. Bun ca sa te obisnuiesti,
|
||||||
|
fara riscuri.
|
||||||
|
- **Productie** — **real**. Ce trimiti aici e o declaratie oficiala catre RAR, conform legii.
|
||||||
|
**Nu se poate anula sau corecta** dupa ce a fost acceptata.
|
||||||
|
|
||||||
|
Fiecare mediu are **propriul lui email si parola** de la RAR. Un set de credentiale merge pe exact
|
||||||
|
un mediu — cele de test nu functioneaza pe productie si invers.
|
||||||
|
|
||||||
|
Un mediu e **disponibil** doar cand e activat SI are credentiale valide. Din asta decurge tot ce
|
||||||
|
poti face: unde trimiti, daca poti alege, ce vezi pe ecran.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Pasul 1 — Configureaza credentialele RAR
|
||||||
|
|
||||||
|
Intra in **Cont → Credentiale RAR**. Vezi doua sectiuni: **Testare** si **Productie**. Pentru
|
||||||
|
fiecare mediu pe care vrei sa-l folosesti:
|
||||||
|
|
||||||
|
1. Bifeaza **Activare**.
|
||||||
|
2. Scrie **emailul si parola** de la RAR pentru acel mediu.
|
||||||
|
3. Apasa **Salveaza**. Aplicatia incearca un **login de proba** pe RAR:
|
||||||
|
- login reusit → credentialele se salveaza (criptat) si mediul devine disponibil;
|
||||||
|
- login esuat → primesti eroare pe acel mediu, iar credentialele NU se salveaza.
|
||||||
|
4. La **prima activare a mediului Productie** trebuie sa bifezi confirmarea: intelegi ca trimiterile
|
||||||
|
pe Productie sunt reale, finale si fara anulare (Legea 142).
|
||||||
|
5. Jos poti alege **Mediul implicit** — cel pe care se trimite automat. Poti alege doar dintre
|
||||||
|
mediile disponibile.
|
||||||
|
|
||||||
|
Parola nu se afiseaza niciodata inapoi pe ecran; e stocata criptat.
|
||||||
|
|
||||||
|
> Un cont nou vine implicit cu **Productie pornit** si **Testare oprit**. Daca vrei sa exersezi
|
||||||
|
> intai, activeaza Testare si pune-l ca mediu implicit.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Pasul 2 — Cum stii unde trimiti (ca sa nu confunzi testul cu realul)
|
||||||
|
|
||||||
|
Doua indicii sunt mereu la vedere:
|
||||||
|
|
||||||
|
- **Bara de sus (statusbar)** arata mediul implicit al contului. Daca ai **ambele** medii
|
||||||
|
disponibile, apare si un buton **Comuta** ca sa schimbi rapid unde se trimite.
|
||||||
|
- **Fiecare trimitere are un badge**: `PRODUCȚIE` (rosu, proeminent = real) sau `Testare` (gri,
|
||||||
|
discret). Il vezi in liste, in coada, in detaliul trimiterii si in jurnal.
|
||||||
|
|
||||||
|
Regula simpla: **rosu = real**. Daca vezi rosu, mergi cu grija.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Pasul 3 — Trimite prezentarile
|
||||||
|
|
||||||
|
### Din fisier (Excel / CSV)
|
||||||
|
|
||||||
|
Pe dashboard: **incarca** fisierul → **potriveste coloanele** (aplicatia sugereaza singura si tine
|
||||||
|
minte formatul pentru data viitoare) → **verifica** randurile → **confirma**. Randurile intra in
|
||||||
|
coada si se trimit.
|
||||||
|
|
||||||
|
- Daca ai **un singur mediu** disponibil, totul merge automat acolo.
|
||||||
|
- Daca ai **doua**, la incarcare apare un **selector de mediu** — alegi unde vrei sa trimiti fisierul
|
||||||
|
respectiv.
|
||||||
|
|
||||||
|
### Din softul tau (ROAAUTO / soft propriu)
|
||||||
|
|
||||||
|
Softul trimite prin cheia API a contului. Poate preciza mediul (`test`/`prod`); daca nu-l precizeaza,
|
||||||
|
merge pe mediul implicit al contului. Detalii tehnice in [README.md](../README.md).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Ce inseamna starea unei trimiteri
|
||||||
|
|
||||||
|
| Stare | Ce inseamna, pe scurt |
|
||||||
|
|-------|-----------------------|
|
||||||
|
| **In asteptare** | E in coada, urmeaza sa fie trimisa. |
|
||||||
|
| **Se trimite** | Se trimite chiar acum. |
|
||||||
|
| **Declarata la RAR** | Gata, acceptata (are numar de prezentare). Nu se mai poate modifica. |
|
||||||
|
| **Lipseste codul** | Operatia nu are cod RAR — alege-l in tab-ul **Mapari** si se deblocheaza singura. |
|
||||||
|
| **Date incomplete** | RAR a respins randul (lipseste ceva) — corecteaza si reincarca. |
|
||||||
|
| **Eroare** | Trimiterea a esuat si nu se mai reincearca. Vezi detaliul; daca tine de credentiale, corecteaza-le in Cont. |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Jurnal — ce s-a intamplat
|
||||||
|
|
||||||
|
Tab-ul **Jurnal** noteaza actiunile importante, cu ora si cont: activarea/dezactivarea unui mediu,
|
||||||
|
schimbarea mediului implicit, o trimitere blocata pentru ca mediul cerut nu era disponibil. Util cand
|
||||||
|
vrei sa intelegi „cine, ce, cand".
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Intrebari frecvente
|
||||||
|
|
||||||
|
**Am pus credentiale si dau eroare la salvare.** Credentialele sunt pentru mediul gresit (test pe
|
||||||
|
productie sau invers), sau emailul/parola nu sunt corecte. Un set merge pe exact un mediu.
|
||||||
|
|
||||||
|
**Sunt client doar cu productie, nu am cont de test.** Normal. Lasa Testare dezactivat si lucreaza pe
|
||||||
|
Productie. Nu poti activa Testare fara credentiale de test — nu e o eroare, asa e proiectat.
|
||||||
|
|
||||||
|
**Am trimis din greseala pe Productie.** La RAR o prezentare acceptata (`FINALIZATA`) e finala si nu
|
||||||
|
se poate anula prin aplicatie. De aceea Productie e marcat cu rosu peste tot si cere confirmare la
|
||||||
|
activare. Foloseste Testare cand exersezi.
|
||||||
|
|
||||||
|
**Nu vad butonul de comutare a mediului.** Apare doar cand ai **doua** medii disponibile. Cu unul
|
||||||
|
singur, se trimite automat acolo si nu ai ce comuta.
|
||||||
|
|
||||||
|
**Unde vad ce s-a trimis si unde?** In lista de trimiteri de pe dashboard — fiecare rand are badge-ul
|
||||||
|
de mediu si starea. Pentru verificare independenta direct la RAR, cere-i administratorului lista de
|
||||||
|
finalizate.
|
||||||
Reference in New Issue
Block a user