Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -1597,6 +1597,17 @@ func renderOrderGrid(pdf *gofpdf.Fpdf, header *OrderHeader, rows []PdfRow, hasVa
|
||||
layout := newPdfLayout(pdf)
|
||||
catSizes := buildCategorySizeMap(rows)
|
||||
|
||||
normalizeYetiskinGarsonTokenGo := func(v string) string {
|
||||
s := strings.ToUpper(strings.TrimSpace(v))
|
||||
if strings.Contains(s, "GARSON") {
|
||||
return "GARSON"
|
||||
}
|
||||
if strings.Contains(s, "YETISKIN") || strings.Contains(s, "YETİSKİN") {
|
||||
return "YETISKIN"
|
||||
}
|
||||
return "GENEL"
|
||||
}
|
||||
|
||||
// Grup: ÜRÜN ANA GRUBU
|
||||
type group struct {
|
||||
Name string
|
||||
@@ -1609,15 +1620,19 @@ func renderOrderGrid(pdf *gofpdf.Fpdf, header *OrderHeader, rows []PdfRow, hasVa
|
||||
var order []string
|
||||
|
||||
for _, r := range rows {
|
||||
name := strings.TrimSpace(r.GroupMain)
|
||||
if name == "" {
|
||||
name = "GENEL"
|
||||
ana := strings.TrimSpace(r.GroupMain)
|
||||
if ana == "" {
|
||||
ana = "GENEL"
|
||||
}
|
||||
g, ok := groups[name]
|
||||
yg := normalizeYetiskinGarsonTokenGo(r.YetiskinGarson)
|
||||
name := strings.TrimSpace(fmt.Sprintf("%s %s", yg, ana))
|
||||
groupKey := fmt.Sprintf("%s::%s", yg, ana)
|
||||
|
||||
g, ok := groups[groupKey]
|
||||
if !ok {
|
||||
g = &group{Name: name}
|
||||
groups[name] = g
|
||||
order = append(order, name)
|
||||
groups[groupKey] = g
|
||||
order = append(order, groupKey)
|
||||
}
|
||||
g.Rows = append(g.Rows, r)
|
||||
g.Adet += r.TotalQty
|
||||
@@ -1673,8 +1688,8 @@ func renderOrderGrid(pdf *gofpdf.Fpdf, header *OrderHeader, rows []PdfRow, hasVa
|
||||
newPage(firstPage, true)
|
||||
firstPage = false
|
||||
|
||||
for _, name := range order {
|
||||
g := groups[name]
|
||||
for _, key := range order {
|
||||
g := groups[key]
|
||||
|
||||
for _, row := range g.Rows {
|
||||
rh := calcRowHeight(pdf, layout, row)
|
||||
|
||||
Reference in New Issue
Block a user