Mercurial > gemma
comparison pkg/xlsx/templater.go @ 5490:5f47eeea988d logging
Use own logging package.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 20 Sep 2021 17:45:39 +0200 |
parents | 699048c86848 |
children | 163f38c69a07 |
comparison
equal
deleted
inserted
replaced
5488:a726a92ea5c9 | 5490:5f47eeea988d |
---|---|
18 "context" | 18 "context" |
19 "database/sql" | 19 "database/sql" |
20 "errors" | 20 "errors" |
21 "fmt" | 21 "fmt" |
22 "io" | 22 "io" |
23 "log" | |
24 "os" | 23 "os" |
25 "strconv" | 24 "strconv" |
26 "strings" | 25 "strings" |
27 | 26 |
28 "github.com/xuri/excelize/v2" | 27 "github.com/xuri/excelize/v2" |
29 "gopkg.in/yaml.v2" | 28 "gopkg.in/yaml.v2" |
30 | 29 |
31 "github.com/PaesslerAG/gval" | 30 "github.com/PaesslerAG/gval" |
31 | |
32 "gemma.intevation.de/gemma/pkg/log" | |
32 ) | 33 ) |
33 | 34 |
34 type Action struct { | 35 type Action struct { |
35 Type string `yaml:"type"` | 36 Type string `yaml:"type"` |
36 Actions []*Action `yaml:"actions"` | 37 Actions []*Action `yaml:"actions"` |
289 sx1, sx2 = order(sx1, sx2) | 290 sx1, sx2 = order(sx1, sx2) |
290 sy1, sy2 = order(sy1, sy2) | 291 sy1, sy2 = order(sy1, sy2) |
291 | 292 |
292 var areas []area | 293 var areas []area |
293 | 294 |
294 //log.Println("merged cells") | 295 //log.Debugln("merged cells") |
295 if mcs, err := e.template.GetMergeCells(e.sourceSheet); err == nil { | 296 if mcs, err := e.template.GetMergeCells(e.sourceSheet); err == nil { |
296 areas = make([]area, 0, len(mcs)) | 297 areas = make([]area, 0, len(mcs)) |
297 for _, mc := range mcs { | 298 for _, mc := range mcs { |
298 if a, err := mergeCellToArea(mc); err == nil { | 299 if a, err := mergeCellToArea(mc); err == nil { |
299 areas = append(areas, a) | 300 areas = append(areas, a) |
520 default: | 521 default: |
521 name = fmt.Sprintf("%v", col) | 522 name = fmt.Sprintf("%v", col) |
522 } | 523 } |
523 num, err := excelize.ColumnNameToNumber(name) | 524 num, err := excelize.ColumnNameToNumber(name) |
524 if err != nil { | 525 if err != nil { |
525 log.Printf("error: invalid column name '%v'\n", col) | 526 log.Errorf("invalid column name '%v'\n", col) |
526 return 1 | 527 return 1 |
527 } | 528 } |
528 return num | 529 return num |
529 } | 530 } |
530 | 531 |
552 } | 553 } |
553 | 554 |
554 func coord2cell(ix, iy interface{}) interface{} { | 555 func coord2cell(ix, iy interface{}) interface{} { |
555 x, err := asInt(ix) | 556 x, err := asInt(ix) |
556 if err != nil { | 557 if err != nil { |
557 log.Printf("error: invalid x value: %v\n", err) | 558 log.Errorf("invalid x value: %v\n", err) |
558 return "A1" | 559 return "A1" |
559 } | 560 } |
560 y, err := asInt(iy) | 561 y, err := asInt(iy) |
561 if err != nil { | 562 if err != nil { |
562 log.Printf("error: invalid y value: %v\n", err) | 563 log.Errorf("invalid y value: %v\n", err) |
563 return "A1" | 564 return "A1" |
564 } | 565 } |
565 | 566 |
566 cell, err := excelize.CoordinatesToCellName(x, y) | 567 cell, err := excelize.CoordinatesToCellName(x, y) |
567 if err != nil { | 568 if err != nil { |
568 log.Printf("error: invalid cell coord (%d, %d)\n", x, y) | 569 log.Errorf("invalid cell coord (%d, %d)\n", x, y) |
569 return "A1" | 570 return "A1" |
570 } | 571 } |
571 return cell | 572 return cell |
572 } | 573 } |
573 | 574 |
619 if eval, err = e.expr(strings.TrimSpace(s)); err != nil { | 620 if eval, err = e.expr(strings.TrimSpace(s)); err != nil { |
620 return "" | 621 return "" |
621 } | 622 } |
622 s, err = eval.EvalString(e.ctx, vars) | 623 s, err = eval.EvalString(e.ctx, vars) |
623 if err != nil { | 624 if err != nil { |
624 log.Printf("error: '%s' '%s' %v\n", str, s, err) | 625 log.Errorf("'%s' '%s' %v\n", str, s, err) |
625 } | 626 } |
626 return s | 627 return s |
627 } | 628 } |
628 | 629 |
629 str = handlebars(str, replace) | 630 str = handlebars(str, replace) |
650 return "" | 651 return "" |
651 } | 652 } |
652 repCount++ | 653 repCount++ |
653 last, err = eval(e.ctx, vars) | 654 last, err = eval(e.ctx, vars) |
654 if err != nil { | 655 if err != nil { |
655 log.Printf("error: '%s' '%s' %v\n", str, s, err) | 656 log.Errorf("'%s' '%s' %v\n", str, s, err) |
656 } | 657 } |
657 return fmt.Sprintf("%v", last) | 658 return fmt.Sprintf("%v", last) |
658 } | 659 } |
659 | 660 |
660 nstr := handlebars(str, replace) | 661 nstr := handlebars(str, replace) |