fix(web): detaliul trimiterii arata toate codurile RAR cand prima prestatie e exclusa
cod_rar se deriva acum din toate prestatiile (primul cod mapat), nu doar din primul item; modalul afiseaza lista completa de coduri. Randurile importate editate pastreaza operatia originala ca item 0 exclus fara cod, iar codurile adaugate sunt itemii urmatori — modalul afisa fals "nemapat". Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -126,8 +126,11 @@ def prezentare_din_payload(payload: str | dict | None) -> dict[str, Any]:
|
||||
denumire = _clean_str(item.get("denumire"))
|
||||
operatie = denumire or cod
|
||||
|
||||
# cod_rar: exclusiv din cod_prestatie (NU fallback la cod_op_service); uppercase + strip ".0"
|
||||
cod_rar = _clean_cod_rar(item.get("cod_prestatie"))
|
||||
# cod_rar: primul cod_prestatie din TOATE prestatiile (NU doar primul item si NU
|
||||
# fallback la cod_op_service). Primul item poate fi operatia originala exclusa
|
||||
# (cod_prestatie null), cu codurile declarate pe itemii urmatori.
|
||||
coduri_rar = _coduri_rar(data.get("prestatii"))
|
||||
cod_rar = coduri_rar[0] if coduri_rar else ""
|
||||
|
||||
# Operatia de service originala (codul intern + denumire venita prin API/import),
|
||||
# distincta de operatia RAR mapata (cod_rar).
|
||||
@@ -154,7 +157,7 @@ def prezentare_din_payload(payload: str | dict | None) -> dict[str, Any]:
|
||||
"cod_rar": cod_rar or EMPTY,
|
||||
# Lista ordonata, fara duplicate, a codurilor RAR din TOATE prestatiile
|
||||
# (goala cand nimic nu e mapat). Randul compact afiseaza primul + "+N".
|
||||
"coduri_rar": _coduri_rar(data.get("prestatii")),
|
||||
"coduri_rar": coduri_rar,
|
||||
# Chei cu conventie goala "" (nu EMPTY) — vezi comentariu de mai sus
|
||||
"op_service_cod": op_service_cod,
|
||||
"op_service_denumire": op_service_denumire,
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
{% import '_macros.html' as ui %}
|
||||
{# Detaliu editabil in-place. Fragmentul se swap-uieste in corpul modalului global
|
||||
(#detaliu-modal-body). Heading-ul poarta id-ul folosit de aria-labelledby al dialogului.
|
||||
Operatie + cod RAR rezolvat apar IMPREUNA, read-only, folosind `prez.cod_rar`
|
||||
(fallback „nemapat"), fara eticheta separata „Cod RAR". #}
|
||||
{% set cod_afis = prez.cod_rar if (prez.cod_rar and prez.cod_rar != '—') else 'nemapat' %}
|
||||
Operatie + coduri RAR rezolvate apar IMPREUNA, read-only, folosind `prez.coduri_rar`
|
||||
(toate codurile, fallback „nemapat"), fara eticheta separata „Cod RAR". #}
|
||||
{% set cod_afis = prez.coduri_rar | join(', ') if prez.coduri_rar else 'nemapat' %}
|
||||
<div class="card" id="detaliu-card-{{ id }}" style="border:none; padding:0; margin:0;">
|
||||
|
||||
{# === Header — #id + pill stare + badge mediu RAR + motiv === #}
|
||||
|
||||
Reference in New Issue
Block a user