Commit Graph
100 Commits
Author SHA1 Message Date
Dasko 2b2e749ea1 BUGFIX: dropdown — removeProperty umesto setProperty('none') da ne ostaje inline blok 2026-06-26 01:41:40 +02:00
Dasko 09c8c77961 Tema: kartice spuštene na pozadinu, pozadina još tamnija — manje belog 2026-06-26 01:37:34 +02:00
Dasko 01a2160fe5 Tema: svetla još toplija i mekša — pozadina #e8ebe6 2026-06-26 01:37:03 +02:00
Dasko b851a90b16 BUGFIX: dropdown — !important na CSS + setProperty('important') u JS (neuništivo) 2026-06-26 01:36:51 +02:00
Dasko da455551af BUGFIX: dropdown — inline display:none + JS menja inline stil (ne samo klasu) 2026-06-26 01:35:21 +02:00
Dasko 49669b0422 Tema: svetla — topliji tonovi (paper), manje drečavo belo 2026-06-26 01:27:05 +02:00
Dasko fb0f2df671 Servis: providni glass overlay rgba(128,128,128,0.12) — radi u obe teme 2026-06-26 01:25:02 +02:00
Dasko 64c3f10fc7 Servis: naslovi — color-mix prati karticu + 10% tamnije 2026-06-26 01:24:00 +02:00
Dasko f12b8e9579 Servis: naslovi koriste --pozadina-hover (prati karticu) 2026-06-26 01:23:38 +02:00
Dasko 08c45d64fb Servis: naslovi prate boju kartice + 10% tamnije (automatski uz temu) 2026-06-26 01:22:46 +02:00
Dasko 3e08c1440d Servis: 80% crna pozadina naslova 2026-06-26 01:21:05 +02:00
Dasko 1ba5365113 Servis: naslovi 90% crna pozadina + beli tekst 2026-06-26 01:20:52 +02:00
Dasko 2bb43c91cf Servis: tamnija pozadina naslova (0.12) 2026-06-26 01:19:58 +02:00
Dasko 0c4ec909a8 Servis: naslovi — providna tamna pozadina rgba(0,0,0,0.07) 2026-06-26 01:19:31 +02:00
Dasko 3f59ba378a Servis: naslovi — zatamnjena pozadina (frosted staklo efekat) 2026-06-26 01:18:16 +02:00
Dasko d13dce309f Servis: naslovi — deblja linija (1.5px) za bolju istaknutost 2026-06-26 01:16:36 +02:00
Dasko 933e3ef6cc Servis: pojednostavljeni naslovi — uklonjeni badge-ovi i emoji, čist tekst sa linijom 2026-06-26 01:15:56 +02:00
Dasko a591680c0a BUGFIX: migracija 085 — ispravlja izvor 'prodaja'→'servis' za SN- naloge i briše duplikate 2026-06-26 01:11:27 +02:00
Dasko 10553f4e8a Migracija 084: retroaktivni upis u KIR za postojeće Preuzeto servisne naloge 2026-06-26 01:09:38 +02:00
Dasko e82d8c88d9 Servis: automatski upis u KIR pri preuzimanju (ako je firma PDV obveznik)
Pri prelasku u Preuzeto, radovi i delovi se automatski knjiže u KIR (20% PDV, opšta stopa). Preskaču se predložene stavke i odbijene popravke.
2026-06-26 01:07:41 +02:00
Dasko 7882b70500 Servis: prikaz fiskalnog računa u detaljima naloga (PFR broj + QR kod)
Dodat FiskalRepository.DohvatiPoServisu (repo + interfejs)
PodaciDetaljiNaloga.FiskalniRacun — učitava se pri otvaranju detalja
Kartica u servis_detalji.html — PFR broj, vreme, brojač, QR, link ka PURS-u
2026-06-26 01:04:34 +02:00
Dasko afde0850bb BUGFIX: fiskalni_racuni — dodata podrška za servisne naloge (servis_id kolona)
Migracija 083: rekreira fiskalni_racuni tabelu sa servis_id (nullable) i bez FK constraint-a
Model: dodat ServisID int64 polje
Repo: INSERT/SELECT sada koristi i servis_id
Handler: fiskalizujServis koristi ServisID umesto negativnog ProdajaID
2026-06-26 01:00:22 +02:00
Dasko 94037757f5 Servis: Otpremnica i Garantni list vidljivi i za Preuzeto (ne samo Završeno) 2026-06-26 00:58:50 +02:00
Dasko 192af29107 Servis: fiskalizacija pri preuzimanju — način plaćanja + iznos + PFR račun
Migracija 082: nacin_placanja i naplaceno na servisni_nalog
Model, repo, handler — pun lanac za čuvanje naplate
fiskalizujServis helper — šalje radove+delove ka PFR serveru
Modal za Preuzeto dobio izbor načina plaćanja (Gotovina/Kartica/Virman)
2026-06-26 00:54:13 +02:00
Dasko dcee077593 Dockerfile: dodat za Docker deployment 2026-06-26 00:43:45 +02:00
Dasko 6f10934c7f Čišćenje: izbačeni Fisk/data/counters/ fajlovi iz gita, dodati u .gitignore 2026-06-26 00:38:47 +02:00
Dasko ac53423c78 Merge grane feature/fiskalizacija-migracija: fiskalizacija + servis unapređenja + pravni status 2026-06-26 00:36:39 +02:00
Dasko 1619d9b920 Javni status: dodat datum završetka i cena dijagnostike u karticu odbijene popravke 2026-06-26 00:34:56 +02:00
Dasko 49d8460fd5 BUGFIX: javni status — kad klijent odbije popravku, ne prikazuju se radovi/delovi; crvena poruka umesto njih 2026-06-26 00:33:36 +02:00
Dasko 176e42bd42 Servis: ✕ Klijent je odbio popravku — istaknut kao naslov ispod SN broja, sa objašnjenjem 2026-06-26 00:24:01 +02:00
Dasko 5136fc12e9 Otpremnica: kad je popravka odbijena — opis radova prikazuje da je urađena samo dijagnostika 2026-06-26 00:21:26 +02:00
Dasko ed8046f43f BUGFIX: otpremnica — kad klijent odbije popravku, prikazuje se samo dijagnostika (ne delovi i radovi) 2026-06-26 00:20:09 +02:00
Dasko 1930473eb5 Servis: crveni badge ✕ Klijent odbio popravku pored statusa 2026-06-26 00:17:21 +02:00
Dasko 875fc46c39 Servis: uklonjeni prazni redovi — ako nema radova/delova, ne prikazuje se ništa (samo UKUPNO) 2026-06-26 00:15:13 +02:00
Dasko 9d0e00169e Servis: badge stilizacija naslova — Obavljeni radovi (plavo) i Ugrađeni delovi (zeleno) sa ikonicama 🔧💾 2026-06-26 00:13:07 +02:00
Dasko 21bbc10dd1 Servis: reorganizovana Ukupno kartica — listing radova i delova sa subtotalima, finalni total boldiran 2026-06-26 00:10:14 +02:00
Dasko 81956b9aa4 Servis: listing radova i delova iznad Ukupno, ne ispod 2026-06-26 00:06:24 +02:00
Dasko fea95b73d2 Servis: ispravka — .Delovi→.ServisniDelovi, .Radovi→.ServisniRadovi (pogrešna imena promenljivih) 2026-06-26 00:04:45 +02:00
Dasko ad3b4d9dcf Servis: listing ugrađenih delova i obavljenih radova u Ukupno kartici kad je status Završeno/Preuzeto 2026-06-25 23:30:08 +02:00
Dasko 5f4e657d93 Podešavanja: uputstvo za režime Pun i Samo evidencija 2026-06-25 23:26:09 +02:00
Dasko 1caaa8de49 Podešavanja: JS logika zaključavanja — PDV se gasi uz Fiskalizaciju u režimu „Samo evidencija"
Proširena postojeća JS logika: sada i PDV i Fiskalizacija idu na „Ne" i zasive se kad je režim „samo evidencija". Refaktorisano u lockGrupa/unlockGrupa helper-e.
2026-06-25 23:23:13 +02:00
Dasko b0188fd069 Profil firme: preduzetnik_knjige pokriven u modulima + informativna tabela
ModulKpo sada obuhvata i preduzetnik_knjige (proste knjige)
Dodata tabela sa pregledom svih kombinacija pravnog oblika, PDV-a, fiskalizacije, KPO i dvojnog
Napomene: PDV prag 8M, paušalni limit 6M, fiskalizacija obavezna za sve
2026-06-25 23:13:14 +02:00
Dasko 1f6efc8986 Servis: kanban kolone proporcionalno raširene po širini ekrana
Pre: flex: 0 0 250px (fiksna širina, prazan prostor desno)
Posle: flex: 1 1 0 + min-width: 220px (ravnomerno popunjavaju širinu)
2026-06-25 23:02:28 +02:00
Dasko 90674b0118 Bezbednost: SSRF — proširena whitelist na privatne mreže (192.168.x, 10.x, 172.16-31.x)
Pre: samo 127.0.0.1 i localhost — nije radilo sa Fisk serverom na drugoj mašini u LAN-u
Posle: jePrivatnaAdresa() dozvoljava sve privatne IPv4 opsege + localhost
Hostname se koristi direktno (iz validiranog URL-a), port kao integer
2026-06-25 22:59:17 +02:00
Dasko b7a37ee419 Fiskalizacija: inicijalna implementacija (8 koraka)
1. migracija 081 — tabela fiskalni_racuni + podešavanja pfr_api_key/pfr_kasir
2. model FiskalniRacun (internal/model/fiskal.go)
3. FiskalRepository interfejs (repository.go)
4. SQLite repozitorijum (sqlite/fiskal.go — Kreiraj, DohvatiPoProdaji)
5. Paket internal/fiskal/ — HTTP klijent + mapiranje prodaja→invoiceRequest
6. Handler proširenje — FiskalRepo + fiskalKlijent() dinamički helper
7. Inicijalizacija kroz Novi() / reinicializuj — klijent se čita dinamički iz podešavanja
8. Prodaja integracija — fiskalizacija u SacuvajProdaju + QR prikaz u prodaja_detalji.html
2026-06-25 22:51:59 +02:00
Dasko 4433ed5edc Bezbednost: SSRF — port iz URL-a se izvlači kao integer da preseče CodeQL taint
Pre: parsedURL.Host je i dalje nosio korisnički unos u mrežni poziv
Posle: port → strconv.Atoi → validiran int → fmt.Sprintf("%d") — čist URL bez taint-a
2026-06-25 21:42:58 +02:00
Dasko a2a80bb04c Bezbednost: SSRF ispravka za CodeQL — URL se rekonstruiše iz validiranih delova
Pre: pfrURL + "/api/status" (CodeQL alarm: taint od korisnika do mreže)
Posle: url.URL{Scheme:"http", Host:parsedURL.Host, Path:"/api/status"} — korisnički unos samo u Host nakon validacije
2026-06-25 21:36:49 +02:00
Dasko 5430a9015b Bezbednost: SSRF i XSS ispravka u TestFiskalizacije 2026-06-25 02:58:10 +02:00
Dasko a82f8a03fc Servis: custom dropdown za usluge i artikle (naziv+cena), live preračun na javnoj stranici 2026-06-25 02:45:30 +02:00
Dasko 74cbb9e619 Servis: cene u dropdownu usluga i artikala 2026-06-25 02:11:44 +02:00
Dasko e30432c1a3 Servis: zamena svih tipografskih navodnika u odbij-popravku formi 2026-06-25 02:09:29 +02:00
Dasko 35bfe40eac Servis: ispravka tipografskih navodnika u data-potvrda (lomili HTML parser) 2026-06-25 02:07:32 +02:00
Dasko 3cbb28d4ff Servis: odbij-popravku data-full-reload, AJAX ne sme da ostane na stranici posle promene statusa 2026-06-25 01:53:46 +02:00
Dasko 318b9bcc92 Servis: ispravka predlozeno-blok (sadrzaj bio u pogresnoj if grani) 2026-06-25 01:47:32 +02:00
Dasko 2484c91e15 Servis: predlozeno-blok se pojavljuje odmah pri dodavanju prve predlozene stavke 2026-06-25 01:44:34 +02:00
Dasko 16cdee0ee1 Servis: garantni list, radovi na otpremnici, selektivno prihvatanje predloga po stavkama 2026-06-25 01:39:56 +02:00
Dasko d960a5b67b Servis: garantni list pri preuzimanju, ispravka datuma garancije na otpremnici 2026-06-25 00:37:56 +02:00
Dasko 6a5827a65e Podešavanja: QR URL primer kao domen umesto lokalne IP adrese 2026-06-24 23:37:18 +02:00
Dasko 4b821c9dff Fisk compose: external mreža ntech-net, bez izloženog porta 2026-06-24 23:32:18 +02:00
Dasko df032a0db2 Uklonjen fisk-test.sh, .gitignore cleanup 2026-06-24 23:27:48 +02:00
Dasko 6af70d5962 Podešavanja: uklonjen konkretan IP iz placeholder teksta QR URL polja 2026-06-24 23:26:49 +02:00
Dasko 8d2ad77d5b Fiskalizacija: test veze koristi URL iz forme, ne iz baze 2026-06-24 23:26:12 +02:00
Dasko b5a84513b7 Fiskalizacija: podešavanja L-PFR veze, test konekcije (HTMX) 2026-06-24 23:18:26 +02:00
Dasko 606c45d765 README: samostalni docker-compose za Fisk mock server 2026-06-24 23:06:07 +02:00
Dasko 0972ccecfa Build: paralelni UPX u odvojenim tmp folderima (bez race condition) 2026-06-24 22:47:46 +02:00
Dasko 520f5e5b8f Build: sekvencijalni UPX kad se grade obe platforme (race condition fix) 2026-06-24 22:47:01 +02:00
Dasko fd69b93782 Build alat: opcija za build i push ntech-fisk Docker slike 2026-06-24 22:35:48 +02:00
Dasko 7d3912988a Dodaj bezbednosnu politiku (SECURITY.md) 2026-06-24 22:32:09 +02:00
DaskoandGitHub 83805c36a1 Update issue templates 2026-06-24 22:29:58 +02:00
Dasko c7ab1f8628 Dodaj MIT licencu 2026-06-24 22:27:06 +02:00
Dasko 2f7d0c7e6e README: usklađeno sa stvarnim stanjem — servis modul, troškovi, usluge, izveštaji, HTMX 2026-06-24 22:15:49 +02:00
Dasko c8a475511d README: Teron mock server sekcija, fiskalizacija u toku 2026-06-24 22:13:15 +02:00
Dasko 128397922a Docker: uklonjen example compose (osetljive informacije) 2026-06-24 22:10:06 +02:00
Dasko 2432958366 Docker: interna mreža između ntech i teron-mock, port 4566 nije izložen 2026-06-24 22:08:50 +02:00
Dasko 36282cc952 Docker: primer compose fajla za README (ntech + teron-mock) 2026-06-24 22:07:57 +02:00
Dasko ef8ed086c0 Teron mock: jedan compose fajl, named volume za podatke 2026-06-24 22:06:34 +02:00
Dasko 7d8c35e924 Teron mock: docker-compose za Dockge (named volume) 2026-06-24 22:05:27 +02:00
Dasko 5a1e6cbce6 Teron mock: Dockerfile, requirements.txt i docker-compose za Docker deploy 2026-06-24 22:03:06 +02:00
Dasko 6b6f33cb73 Fisk mock server: preuredjen za Teron API (port 4566, Teron putanje i format odgovora) 2026-06-24 21:23:31 +02:00
Dasko 07378ca9fa Fisk mock server: PDV obračun iz bruto cene po poreskoj oznaci 2026-06-24 20:42:10 +02:00
Dasko 2275792d30 Servis predlog delovi: lager integracija, brisanje predloženih delova, odluka klijenta (migracija 079) 2026-06-24 19:39:30 +02:00
Dasko 173c279eb6 Javno odobravanje predloga: Prihvati/Odbij sa komentarom
- 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
2026-06-24 02:41:06 +02:00
Dasko e3a1f62da2 Dashboard: klikabilne stavke u kartici Poslednji servisi (link ka detaljima naloga) 2026-06-23 23:01:29 +02:00
Dasko 6705152235 Servis: modal Preuzeto sa naplatom i avansom pri preuzimanju 2026-06-23 23:01:10 +02:00
Dasko 2bb0d10cc5 Servis: tok dijagnostike/popravke, kartice Utvrđeni kvar i Urađeno, cena dijagnostike
- 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
2026-06-23 22:21:12 +02:00
Dasko 5a2439f5d6 Servis: logo na dokumentima, jedinstveno 3-kolonsko zaglavlje, podesiva QR adresa, javni status
- 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
2026-06-23 14:38:26 +02:00
Dasko 8ccc1a56b6 Servis: revers i predracun (iz stavki radova+delova), uslovi servisa u podesavanjima, status U dijagnostici
- Revers (servis_revers.html) - dokument prijema bez cena, sa QR, oscecenjima i uslovima servisa
- Predracun (servis_predracun.html) - procena iz stavki radova i delova, klauzula, dugme uvek dostupno
- Podesavanja > Servis: kartica Uslovi servisa (servis_uslovi + servis_klauzula_predracuna), auto-snimanje, bez dugmeta Sacuvaj
- Genericki data-autosave obrazac u base.html
- Status U dijagnostici: konstanta + kanban kolona + dugme Pocni dijagnostiku (vidljivo u Primljeno)
2026-06-23 13:23:07 +02:00
Dasko b132ac6cef Servis: radni nalog za servisera, hover napomena, responsive popravke
- 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
2026-06-23 11:08:58 +02:00
Dasko e5d73b2149 Servis: Code128 barkod na vrhu nalepnice (laserski skener) 2026-06-23 02:54:42 +02:00
Dasko 3c94ffcfda Servis: nalepnica za uređaj (70×40 mm) sa QR kodom 2026-06-23 02:46:36 +02:00
Dasko ccb3f9d748 Servis: garancija kao trajanje u danima + Tehničar → Serviser
- 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/garancija-buduca-logika.md);
  SacuvajIzmenaNaloga čuva garanciju iz baze da je auto-snimanje ne pregazi
- Prikazni tekst „Tehničar" → „Serviser" svuda (identifikatori Tehnicar/tehnicar_id netaknuti)
2026-06-23 02:35:49 +02:00
Dasko bd62a89332 Servis: popup izmena polja u detaljima (predviđen datum, garancija, tehničar)
- Klik na vrednost otvara modal (obrazac kao „Promeni cenu" u Magacinu);
  snima se na zatvaranje modala, samo ako je vrednost promenjena (bez dugmeta Sačuvaj)
- Predviđen datum vraćen u bazu kao ručni override (migracija 071); ako nije
  postavljen, prikaz računa izvedeni default (prijem + rok iz podešavanja)
- Nove rute/handleri AzurirajPredvidjenDatum i AzurirajTehnicar
- Garancija usklađena između modala i forme „Izmeni nalog" (isti izgled i logika);
  dugme „Podrazumevano" (prijem + meseci) na oba mesta
- Checkbox „Bez garancije" čita stanje iz baze; odčekiravanjem se u kalendaru
  prikaže datum (garancija iz baze ili podrazumevani)
- Validacija: garancija ne može biti pre datuma prijema (frontend min + backend)
2026-06-23 02:10:43 +02:00
Dasko 99f25b0e06 Navigacija: hx-boost na sve navigacione linkove (bez bljeska pozadine)
- 'Nazad' linkovi (.nazad-link) i akcioni/ulazni linkovi kroz 38 šablona
  dobili isti hx-boost set kao sidebar (swap #glavni-sadrzaj, bez punog reloda)
- Preskočeni: target=_blank (štampa), brisanje, odjava, već boosted
- Pozadina (html/body) se više ne re-renderuje pri navigaciji → ne trepće
2026-06-23 01:16:55 +02:00
Dasko 0b32f69414 Servis: auto-snimanje forme izmene + hx-boost navigacija (bez bljeska)
- Forma Izmeni nalog snima se automatski (change na celoj formi, X-Autosave→204), bez dugmeta Sačuvaj
- Ispravka: trazene_nadogradnje je NOT NULL — slati prazan string umesto NULL
- Iz kartice detalja uklonjeni dropdown statusa i datum završetka
- Forma izmene više ne ubacuje težak JSON svih klijenata (nepotreban u izmeni)
- Navigacioni linkovi (Kategorije, Izmeni, Nazad) dobili hx-boost — swap #glavni-sadrzaj bez punog reloda, pozadina ne trepće
2026-06-23 01:08:14 +02:00
Dasko bb4e09562e Servis: predviđen datum popravke (prijem + rok iz podešavanja, readonly) 2026-06-22 23:55:20 +02:00
Dasko ca423eb913 Servis: polja Tražene nadogradnje i Napomena klijentu (auto-snimanje) 2026-06-22 19:39:49 +02:00
Dasko f68d415f5b Servis: garancija u formi izmene, kartica Ukupno, povraćaj delova pri brisanju
- Forma izmene: polje Garancija do sa kvačicom Bez garancije, pored Avansa; veći razmak između kartica
- Detalji: kartica Ukupno (usluge + ugrađeni delovi) pre zone za brisanje
- Brisanje naloga vraća ugrađene delove na stanje u magacin (transakcija), čisti potraživane delove
2026-06-22 17:20:45 +02:00
Dasko 5c8517d439 Servis: pojednostavljena forma Izmeni nalog
Izmeni nalog sada ima samo: Uređaj, Tehničar, Avans, Napomena. Uklonjene
kartice Klijent i Status i datumi (status se menja u detaljima, klijent je
vezan pri prijemu), procena od/do, cena rada (računa se iz radova) i
garancija. Nazad/Odustani vode na detalje naloga. Handler čuva postojeće
vrednosti (status, cene, klijent, garancija, datum završetka) da ih prazna
forma ne pregazi.
2026-06-22 16:47:08 +02:00
Dasko 96f9bc6aa6 Servis: garancija u detaljima samo prikaz (ne edit), dugme Arhiva → Preuzeto
Garancija se unosi i menja pri kreiranju naloga, pa je u detaljima sada
samo prikaz. Dugme Arhiva na servis tabli preimenovano u Preuzeto.
2026-06-22 16:29:43 +02:00
Dasko ec1ea3511d Servis: zabrana ručnog postavljanja statusa Čeka delove
Čeka delove je automatski status (kad nedostaje deo). Server odbija ručni
ulazak iz bilo kog drugog statusa, a dropdown više ne nudi tu opciju
osim ako je nalog već u njoj.
2026-06-22 16:25:15 +02:00