package templates
import (
"strconv"
"git.bronku.xyz/bronku/cake-order-tracker/models"
)
templ OrdersPage(first, last, today, tomorrow, special string, counts models.OrderCounts, cakeCounts []models.CakeCount, orders []models.Order) {
@Layout("Panel główny", DateForm(first, last, today, tomorrow, special), OrdersMain(counts, cakeCounts, orders, first, last, special))
}
templ DateForm(first, last, today, tomorrow, special string) {
}
templ OrdersMain(counts models.OrderCounts, cakeCounts []models.CakeCount, orders []models.Order, first, last, special string) {
receipt_long
Aktywne
{ strconv.Itoa(counts.Active) }
Wszystkie niezrealizowane
today
Na dziś
{ strconv.Itoa(counts.DueToday) }
Do zrobienia
@OrdersContent(orders, cakeCounts, first, last, special)
}
templ OrdersContent(orders []models.Order, cakeCounts []models.CakeCount, first, last, special string) {
list_alt
Aktywne zamówienia
ID zamówienia
Klient
Data odbioru
Pozycje
Suma
Status
for _, o := range orders {
@OrderRow(o)
}
@CakeBreakdown(cakeCounts)
}
templ OrderRow(order models.Order) {
#{ strconv.Itoa(order.ID) }
{ order.Surname } { order.Name }{ order.Phone }
{ order.Date.Format("2006-01-02 15:04") }
if len(order.SpecialCakes) > 0 {
cake
}
for i, c := range order.Cakes {
if i > 0 {
{ ", " }
}
{ c.Name } (x{ strconv.Itoa(c.Amount) })
}
for _, s := range order.SpecialCakes {
{ ", " }
{ s.Name }*
}
{ order.Total().String() } PLN
Oczekujące
Przyjęte
W realizacji
Do odbioru
Wydane
edit
}
templ CakeBreakdown(cakeCounts []models.CakeCount) {
for _, cc := range cakeCounts {
{ cc.Name }
{ strconv.Itoa(cc.Amount) }
}
if len(cakeCounts) == 0 {
Brak ciast w tym okresie
}
}