Prodaja: obavezna identifikacija kupca kod refundacije, ispravljeno mapiranje načina plaćanja

Refundacija po propisu zahteva PIB/JMBG kupca — ako nalog nema klijenta
sa upisanim poreskim brojem, storno sad traži ručni unos pre nego što
se pošalje fiskalni refund zahtev.

TipPlacanja je upoređivao velika slova (Gotovina/Kartica/Virman) dok
Prodaja čuva nazive malim slovima (gotovina/kartica/prenos) — svaka
prodaja je zato padala na paymentType "Other" umesto stvarnog načina
plaćanja. Poređenje je sad case-insensitive.
This commit is contained in:
2026-07-01 15:41:51 +02:00
parent 80be7aa4ee
commit a923082736
3 changed files with 94 additions and 28 deletions
+10 -7
View File
@@ -2,6 +2,7 @@ package fiskal
import (
"math"
"strings"
"ntech/internal/model"
)
@@ -28,18 +29,20 @@ func BrutoCena(neto, stopa float64) float64 {
return math.Round(neto*(1+stopa/100)*100) / 100
}
// TipPlacanja mapira NTech način plaćanja na Teron enumeraciju.
// TipPlacanja mapira NTech način plaćanja na Teron enumeraciju. Poredi bez obzira
// na velika/mala slova jer Prodaja čuva nazive malim slovima ("gotovina", "kartica",
// "prenos"), a Servis velikim ("Gotovina", "Kartica", "Virman").
func TipPlacanja(nacin string) string {
switch nacin {
case "Gotovina":
switch strings.ToLower(nacin) {
case "gotovina":
return "Cash"
case "Kartica":
case "kartica":
return "Card"
case "Virman", "Račun":
case "virman", "račun", "racun", "prenos":
return "WireTransfer"
case "Ček":
case "ček", "cek":
return "Check"
case "Vaučer":
case "vaučer", "vaucer":
return "Voucher"
default:
return "Other"