README: usklađeno sa stvarnim stanjem — servis modul, troškovi, usluge, izveštaji, HTMX

This commit is contained in:
2026-06-24 22:15:49 +02:00
parent 3549a1754c
commit fa60e54034
2 changed files with 28 additions and 6 deletions
+14 -3
View File
@@ -38,9 +38,19 @@ The goal is simple: everything the repair shop needs to track is located in one
- Security HTTP headers (CSP, X-Frame-Options, Referrer-Policy, nosniff...) - Security HTTP headers (CSP, X-Frame-Options, Referrer-Policy, nosniff...)
- Login attempt logging — history by user, IP, reason, date - Login attempt logging — history by user, IP, reason, date
- Users and roles — admin panel, user management - Users and roles — admin panel, user management
- Inventory — items, categories, filtering, critical stock levels - Inventory — items, categories, filtering, critical stock levels, per-item stock card, supplier links, item transfers
- Service orders — intake, status bar, costs, receipt - Service orders:
- Intake form, status bar, archive
- Diagnostic workflow — fault description, technician notes, work done, diagnostic fee
- Parts and services — used items deducted from stock; suggested items (proposal to client)
- Client proposal approval — client receives a public link (QR code) to accept or reject a parts/service proposal with a comment
- Public status page — client can check order status and receive notifications via a unique link
- Documents — work order, pre-invoice (estimate), dispatch note, return slip, device label (QR + Code128 barcode)
- Pickup with payment — tracks payment method and advance amount
- Guarantee period, expected completion date, technician assignment, client notes
- Sales orders — items, calculation, receipt with company and client details - Sales orders — items, calculation, receipt with company and client details
- Services catalog — service price list used for billing in service orders
- Expenses — expense records with category and amount
- Procurement — records of purchases from suppliers - Procurement — records of purchases from suppliers
- Sales price calculation on procurement — markup (global, per category, per item), landed costs (customs, shipping...) allocated across items, two-way markup↔price computation; respects VAT-payer status - Sales price calculation on procurement — markup (global, per category, per item), landed costs (customs, shipping...) allocated across items, two-way markup↔price computation; respects VAT-payer status
- Price revaluation (nivelacija) — sales price changes with an audit trail (old→new, reason, source, user) - Price revaluation (nivelacija) — sales price changes with an audit trail (old→new, reason, source, user)
@@ -50,7 +60,7 @@ The goal is simple: everything the repair shop needs to track is located in one
- VAT rate code list - VAT rate code list
- Clients and suppliers — contact database - Clients and suppliers — contact database
- Reminders — records with deadlines - Reminders — records with deadlines
- Reports — revenue overview, inventory status - Reports — revenue overview, inventory status, inventory value report, stock movement list, stocktake (physical count)
- Settings — company name, address, Tax ID (PIB), logo; theme toggle - Settings — company name, address, Tax ID (PIB), logo; theme toggle
- Background images — login page and app, with blur, transparency and glass effect - Background images — login page and app, with blur, transparency and glass effect
- Personal theme and background — each user can set their own theme and background image - Personal theme and background — each user can set their own theme and background image
@@ -83,6 +93,7 @@ The goal is simple: everything the repair shop needs to track is located in one
| [Go](https://go.dev) | backend language | | [Go](https://go.dev) | backend language |
| [chi](https://github.com/go-chi/chi) | HTTP router | | [chi](https://github.com/go-chi/chi) | HTTP router |
| [html/template](https://pkg.go.dev/html/template) | server-side templates | | [html/template](https://pkg.go.dev/html/template) | server-side templates |
| [HTMX](https://htmx.org) | dynamic HTML over HTTP |
| [Alpine.js](https://alpinejs.dev) | client-side UI logic | | [Alpine.js](https://alpinejs.dev) | client-side UI logic |
| [SQLite](https://sqlite.org) + [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | main database (pure Go, no CGO) | | [SQLite](https://sqlite.org) + [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | main database (pure Go, no CGO) |
| [PostgreSQL](https://www.postgresql.org) + [pgx/v5](https://github.com/jackc/pgx) | optional production database | | [PostgreSQL](https://www.postgresql.org) + [pgx/v5](https://github.com/jackc/pgx) | optional production database |
+14 -3
View File
@@ -38,9 +38,19 @@ Cilj je jednostavan: sve što servis treba da prati nalazi se na jednom mestu, b
- Bezbednosni HTTP headeri (CSP, X-Frame-Options, Referrer-Policy, nosniff...) - Bezbednosni HTTP headeri (CSP, X-Frame-Options, Referrer-Policy, nosniff...)
- Evidencija pokušaja prijave — istorija po korisniku, IP, razlog, datum - Evidencija pokušaja prijave — istorija po korisniku, IP, razlog, datum
- Korisnici i uloge — admin panel, upravljanje korisnicima - Korisnici i uloge — admin panel, upravljanje korisnicima
- Magacin — artikli, kategorije, filtriranje, kritični nivoi zaliha - Magacin — artikli, kategorije, filtriranje, kritični nivoi zaliha, magacinska kartica po artiklu, veza sa dobavljačima, premeštanje artikala
- Servisni nalozi — prijem, statusna traka, troškovi, priznanica - Servisni nalozi:
- Forma prijema, statusna traka, arhiva
- Tok dijagnostike — opis kvara, napomene servisera, urađeno, cena dijagnostike
- Delovi i radovi — ugrađeni artikli se skidaju sa lagera; predloženi artikli (ponuda klijentu)
- Odobravanje predloga — klijent dobija javni link (QR kod) da prihvati ili odbije predlog sa komentarom
- Javna statusna stranica — klijent prati status naloga putem jedinstvenog linka
- Dokumenti — radni nalog, predračun, otpremnica, revers, nalepnica za uređaj (QR + Code128 barkod)
- Preuzimanje sa naplatom — način plaćanja i iznos avansa
- Garancija, predviđen datum završetka, serviser, napomena klijentu
- Prodajni nalozi — stavke, obračun, priznanica sa podacima firme i klijenta - Prodajni nalozi — stavke, obračun, priznanica sa podacima firme i klijenta
- Cenovnik usluga — šifarnik usluga za obračun u servisnim nalozima
- Troškovi — evidencija troškova po kategoriji i iznosu
- Nabavke — evidencija nabavki od dobavljača - Nabavke — evidencija nabavki od dobavljača
- Kalkulacija prodajne cene pri nabavci — marža (globalna, po kategoriji i po artiklu), zavisni troškovi (carina, prevoz...) sa raspodelom na stavke, dvosmerni izračun marža↔prodajna; poštuje status PDV obveznika - Kalkulacija prodajne cene pri nabavci — marža (globalna, po kategoriji i po artiklu), zavisni troškovi (carina, prevoz...) sa raspodelom na stavke, dvosmerni izračun marža↔prodajna; poštuje status PDV obveznika
- Nivelacija — promena prodajne cene uz trag (istorija promena: stara→nova, razlog, izvor, korisnik) - Nivelacija — promena prodajne cene uz trag (istorija promena: stara→nova, razlog, izvor, korisnik)
@@ -50,7 +60,7 @@ Cilj je jednostavan: sve što servis treba da prati nalazi se na jednom mestu, b
- Šifarnik PDV stopa - Šifarnik PDV stopa
- Klijenti i dobavljači — baza kontakata - Klijenti i dobavljači — baza kontakata
- Podsetnici — evidencija sa rokom - Podsetnici — evidencija sa rokom
- Izveštaji — pregled prihoda, stanje magacina - Izveštaji — pregled prihoda, stanje magacina, vrednost zaliha, prometni list, popis (inventura)
- Podešavanja — naziv, adresa, PIB, logo firme; promena teme - Podešavanja — naziv, adresa, PIB, logo firme; promena teme
- Pozadinske slike — login stranica i aplikacija, sa zamućenjem, providnošću i glass efektom - Pozadinske slike — login stranica i aplikacija, sa zamućenjem, providnošću i glass efektom
- Lična tema i pozadina — svaki korisnik može svoju temu i pozadinsku sliku - Lična tema i pozadina — svaki korisnik može svoju temu i pozadinsku sliku
@@ -83,6 +93,7 @@ Cilj je jednostavan: sve što servis treba da prati nalazi se na jednom mestu, b
| [Go](https://go.dev) | backend jezik | | [Go](https://go.dev) | backend jezik |
| [chi](https://github.com/go-chi/chi) | HTTP ruter | | [chi](https://github.com/go-chi/chi) | HTTP ruter |
| [html/template](https://pkg.go.dev/html/template) | serverski šabloni | | [html/template](https://pkg.go.dev/html/template) | serverski šabloni |
| [HTMX](https://htmx.org) | dinamički HTML preko HTTP-a |
| [Alpine.js](https://alpinejs.dev) | UI logika na strani klijenta | | [Alpine.js](https://alpinejs.dev) | UI logika na strani klijenta |
| [SQLite](https://sqlite.org) + [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | glavna baza (čisti Go, bez CGO) | | [SQLite](https://sqlite.org) + [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | glavna baza (čisti Go, bez CGO) |
| [PostgreSQL](https://www.postgresql.org) + [pgx/v5](https://github.com/jackc/pgx) | opciona baza za produkciju | | [PostgreSQL](https://www.postgresql.org) + [pgx/v5](https://github.com/jackc/pgx) | opciona baza za produkciju |