diff --git a/internal/db/repository.go b/internal/db/repository.go index 2d6d279..520d5e1 100644 --- a/internal/db/repository.go +++ b/internal/db/repository.go @@ -13,6 +13,8 @@ type ArtikalRepository interface { DohvatiID(ctx context.Context, id int64) (*model.Artikal, error) Kreiraj(ctx context.Context, a *model.Artikal) (int64, error) Izmeni(ctx context.Context, a *model.Artikal) error + // AzurirajCene menja samo nabavnu i prodajnu cenu (kalkulacija pri nabavci) + AzurirajCene(ctx context.Context, id int64, nabavna, prodajna float64) error PremestiKategoriju(ctx context.Context, id int64, kategorijaID *int64) error Obrisi(ctx context.Context, id int64) error } diff --git a/internal/db/sqlite/artikal.go b/internal/db/sqlite/artikal.go index a324a40..d1e0289 100644 --- a/internal/db/sqlite/artikal.go +++ b/internal/db/sqlite/artikal.go @@ -147,6 +147,16 @@ func (r *ArtikalRepo) Izmeni(ctx context.Context, a *model.Artikal) error { return nil } +// AzurirajCene menja samo nabavnu i prodajnu cenu artikla (kalkulacija pri prijemu robe). +func (r *ArtikalRepo) AzurirajCene(ctx context.Context, id int64, nabavna, prodajna float64) error { + _, err := r.db.ExecContext(ctx, + "UPDATE artikli SET nabavna_cena = ?, prodajna_cena = ? WHERE id = ?", nabavna, prodajna, id) + if err != nil { + return fmt.Errorf("ntech: ArtikalRepo.AzurirajCene: %w", err) + } + return nil +} + // PremestiKategoriju menja samo kategoriju artikla (premeštanje u drugu kategoriju). // kategorijaID može biti nil — tada artikal ostaje bez kategorije. func (r *ArtikalRepo) PremestiKategoriju(ctx context.Context, id int64, kategorijaID *int64) error { diff --git a/internal/handler/nabavka.go b/internal/handler/nabavka.go index ecc0101..a6cdd84 100644 --- a/internal/handler/nabavka.go +++ b/internal/handler/nabavka.go @@ -30,6 +30,7 @@ type PodaciFormeNabavke struct { ArtikliJSON template.JS // JSON niz artikala za Alpine.js — bezbedan za umetanje u +