Izdvojen partial web/templates/komponente/servis_zaglavlje.html sa dva
{{define}} bloka (zaglavljeFirma, zaglavljeKlijent) — koriste ih revers,
predračun, otpremnica (oba bloka) i eskalacioni list (samo firma; klijent
blok tamo ima drugačiji markup/stil pa nije spojen).
kes.go: dodata standaloneExtraFajlovi mapa da standalone šabloni mogu da
uključe dodatne partial fajlove uz svoj glavni (i u produkcionom kešu i u
dev lazy-parse putanji).
Vizuelno provereno u browseru (sva 4 dokumenta, servis nalog SN-2606-007) —
identičan izgled kao pre refaktora, ispravan redosled kolona po dokumentu.
- PDV uslovi (Moduli.pdv) na: predračun, otpremnica, garantni list, prodaja_stampa
- Modal za preuzimanje: jedna cena (sa/bez PDV), ne duplo
- Javna status stranica: PDV uslovi za cene, predlog, checkbox-ove
- Svi print templejti: viewport=device-width+min-width, bez responsive
- JavniToken generisan za postojeće naloge bez tokena (QR popravka)
- UkupnoSaPdv() metode na ServisniRad i ServisniDeoSaArtiklom
- UkupnoBezPdv() na StavkaProdaje
- Dodati handleri za prihvatanje i odbijanje predloga sa mobilnog
- Prihvatanje: predložene stavke prelaze u ugrađene (predlozeno 1→0)
- Odbijanje: brišu se predložene stavke
- Komentar klijenta uz odluku (textarea na mobilnom, prikaz u detaljima)
- Oznaka na kanbanu za naloge sa predlozima (narandžasta tačka + leva ivica)
- Oznaka na kanbanu za poruku klijenta (💬 dugme, tap za prikaz)
- Spojene kartice Radovi/Predložene usluge i Delovi/Predloženi delovi
- Auto-detekcija predlozeno=1 kad status != Primljeno
- Obrisana Otključaj/Zaključaj dugmad
- Ukupno sa predlogom na javnoj status stranici
- CSRF middleware premešten u zaštićenu grupu
- Migracija 078: komentar_klijenta
- Repo metode: ObrisiPredlozene, AzurirajKomentarKlijenta
- Popravljeno: 405 na odbij, duple rute, razmak između kartica
- Cena dijagnostike u Podešavanja → Servis; na nalogu se predlaže iz podešavanja
- Odbijanje popravke: status Završeno + naplata samo dijagnostike (popravka_odbijena),
sklanjaju se Radovi/Delovi, Ukupno = dijagnostika
- Kartica Nalaz dijagnostike preimenovana u Utvrđeni kvar; editabilna samo u dijagnostici, kasnije readonly
- Nova kartica Urađeno (polje uradjeno) — upis dok je U popravci/Čeka delove, posle readonly
- Dugmad statusa: Završi u U popravci; promena statusa osvežava ceo sadržaj
- Predračun dostupan od Primljeno; radni nalog u U dijagnostici/Čeka delove
- Dropdown radova izostavlja već dodate usluge; kartica radova se osvežava pri izmeni
- Javni status: badge U dijagnostici, prikaz utvrđenog kvara, wordwrap naziva u tabeli
- Štampa: prelom između stavki, ponavljanje zaglavlja, završni blok bez preloma
- Logo na dokumentima ako je ukljucen prikaz loga; helper logoZaDokument
- Jedinstveno zaglavlje (revers/predracun/otpremnica/radni nalog): firma | klijent | barkod+broj+datumi+QR; dodati MB i barkod
- Revers: QR u sekciju Uredjaj desno, bez JMBG, Primio bez imena servisera
- Podesavanja Opste: auto-snimanje sve 3 sekcije (marker _sekcija_firma za checkbox loga)
- Podesiva adresa za QR (qr_bazni_url) za pristup sa telefona / Caddy HTTPS
- Javni status: token se gasi po preuzimanju; predvidjeni datum zavrsetka, garancija i napomena iz baze; nova kartica Radovi i delovi sa procenom
- Nalepnica: uklonjen QR (ostaje na uređaju u servisu, klijent nema šta da skenira);
oslobođen prostor iskorišćen za telefon klijenta i datume (prijem + rok)
- Radni nalog: obrisani „servis_stampa" i „servis_predracun"; nov interni
„servis_radni_nalog" (ruta /servis/{id}/radni-nalog) sa podacima samo za
servisera, bez cena, sa barkodom i praznim poljima (dijagnoza, urađen rad, potpis)
- Forma „Izmeni nalog": kartice „Serviser" i „Avans i napomena" spojene u jednu
„Serviser, avans i napomena"
- Servis kanban: dugme uz SN broj otvara internu napomenu (hover na desktopu,
tap→focus na mobilnom); okidač na omotaču da napomena ne treperi
- Detalji naloga (responsive): forme „Dodaj rad/deo" izvučene iz inline grid-a u
klase + @media (2 kolone na telefonu); tabele radova/delova u tabela-skrol
- Garancija se u detaljima prikazuje kao trajanje na srpskom (npr. „1 mesec i 15 dana",
„2 meseca", „20 dana"); helper garancijaTekst + srpska deklinacija
- Nova kolona garancija_dana (trajanje od završetka); garancija_do ostaje za fazu Završeno
- Modal: textbox „Trajanje garancije (dana)" umesto kalendara; Podrazumevano i Bez garancije
- Nova ruta/handler AzurirajGarancijaDana; forma izmene čuva trajanje (ne briše)
- Podešavanja → Servis: rok garancije prebačen iz meseci u dane (servis_garancija_dana, default 60)
- „Garancija do" uklonjena iz forme Izmeni nalog (kod arhiviran u docs/);
SacuvajIzmenaNaloga čuva garanciju iz baze da je auto-snimanje ne pregazi
- Prikazni tekst „Tehničar" → „Serviser" svuda (identifikatori Tehnicar/tehnicar_id netaknuti)
Šifre artikala:
- Kôd kategorije kao prefiks auto-šifre (PREFIKS-NNNN), otporno na brisanje (max+1)
- Tip artikla (proizvod/usluga/trošak) i jedinica mere
- Arhiviranje artikala umesto brisanja kad su već u prometu
Magacin:
- Paginacija 50 po stranici
- Klikabilna šifra (vodi na karticu), opisniji placeholder pretrage
- Ispravka: pretraga više ne okida animaciju redova (globalni htmx listener
umesto hx-on atributa koji se ne okida u ovoj htmx verziji)
- Dugmad akcija ne prelamaju tekst; uklonjen content-visibility (secanje pri skrolu)
Servis: predračun (nova stranica i ruta)