Implementeaza PRD 3.6 (US-001..007), pe canalul de import + stratul web;
worker / masina stari / idempotenta / mapare raman neatinse.
- US-003/004: tab-ul "Trimiteri" eliminat; Trimiterile devin sectiune
permanenta sub upload pe Acasa ("Trimiterile tale"); upload comprimat la
bara slim (hero pastrat la first-run); ?tab=coada si /_fragments/coada
servesc Acasa (fara fragment orfan); poll gated pe visibilityState.
- US-001: coloana noua import_rows.override_json (nullable, Fernet, Approach B)
+ _migrate defensiv; ruta v1 + alias web .../rand/{i}/editeaza aplica patch
canonic ULTIMUL in _resolve_row_for_preview si commit_import (mutatie pura,
status rederivat, fara drift). Scoping JOIN -> 404, guard committed -> 409,
semantica empty=clear, decrypt fail -> no-op.
- US-002: buton "Editeaza" pe rand; swap pe <tr> + OOB contoare (nu pe sectiune);
form propriu (confirm dezactivat la editare); refoloseste grila responsiva +
error-map din _trimitere_detaliu.html; mutual-exclusion intre randuri.
- US-005/006: "De rezolvat", "Operatii salvate" si "Formate de coloane" ca
tabele (.tablewrap); H4: comutatorul reflecta auto_send STOCAT.
- US-007: bifa "auto-send" devine comutator etichetat pe COADA ("Pune automat
in coada" / "Tine pentru verificare"), scoped pe operatie; name="auto_send"
pastrat (semantica de prezenta -> bool corect cu ambele parsere, zero backend).
Fix-uri gasite la verificarea E2E in browser (htmx 1.9.12, JS — invizibile la
TestClient): useTemplateFragments=true (raspuns <tr>+OOB era parsat in context
de tabel -> swapError + contoare pierdute); re-activarea confirm-btn dupa salvare
deferita pe tick (evita editing=true tranzitoriu); n-hint actualizat de updateN.
Teste: 523 passed. E2E browser: Acasa unificata, upload slim, editare rand
(needs_data -> ok, swap pe rand, contoare OOB), Mapari tabelar + comutator.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
65 lines
2.6 KiB
HTML
65 lines
2.6 KiB
HTML
<div id="acasa-section">
|
|
|
|
{# === Centru de greutate: bara de upload (importul e operatia principala) === #}
|
|
{% include '_upload.html' %}
|
|
|
|
{# === Subordonat: primii pasi pe un singur rand compact === #}
|
|
{% set toti_esentiali = are_creds and are_trimiteri %}
|
|
{% if not toti_esentiali %}
|
|
<div class="card" style="margin-top:14px; padding:12px 16px;">
|
|
<div style="display:flex; gap:20px; flex-wrap:wrap; align-items:center; font-size:13px;">
|
|
<span class="muted" style="font-weight:600;">Primii pasi:</span>
|
|
|
|
{# Pas 1: Cont RAR (esential) #}
|
|
<span style="display:inline-flex; align-items:center; gap:6px;">
|
|
{% if are_creds %}
|
|
<span class="s-sent" aria-hidden="true" style="font-weight:bold;">✓</span>
|
|
{% else %}
|
|
<span class="muted" aria-hidden="true">○</span>
|
|
{% endif %}
|
|
<a href="/?tab=cont">Cont RAR</a>
|
|
</span>
|
|
|
|
{# Pas 2: Cheie API (optional) #}
|
|
<span style="display:inline-flex; align-items:center; gap:6px;">
|
|
{% if are_cheie_folosita %}
|
|
<span class="s-sent" aria-hidden="true" style="font-weight:bold;">✓</span>
|
|
{% else %}
|
|
<span class="muted" aria-hidden="true">○</span>
|
|
{% endif %}
|
|
<a href="/?tab=cont">Cheie API</a>
|
|
<span class="muted">(optional)</span>
|
|
</span>
|
|
|
|
{# Pas 3: Import (esential) — marcat ca pas curent #}
|
|
<span style="display:inline-flex; align-items:center; gap:6px;">
|
|
{% if are_trimiteri %}
|
|
<span class="s-sent" aria-hidden="true" style="font-weight:bold;">✓</span>
|
|
{% else %}
|
|
<span class="s-queued" aria-hidden="true" style="font-weight:bold;">●</span>
|
|
{% endif %}
|
|
<strong>Import</strong> <span class="muted">(incarca fisierul sus)</span>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
{# === Subordonat: ajutor rapid pe un rand discret ===
|
|
US-003 (3.6): linkul redundant "Trimiteri" a fost scos (Trimiterile sunt mai jos
|
|
pe aceeasi pagina). Wayfinding "Mapari"/"Coduri RAR" pastrat pentru operatori. #}
|
|
<div style="margin-top:10px; font-size:13px; color:var(--muted);
|
|
display:flex; gap:16px; flex-wrap:wrap; align-items:center;">
|
|
<span>Ajutor:</span>
|
|
<a href="/?tab=mapari">Mapari</a>
|
|
<a href="/?tab=nomenclator">Coduri RAR</a>
|
|
</div>
|
|
|
|
{# === Sectiunea Trimiteri ("Trimiterile tale"), permanenta sub upload (US-003).
|
|
Suprimata la first-run (zero trimiteri): bara de upload acopera deja CTA-ul,
|
|
iar empty-state-ul tabelului ar fi redundant (US-004 / D-5.1). === #}
|
|
{% if are_trimiteri %}
|
|
{% include '_coada.html' %}
|
|
{% endif %}
|
|
|
|
</div>
|