Ghid validare cost - venit · Capitol 13
Test cases QA — input → output așteptat
30 scenarii concrete cu cifre exacte. Fiecare card e independent, cu buton „copiază JSON” pentru import direct în suita de test automatizate.
Ce înveți aici
- Fiecare test are: context, input structurat, output așteptat (cu cifre), articole contabile generate și raportarea declanșată.
- Butonul „copiază JSON” oferă payload-ul complet — util pentru testele automate (Postman, Jest, k6).
- Filtrarea pe modul permite QA specializat pe echipe (echipa Farmacie testează doar TC-FARM-*).
- Toate cifrele sunt calculate pe baza tarifelor 2026 și a legislației citate în capitolele anterioare.
Rezultate: 30 scenarii.
UPUTC-UPU-01Triaj cod verde, externare directă
Pacient adult, plagă superficială antebraț, sutură + pansament.
Input
- cnp
- 1900101...
- ora_sosire
- 10:15
- nivel_triaj
- IV (verde)
- medic
- Dr. Popescu (gardă zi)
- timp_ingrijire_min
- 45
- consumabile
- 1 kit sutură 32 lei, 4 comprese 3 lei
- medicatie
- Xilină 1% 0,5 lei
Output așteptat
- cost_personal
- 71,25 lei
- cost_materiale
- 35,50 lei
- cost_total_caz
- 106,75 lei
- coplata
- 0 (interzisă la UPU)
- venit_pe_caz
- 0 (finanțare forfetară MS)
- raportare_ms
- 1 pacient cod IV
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 641.UPU.MS-UPU | 421 | 71,25 |
| 6451.UPU.MS-UPU | 4315 | 1,60 |
| 6028.UPU.MS-UPU | 3028.UPU | 35,00 |
| 6022.UPU.MS-UPU | 3022.UPU | 0,50 |
Raportare declanșată: Registru UPU electronic (Ord. MS 1706/2007) — inclus în raport lunar MS
UPUTC-UPU-02Cod roșu politraumă → internare ATI
Politraumă rutier, stabilizare 2h15min, transfer ATI.
Input
- nivel_triaj
- I (roșu)
- timp_ingrijire_min
- 135
- personal
- 1 medic 2,25h × 95 lei
- intubatie_materiale
- 380
- medicatie_urgenta
- 240
- ct_intern
- 620
Output așteptat
- cost_upu_total
- 1.453,75 lei (contabil, fără CT intern)
- dispozitie
- internare ATI (FOCG nou, nu se transferă cost UPU)
- centru_cost
- UPU (rămâne acolo — finanțare MS)
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 641.UPU.MS-UPU | 421 | 213,75 |
| 6028.UPU.MS-UPU | 3028.UPU | 380,00 |
| 6022.UPU.MS-UPU | 3022.UPU | 240,00 |
Raportare declanșată: Registru UPU + trigger handoff FOCG către ATI (SMCP)
UPUTC-UPU-03LWBS (Left Without Being Seen)
Pacient triat asistent, plecat înainte de examinare medic.
Input
- nivel_triaj
- III
- triaj_asistent_min
- 8
- medic_examinare
- nu
Output așteptat
- status
- LWBS (raportare distinctă)
- cost_personal
- 6 lei (asistent 45 lei/h × 8/60)
- consultatie_completa
- NU se raportează
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 641.UPU.MS-UPU | 421 | 6,00 |
Raportare declanșată: Registru UPU cu status LWBS — indicator calitate ANMCS
AMBTC-AMB-01Consultație inițială cardiologie cu bilet
Pacient asigurat, bilet trimitere valabil, consult inițial cardiologie.
Input
- specialitate
- Cardiologie
- tip
- consult inițial
- punctaj_serviciu
- 5.5
- valoare_punct_2026
- 6.5
- card_validat
- true
- bilet_valabil
- true
Output așteptat
- venit_brut
- 35,75 lei (5,5 × 6,5)
- raportare_siui
- acceptat
- coplata_optionala
- 0 (nu se aplică ambulator specialitate)
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 4111.AMB.CNAS-AMB | 7511.CARDIO.CNAS-AMB | 35,75 |
Raportare declanșată: SIUI ambulator (fișier XML lunar)
AMBTC-AMB-02Consultație fără bilet — cazuri Anexa 13
Pacient hipertensiv, control la 3 luni, boală cronică din Anexa 13.
Input
- specialitate
- Cardiologie
- tip
- control
- motiv
- Boală cronică Anexa 13 (excepție bilet)
- punctaj
- 3
Output așteptat
- venit
- 19,50 lei (3,0 × 6,5)
- raportare_siui
- acceptat cu marker excepție
- blocare_bilet
- NU (Anexa 13)
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 4111.AMB.CNAS-AMB | 7511.CARDIO.CNAS-AMB | 19,50 |
Raportare declanșată: SIUI cu flag Anexa 13
AMBTC-AMB-03Depășire plafon medic — regularizare trimestrială
Medic cardiolog realizează în T1 8.500 puncte; plafon lunar 2.500 × 3 = 7.500.
Input
- puncte_realizate_t1
- 8500
- plafon_trimestrial
- 7500
- valoare_provizorie
- 6.5
- valoare_ajustata_75pct
- 4.875
Output așteptat
- puncte_platite_plafon
- 7500
- puncte_peste_plafon
- 1000
- venit_sub_plafon
- 48.750 lei
- venit_peste_plafon
- 4.875 lei (× 4,875, redusă 75%)
- venit_total_t1
- 53.625 lei
Raportare declanșată: SIUI regularizare T1 (fișier trimestrial cu ajustare)
AMBTC-AMB-04Pacient neasigurat urgență ambulator
Urgență medicală, pacient neasigurat, acordare obligatorie.
Input
- asigurat
- false
- tip_urgenta
- medicala
- punctaj
- 5.5
Output așteptat
- decont_cnas
- 0 (nu se raportează SIUI)
- factura_venituri_proprii
- 50 lei (tarif intern spital)
- cont_venit
- 7031
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 4111.AMB.VP-CER | 7031.AMB | 50,00 |
INTTC-INT-01Apendicectomie laparoscopică — DRG
Bărbat 32 ani, apendicită acută (K35.8), apendicectomie laparoscopică, spitalizare 3 zile.
Input
- diag_principal
- K35.80
- procedura
- 47.09 (laparoscopie apendice)
- cod_drg
- H07C
- icm
- 0.9821
- tcp_cnas_2026
- 2350
Output așteptat
- venit_drg
- 2.308 lei (2350 × 0,9821)
- cost_smcp_estimat
- 1.980 lei (personal 620 + farm 340 + lab 180 + hotelier 3z×80 + amort 340 + materiale 240 + block op 60)
- marja_caz
- +328 lei (+16,6%)
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 4111.CHIR.CNAS-DRG | 7511.CHIR.CNAS-DRG | 2.308,00 |
Raportare declanșată: SIUI DRG lunar
INTTC-INT-02AVC ischemic cu tromboliză (I63) — cost > venit
Femeie 68 ani, AVC ischemic cu tromboliză cu alteplază, spitalizare 8 zile.
Input
- diag_principal
- I63.9
- procedura
- 99.10 (tromboliză sistemică)
- cod_drg
- B70A
- icm
- 2.418
- tcp_2026
- 2350
- cost_alteplaza
- 3800
- cost_reanimare
- 4200
- cost_investigatii_ct_rm
- 950
Output așteptat
- venit_drg
- 5.682 lei
- cost_smcp_total
- 10.400 lei estimat
- marja
- -4.718 lei (subfinanțare structurală)
- alerta_manager
- DA (cazul depășește 150% TCP × ICM)
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 4111.NEURO.CNAS-DRG | 7511.NEURO.CNAS-DRG | 5.682,00 |
Raportare declanșată: SIUI DRG + raport intern subfinanțare
INTTC-INT-03Chimioterapie cu Trastuzumab — PN pass-through
Pacientă cu cancer mamar HER2+, ciclu Trastuzumab în spitalizare zi.
Input
- doza_trastuzumab_mg
- 440
- pret_flacon_440mg
- 4850
- cnp_pacient_valid
- true
- cod_atc
- L01FD01
- protocol_pn
- PN9.C40.4
Output așteptat
- cost_consum
- 4.850 lei (D 6022.ONCO.PN)
- venit_pass_through
- 4.850 lei (C 7515.ONCO.PN)
- marja_pn
- 0 (pass-through 100%)
- raportare_des_sipe
- obligatorie same-day
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 6022.ONCO.PN | 3021.FARM.PN | 4.850,00 |
| 4111.ONCO.PN | 7515.ONCO.PN | 4.850,00 |
Raportare declanșată: SIUI PN lunar + DES/SIPE per pacient
INTTC-INT-04Deces < 24h internare
Bărbat 78 ani, IMA masiv, deces la 6h de la internare CCU.
Input
- diag
- I21.9
- timp_internare_h
- 6
- tip_externare
- deces
Output așteptat
- cod_drg
- aplicabil dar cu flag „deces < 24h”
- decont_cnas
- poate fi reajustat
- raport_anmcs
- obligatoriu (indicator calitate mortalitate 24h)
Raportare declanșată: SIUI DRG + ANMCS + Certificat medical constatator deces
INTTC-INT-05Reinternare < 30 zile aceeași afecțiune
Pacient externat 15 zile în urmă cu I50.9, revenire cu aceeași cauză.
Input
- zile_de_la_externare
- 15
- diag_curent
- I50.9
- diag_prima_internare
- I50.9
Output așteptat
- alerta_soft
- DA — verificare regulă anti-fragmentare DRG
- posibilitate_refuz_cnas
- DA (dacă se dovedește internare fracționată artificial)
- workflow_documentare
- Justificare medicală obligatorie în FOCG
Raportare declanșată: SIUI DRG cu flag reinternare
FARMTC-FARM-01NIR medicament PN cu verificare SNVM
Recepție 100 flac. Trastuzumab prin acord-cadru ONAC.
Input
- cantitate
- 100
- pret_unit
- 4850
- valoare_fara_tva
- 485000
- tva_9pct
- 43650
- snvm_verificate
- 100
- snvm_status
- toate active
Output așteptat
- intrare_stoc
- 528.650 lei
- angajament_verificat
- DA (contract-cadru)
- viza_cfpp_nir
- obligatorie
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 3021.FARM.PN | 401.PN | 528.650,00 |
Raportare declanșată: SNVM decommissioning la eliberare + SIUI PN lunar
FARMTC-FARM-02Consum pe secție — bon consum medicament curent
Farmacia eliberează pe Chirurgie: 40 flac. Ceftriaxonă 1g × 4,80 lei.
Input
- cantitate
- 40
- pret_unit
- 4.8
- sectie
- CHIR
Output așteptat
- valoare_consum
- 192 lei
- stoc_decontat_fefo
- DA (lot cu expirare cea mai apropiată)
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 6022.CHIR.CNAS-DRG | 3021.FARM | 192,00 |
FARMTC-FARM-03Retragere lot (recall EMA)
EMA emite recall pentru lot X al Metforminei — blocare automată în stoc.
Input
- lot
- MTF2024-089
- cantitate_stoc
- 250
- valoare
- 175
Output așteptat
- blocare_eliberare
- IMEDIATĂ (soft blochează bon consum lot)
- notificare_farmacist
- obligatorie
- actiune_ulterioara
- returnare furnizor sau distrugere PV comisie
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 671 | 3021.FARM | 175,00 |
Raportare declanșată: Notificare ANMDMR
FARMTC-FARM-04Expirare medicament în stoc
10 flac. Insulină expirate identificate la inventar.
Input
- cantitate
- 10
- valoare
- 320
- motiv
- expirare
Output așteptat
- cheltuiala_extraordinara
- 320 lei
- pv_distrugere
- obligatoriu semnat comisie
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 671 | 3021.FARM | 320,00 |
LABTC-LAB-01Hemoleucogramă ambulator — cost vs. tarif Anexa 17
Analiză paraclinic pacient ambulator, cerere de la medic de familie.
Input
- test
- Hemoleucograma completă
- tarif_anexa17_2026
- 12.5
- cost_reactiv
- 4.2
- cost_personal_alocat
- 2.1
- cost_amortizare_pro_rata
- 1.8
Output așteptat
- venit_cnas
- 12,50 lei
- cost_total_test
- 8,10 lei
- marja_test
- +4,40 lei (+35%)
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 4111.LAB.CNAS-PAR | 7511.LAB.CNAS-PAR | 12,50 |
Raportare declanșată: SIUI paraclinic lunar
LABTC-LAB-02Panic value — potasiu 6,8 mmol/L
Test biochimic ambulator cu rezultat critic.
Input
- test
- K seric
- valoare
- 6.8
- prag_critic
- 6
Output așteptat
- alerta_panic
- DA (soft trigger)
- notificare_medic_curant
- obligatorie (telefonic + audit trail)
- eliberare_rezultat
- blocată până confirmare notificare
Raportare declanșată: Registru panic value (indicator ANMCS)
LABTC-LAB-03Test QC eșuat — lot reactiv out-of-range
Control calitate zilnic la glicemie: valoare țintă 100, măsurat 118 (peste ±2SD).
Input
- test
- Glicemie QC
- asteptat
- 100
- obtinut
- 118
Output așteptat
- raportare_rezultate_pacient
- BLOCATĂ până rerulare QC în target
- actiune_soft
- notificare tehnician + șef laborator
- documentare
- log QC + acțiune corectivă
Raportare declanșată: Log intern QC + posibil raport EQA lunar
SALTC-SAL-015 gărzi UPU medic Chirurgie
Medic Chirurgie face 5 gărzi UPU (2 sâmbătă, 3 marți-joi noapte). Tarif 62 lei/h × 12h.
Input
- tarif_orar
- 62
- ore_garda
- 12
- garzi_weekend
- 2
- majorare_wknd
- 2
- garzi_zi_lucratoare
- 3
- majorare_noapte
- 1.75
Output așteptat
- valoare_garzi_wknd
- 2.976 lei
- valoare_garzi_noapte
- 3.906 lei
- valoare_garzi_total
- 6.882 lei
- cam_2_25
- 154,85 lei
- centru_cost
- UPU (nu Chirurgie)
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 6421.UPU.MS-UPU | 421 | 6.882,00 |
| 6451.UPU.MS-UPU | 4315 | 154,85 |
Raportare declanșată: D112 + Forexebug art. 10 + REVISAL (fără schimbare contract)
SALTC-SAL-02Concediu medical > 5 zile — recuperare FNUASS
Angajat cu CM 12 zile, indemnizație platită de spital, recuperabilă FNUASS după prima săptămână.
Input
- zile_cm
- 12
- indemnizatie_zilnica
- 180
- zile_platite_spital
- 5
- zile_platite_fnuass
- 7
Output așteptat
- cost_spital
- 900 lei (5 × 180)
- creanta_fnuass
- 1.260 lei (7 × 180)
- raportare
- declarație D112 cu marker recuperare
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 641 | 421 | 900,00 |
| 4382 | 7728 | 1.260,00 |
SALTC-SAL-03Blocare > 20 gărzi lunare
Manager încearcă să programeze 21 gărzi/lună pentru medic.
Input
- garzi_deja_programate
- 20
- tentativa_noua_garda
- 1
Output așteptat
- rezultat
- BLOCARE (OMS 870/2004)
- motiv
- plafon 20 gărzi/lună depășit
ACHTC-ACH-01Angajament bugetar peste disponibil
Tentativa emitere comandă 145.000 lei pe articol cu disponibil rămas 92.000 lei.
Input
- articol_buget
- 20.03.01 Medicamente
- disponibil
- 92000
- valoare_comanda
- 145000
Output așteptat
- rezultat
- BLOCARE (nu se emite angajament)
- alerta
- Solicitați rectificare BVC sau reduceți comanda
Raportare declanșată: Forexebug — nu se transmite (blocat)
ACHTC-ACH-02Ordonanțare fără viza CFPP
Contabil încearcă să ordonanteze plată fără viza CFPP înregistrată.
Input
- lichidare_completa
- true
- viza_cfpp
- false
Output așteptat
- rezultat
- BLOCARE (art. 52 L 500/2002)
- workflow
- trimitere la controlor financiar pentru viză
ACHTC-ACH-03Contract subsecvent ONAC — cadru medicamente centralizate
Comandă în cadrul acordului ONAC pentru citostatice, angajament anual deja aprobat.
Input
- acord_onac
- AC-ONAC-2026-Onco
- angajament_anual_aprobat
- 12000000
- comenzi_deja_emise_2026
- 3200000
- comanda_curenta
- 528650
Output așteptat
- angajament_ramas
- 8.271.350 lei
- re_angajament_necesar
- NU (sub cadrul anual)
- raportare_platforma_onac
- obligatorie în 10 zile
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 3021.FARM.PN | 401.PN | 528.650,00 |
Raportare declanșată: Platformă ONAC + SEAP
IMOTC-IMO-01PIF Angiograf PNRR + amortizare + subvenție
PIF angiograf primit prin PNRR, 3.600.000 lei, durata 10 ani.
Input
- valoare
- 3600000
- durata_ani
- 10
- sursa
- PNRR
Output așteptat
- inregistrare_pif
- D 2131 3.600.000 / C 139.PNR 3.600.000
- amortizare_lunara
- 30.000 lei (D 6811 / C 2813)
- recunoastere_subventie_lunara
- 30.000 lei (D 139.PNR / C 7584.PNR)
- impact_rezultat_lunar
- 0 (cheltuială = venit)
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 2131.ANGIO | 139.PNR | 3.600.000,00 |
| 6811 | 2813.ANGIO | 30.000,00 |
| 139.PNR | 7584.PNR | 30.000,00 |
Raportare declanșată: Forexebug capitol 71 (investiții) + raport progres PNRR
IMOTC-IMO-02Casare aparatură PNRR înainte de amortizare finalizată
CT PNRR stricat definitiv după 4 ani; valoare intrare 4.800.000, amortizat 4/12 = 1.600.000.
Input
- valoare_intrare
- 4800000
- amort_cumulata
- 1600000
- val_ramasa
- 3200000
- sursa
- PNRR
Output așteptat
- articol_scoatere
- D 2813 1.600.000 + D 671 3.200.000 / C 2131 4.800.000
- neutralizare_subventie
- D 139.PNR 3.200.000 / C 7584.PNR 3.200.000
- impact_net
- 0
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 2813.CT | 2131.CT | 1.600.000,00 |
| 671 | 2131.CT | 3.200.000,00 |
| 139.PNR | 7584.PNR | 3.200.000,00 |
RECTC-REC-01Reconciliere SIUI ↔ 7511 cu refuzuri
Raportare SIUI Chirurgie luna martie 240 cazuri 3.850.000 lei; Nota decont CNAS 3.720.000 (8 refuzate).
Input
- cazuri_raportate
- 240
- valoare_raportata
- 3850000
- cazuri_acceptate
- 232
- valoare_acceptata
- 3720000
- cazuri_refuzate
- 8
- valoare_refuzata
- 130000
Output așteptat
- storno_necesar
- 130.000 lei
- articol_storno
- D 7511.CHIR.CNAS-DRG 130.000 / C 4111.CHIR.CNAS-DRG 130.000
- sold_4111_dupa_storno
- 3.720.000 = Notă decont ✓
- workflow_contestatii
- 8 cazuri intră în queue contestații
Articole contabile generate
| Debit | Credit | Sumă |
|---|---|---|
| 7511.CHIR.CNAS-DRG | 4111.CHIR.CNAS-DRG | 130.000,00 |
RECTC-REC-02Reconciliere D112 ↔ balanță salarii
Închidere lună salarii; D112 totalizează 12.480.000 brut, sold 421 din balanță 12.480.000.
Input
- d112_brut
- 12480000
- sold_421
- 12480000
- cas_d112
- 3120000
- sold_4312
- 3120000
Output așteptat
- reconciliere
- MATCH pe toate rubricile
- d112_emis
- DA (fără blocare)
- diferenta_toleranta
- 0 lei
RECTC-REC-03Reconciliere Farmacie PN — pierdere aparentă
Luna N: consum 6022.PN = 850.000 lei; venit 7515.PN doar 780.000 (70k pacienți neasigurați/greșeli cod ATC).
Input
- consum_pn
- 850000
- venit_pn_decontat
- 780000
- diferenta
- 70000
Output așteptat
- alerta_analiza
- DA — investigare fiecare bon > 5.000 lei fără decont
- posibile_cauze
- pacient neasigurat, cod ATC greșit, protocol PN neaprobat
- actiune
- recuperare posibilă prin contestație sau ajustare cont 671
Raportare declanșată: Raport intern + eventual contestație CNAS
Cum se folosesc scenariile în suita QA automată
Fiecare card conține payload-ul JSON complet pentru un test end-to-end. Extrage cu «copiază JSON» → creează test în Jest/Vitest care apelează API-ul sistemului contabil cu input și verifică că răspunsul conține expected. Pentru articolele contabile, testează că balanța analitică după rulare conține exact intrările din articole. Pentru raportări, verifică că fișierul XML/CSV generat include cazul cu markerul corect.
