PDV pravilo na štampanim dokumentima + fiksni layout + QR popravka

- 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
This commit is contained in:
2026-06-27 02:06:18 +02:00
parent 6727e39348
commit 60e7debad5
15 changed files with 335 additions and 183 deletions
+8 -8
View File
@@ -2,11 +2,11 @@
<html lang="sr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Priznanica {{.Nalog.BrojNaloga}}</title>
<style>
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 14px; color: #111; background: #f5f5f5; padding: 32px 16px; }
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 14px; color: #111; background: #f5f5f5; padding: 32px 16px; min-width: 640px; }
.stranica { background: #fff; max-width: 640px; margin: 0 auto; padding: 40px; border-radius: 8px; box-shadow: 0 1px 8px rgba(0, 0, 0, 0.08); }
.zaglavlje { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 32px; padding-bottom: 24px; border-bottom: 1px solid #e5e7eb; }
.firma-naziv { font-size: 20px; font-weight: 600; color: #111; }
@@ -33,7 +33,7 @@
.btn { padding: 9px 20px; border-radius: 8px; font-size: 14px; font-weight: 500; cursor: pointer; border: none; text-decoration: none; display: inline-block; }
.btn-primarni { background: #2563eb; color: #fff; }
.btn-sekundarni { background: #f3f4f6; color: #374151; }
@media print { body { background: #fff; padding: 0; } .stranica { box-shadow: none; border-radius: 0; padding: 20px; max-width: 100%; } .ekran-dugmad { display: none; } }
@media print { body { background: #fff; padding: 0; } .stranica { box-shadow: none; border-radius: 0; padding: 40px; max-width: 640px; } .ekran-dugmad { display: none; } }
</style>
</head>
<body>
@@ -73,8 +73,8 @@
<tr>
<th>Artikal</th>
<th>Kol.</th>
<th>Cena/kom</th>
<th>Ukupno</th>
<th>Cena/kom{{if index .Moduli "pdv"}} sa PDV{{end}}</th>
<th>Ukupno{{if index .Moduli "pdv"}} sa PDV{{end}}</th>
</tr>
</thead>
<tbody>
@@ -82,15 +82,15 @@
<tr>
<td>{{.ArtikalNaziv}}</td>
<td>{{.Kolicina}} {{.JedinicaMere}}</td>
<td>{{dinari .CenaPoKomadu}} din</td>
<td>{{dinari .Ukupno}} din</td>
<td>{{if index $.Moduli "pdv"}}{{dinari .CenaPoKomadu}}{{else}}{{dinari .CenaBezPdv}}{{end}} din</td>
<td>{{if index $.Moduli "pdv"}}{{dinari .Ukupno}}{{else}}{{dinari .UkupnoBezPdv}}{{end}} din</td>
</tr>
{{end}}
</tbody>
<tfoot>
<tr>
<td colspan="3" class="ukupno-label">Ukupno za naplatu:</td>
<td class="ukupno-iznos">{{dinari .Nalog.Ukupno}} din</td>
<td class="ukupno-iznos">{{if index .Moduli "pdv"}}{{dinari .Nalog.Ukupno}}{{else}}{{dinari .UkupnoBezPdv}}{{end}} din</td>
</tr>
</tfoot>
</table>