From 32d7813be67c803f53725190e27e3d76f2e59a14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dalibor=20Markovi=C4=87?= Date: Sat, 20 Jun 2026 01:37:34 +0200 Subject: [PATCH] Nabavke/Servis: nabavna cena u modalu, QR kod na otpremnici - Modal +Novi artikal u nabavkama dobio polje nabavne cene pored prodajne - QR kod dodat u zaglavlje otpremnice (isti mehanizam kao na radnom nalogu) --- internal/handler/servis.go | 12 ++++++++++++ web/static/js/ntech.js | 3 +++ web/templates/stranice/nabavka_forma.html | 16 +++++++++++----- web/templates/stranice/servis_otpremnica.html | 19 +++++++++++++------ 4 files changed, 39 insertions(+), 11 deletions(-) diff --git a/internal/handler/servis.go b/internal/handler/servis.go index 2b118d4..fc7c5fd 100644 --- a/internal/handler/servis.go +++ b/internal/handler/servis.go @@ -680,6 +680,7 @@ type PodaciOtpremnice struct { UkupnoDelovi float64 PreostaloSve float64 ImaAvans bool + QRKod string Klijent *model.Klijent KlijentNaziv string TehnicarNaziv string @@ -757,12 +758,23 @@ func (h *Handler) StampaOtpremnice(w http.ResponseWriter, r *http.Request) { } } + nalogURL := "http" + if r.TLS != nil { + nalogURL += "s" + } + nalogURL += "://" + r.Host + "/servis/" + strconv.FormatInt(id, 10) + var qrKodOtpr string + if png, err := qrcode.Encode(nalogURL, qrcode.Medium, 160); err == nil { + qrKodOtpr = base64.StdEncoding.EncodeToString(png) + } + h.renderujStandalone(w, "servis_otpremnica", PodaciOtpremnice{ Nalog: *nalog, ServisniDelovi: delovi, UkupnoDelovi: ukupnoDelovi, PreostaloSve: preostaloSve, ImaAvans: imaAvans, + QRKod: qrKodOtpr, Klijent: klijent, KlijentNaziv: klijentNaziv, TehnicarNaziv: tehnicarNaziv, diff --git a/web/static/js/ntech.js b/web/static/js/ntech.js index 92c0a63..571c5d6 100644 --- a/web/static/js/ntech.js +++ b/web/static/js/ntech.js @@ -201,6 +201,7 @@ document.addEventListener('alpine:init', () => { modalOpis: '', modalKolicina: '', modalKolicinaMin: '', + modalNabavnaCena: '', modalCena: '', modalLokacija: '', modalNapomena: '', @@ -313,6 +314,7 @@ document.addEventListener('alpine:init', () => { this.modalOpis = '' this.modalKolicina = '' this.modalKolicinaMin = '' + this.modalNabavnaCena = '' this.modalCena = '' this.modalLokacija = '' this.modalNapomena = '' @@ -334,6 +336,7 @@ document.addEventListener('alpine:init', () => { params.append('opis', this.modalOpis.trim()) if (this.modalKolicina) params.append('kolicina', this.modalKolicina) if (this.modalKolicinaMin) params.append('kolicina_min', this.modalKolicinaMin) + if (this.modalNabavnaCena) params.append('nabavna_cena', this.modalNabavnaCena) if (this.modalCena) params.append('prodajna_cena', this.modalCena) params.append('lokacija', this.modalLokacija.trim()) params.append('napomena', this.modalNapomena.trim()) diff --git a/web/templates/stranice/nabavka_forma.html b/web/templates/stranice/nabavka_forma.html index 1851d32..822ffd1 100644 --- a/web/templates/stranice/nabavka_forma.html +++ b/web/templates/stranice/nabavka_forma.html @@ -317,11 +317,17 @@ -
- - +
+
+ + +
+
+ + +
diff --git a/web/templates/stranice/servis_otpremnica.html b/web/templates/stranice/servis_otpremnica.html index d714fa7..0362fcb 100644 --- a/web/templates/stranice/servis_otpremnica.html +++ b/web/templates/stranice/servis_otpremnica.html @@ -88,12 +88,19 @@ {{if .PIB}}PIB: {{.PIB}}{{end}}
-
-
Otpremnica
-
{{.Nalog.BrojNaloga}}
-
Datum: {{.Nalog.DatumPrijema.Format "02.01.2006."}}
- {{if .Nalog.DatumZavrsetka}} -
Završeno: {{.Nalog.DatumZavrsetka.Format "02.01.2006."}}
+
+
+
Otpremnica
+
{{.Nalog.BrojNaloga}}
+
Datum: {{.Nalog.DatumPrijema.Format "02.01.2006."}}
+ {{if .Nalog.DatumZavrsetka}} +
Završeno: {{.Nalog.DatumZavrsetka.Format "02.01.2006."}}
+ {{end}} +
+ {{if .QRKod}} + QR {{.Nalog.BrojNaloga}} {{end}}