feat(pdv): prodaja → KIR automatski (Faza 2b-1)
Kad se sačuva prodaja na klijenta (PDV obveznik), zapis se sam zavede u KIR (model.KirIzProdaje grupiše stavke po stopi). Storno/brisanje prodaje uklanja vezani KIR zapis (ObrisiPoIzvoru). Maloprodaja građanima (bez klijenta) se preskače — ide preko fiskalizacije (Faza 3). Helper modulUkljucen; auto-zapisi u UI nemaju ručno brisanje. Test.
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package handler
|
||||
|
||||
import (
|
||||
"context"
|
||||
"database/sql"
|
||||
"html/template"
|
||||
"io/fs"
|
||||
@@ -130,6 +131,16 @@ func (h *Handler) reinicijalizujRepozitorijume(novaDB *sql.DB) {
|
||||
h.PdvKprRepo = sqlite.NoviPdvKprRepo(novaDB)
|
||||
}
|
||||
|
||||
// modulUkljucen vraća da li je zakonski modul (npr. „pdv") uključen za firmu prema profilu.
|
||||
// Koristi se pri automatskom punjenju KIR/KPR iz prodaje/nabavke.
|
||||
func (h *Handler) modulUkljucen(ctx context.Context, modul string) bool {
|
||||
podesavanja, err := sqlite.DohvatiSvaPodesavanja(ctx, h.DB)
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
return config.ModulUkljucen(podesavanja, modul)
|
||||
}
|
||||
|
||||
// zahtevajDozvolu vraća prijavljenog korisnika ako njegova uloga sme da izvrši akciju.
|
||||
// U suprotnom šalje 403 sa srpskom porukom i vraća ok=false (handler tada return-uje).
|
||||
func (h *Handler) zahtevajDozvolu(w http.ResponseWriter, r *http.Request, akcija string) (*model.Korisnik, bool) {
|
||||
|
||||
Reference in New Issue
Block a user