diff --git a/services/templater.go b/services/templater.go index 7036615..b17ed00 100644 --- a/services/templater.go +++ b/services/templater.go @@ -6,7 +6,6 @@ import ( "errors" "html/template" "image/png" - "strconv" "github.com/boombuler/barcode" "github.com/boombuler/barcode/code128" @@ -22,22 +21,20 @@ type Templater interface { type DefaultTemplater struct { } -func idToEan13(id int, prefix string) (string, error) { - idStr := strconv.Itoa(id) - - if len(idStr) > 12 { +func idToEan13(id string, prefix string) (string, error) { + if len(id) > 12 { return "", errors.New("id too long") } - for len(idStr) < 11 { - idStr = "0" + idStr + for len(id) < 11 { + id = "0" + id } - idStr = prefix + idStr + id = prefix + id - return idStr, nil + return id, nil } -func (t *DefaultTemplater) GenerateBarcode(code int, format string, prefix string) (string, error) { +func (t *DefaultTemplater) GenerateBarcode(code string, format string, prefix string) (string, error) { var generatedCode barcode.Barcode var err error @@ -53,13 +50,13 @@ func (t *DefaultTemplater) GenerateBarcode(code int, format string, prefix strin } break case "code128": - generatedCode, err = code128.Encode(prefix + strconv.Itoa(code)) + generatedCode, err = code128.Encode(prefix + code) if err != nil { return "", err } break case "qr": - generatedCode, err = qr.Encode(prefix+strconv.Itoa(code), qr.M, qr.Numeric) + generatedCode, err = qr.Encode(prefix+code, qr.M, qr.AlphaNumeric) if err != nil { return "", err } diff --git a/templates/contract/de.html b/templates/contract/de.html index f8dc751..07d3878 100644 --- a/templates/contract/de.html +++ b/templates/contract/de.html @@ -56,7 +56,7 @@