Knjigovodstvo: storno prodaje/nabavke više ne briše KIR/KPR/KPO
Storno je fizički brisao vezani KIR/KPR/KPO zapis — zakon o računovodstvu ne dozvoljava brisanje poslovnih knjiga (KPO dodatno ima redni broj bez prekida). Sad se original čuva, a storno se dograđuje kao poništavajuća stavka (negirani iznosi, referenca na original) — model.KirStorno/KprStorno/KpoStorno. Usput ispravljen i pravi uzrok prijavljenog bug-a: kirKandidatiProdaje je filtrirala samo internu mapu, ne i listu naloga koju obilazi KirBackfillProdaje — stornirani nalozi su zbog toga dobijali ponovni (pogrešan) KIR upis.
This commit is contained in:
@@ -59,10 +59,18 @@ func sumnjiviDuplikati(svi []kandidatUskladjivanja) map[int64]bool {
|
||||
// KIR upis) sa mapom postojećih upisa i kandidatima za detekciju duplikata. Koristi se
|
||||
// i za backfill (KirBackfillProdaje) i za brojanje praznina na dashboard-u.
|
||||
func (h *Handler) kirKandidatiProdaje(ctx context.Context) ([]model.ProdajniNalogSaDetaljem, map[int64]bool, []kandidatUskladjivanja, error) {
|
||||
nalozi, err := h.ProdajaRepo.Lista(ctx, appdb.ProdajaFilter{})
|
||||
svi, err := h.ProdajaRepo.Lista(ctx, appdb.ProdajaFilter{})
|
||||
if err != nil {
|
||||
return nil, nil, nil, err
|
||||
}
|
||||
// stornirani nalozi se nikad ne razmatraju za KIR upis — ni za backfill ni za
|
||||
// brojanje praznina — jer stornirana prodaja ne predstavlja oporeziv promet
|
||||
var nalozi []model.ProdajniNalogSaDetaljem
|
||||
for _, nd := range svi {
|
||||
if !nd.Stornirano {
|
||||
nalozi = append(nalozi, nd)
|
||||
}
|
||||
}
|
||||
postojiMap := make(map[int64]bool, len(nalozi))
|
||||
var kandidati []kandidatUskladjivanja
|
||||
for _, nd := range nalozi {
|
||||
|
||||
Reference in New Issue
Block a user