Knjigovodstvo i fiskalizacija: dashboard upozorenje za praznine, KPO dozvole, pojednostavljen storno, ispravke verifikacije i kasira

- Dashboard kartica prikazuje naloge bez KIR/KPO/fiskalnog upisa i sumnjive duplikate (double-submit), sa zaštitom od automatskog dupliranja prihoda pri bulk dopuni
- Registrovane nedostajuće KPO dozvole (kpo.pregled/dodaj/obrisi) — modul je bio potpuno nedostupan
- Uklonjen suvišan/nefunkcionalan 'Ukloni nalog' (duplirao Storno bez stvarne razlike); Storno u listi prodaje sad vodi direktno na formu
- Kasir na fiskalnom računu koristi ime prijavljenog korisnika umesto fiksnog podešavanja
- Fiskalni računi za nalog uvek prikazuju najnoviji zapis (original vs. refund posle storna)
- Verifikaciona stranica (/v/) jasno označena kao lokalna test simulacija, ne prava provera kod PURS-a; dodat prikaz kusura
- Mock brojač fiskalnih računa (kartica emulator) sad preživljava restart servera
This commit is contained in:
2026-07-01 23:01:26 +02:00
parent fcae2ae441
commit 3a0f98622b
20 changed files with 417 additions and 124 deletions
+9
View File
@@ -52,6 +52,7 @@ type fiskalVerifikacijaPodaci struct {
Podaci *FiskalVlPodaci
Greska string
JeFiskalni bool
Kusur float64 // zbir plaćanja umanjen za ukupan iznos, prikazuje se samo ako je > 0
}
func (h *Handler) FiskalVerifikacija(w http.ResponseWriter, r *http.Request) {
@@ -88,5 +89,13 @@ func (h *Handler) FiskalVerifikacija(w http.ResponseWriter, r *http.Request) {
vlPodaci.InvoiceType != "Training" &&
vlPodaci.InvoiceType != "Proforma"
var placeno float64
for _, p := range vlPodaci.Payments {
placeno += p.Amount
}
if kusur := placeno - vlPodaci.TotalAmount; kusur > 0.005 {
podaci.Kusur = kusur
}
h.renderujStandalone(w, "fiskal_verifikacija", podaci)
}