From 85b07e32489b522cd0f49c4f48d4f827416f95b9 Mon Sep 17 00:00:00 2001 From: henne Date: Mon, 11 Aug 2025 16:05:15 +0100 Subject: [PATCH] better printer --- printer/main.go | 13 ++++++------- webserver/delete.go | 2 +- webserver/test.go | 2 +- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/printer/main.go b/printer/main.go index d8edb65..36e883f 100644 --- a/printer/main.go +++ b/printer/main.go @@ -13,18 +13,12 @@ import ( "github.com/hennedo/escpos" ) -var printer *escpos.Escpos var whyImage image.Image func init() { if config.C.PrinterPort == "" { return } - socket, err := net.Dial("tcp", config.C.PrinterPort) - if err != nil { - log.Printf("printer error serial port: %s", err) - } - printer = escpos.New(socket) imageFile, err := os.Open("webserver/assets/img/traffic_police.jpg") if err != nil { log.Printf("error loading image: %s", err) @@ -40,6 +34,11 @@ func PrintTicket(ticket db.SpeedingTicket) { if config.C.PrinterPort == "" { return } + socket, err := net.Dial("tcp", config.C.PrinterPort) + if err != nil { + log.Printf("printer error serial port: %s", err) + } + printer := escpos.New(socket) printer.Initialize() //printer.PrintImage(whyImage) printer.Justify(escpos.JustifyCenter) @@ -58,7 +57,7 @@ func PrintTicket(ticket db.SpeedingTicket) { printer.LineFeed() printer.Bold(true).WriteWEU("WHY2025 traffic rules") printer.LineFeed() - printer.Bold(false).WriteWEU(fmt.Sprintf("At %s on the %s", time.Format("03:04:05"), time.Format("02.01.2006"))) + printer.Bold(false).WriteWEU(fmt.Sprintf("At %s on the %s", time.Format("15:04:05"), time.Format("02.01.2006"))) printer.LineFeed() printer.WriteWEU("you exceeded the maximum allowed Speed of") printer.LineFeed() diff --git a/webserver/delete.go b/webserver/delete.go index 59807c9..c96d6b1 100644 --- a/webserver/delete.go +++ b/webserver/delete.go @@ -18,5 +18,5 @@ func HandleDelete(ctx *gin.Context) { ctx.String(500, "internal server error") return } - ctx.Redirect(http.StatusTemporaryRedirect, "/") + ctx.String(http.StatusOK, "Your ticket was deleted.") } diff --git a/webserver/test.go b/webserver/test.go index fb8b5ce..f381cfa 100644 --- a/webserver/test.go +++ b/webserver/test.go @@ -32,7 +32,7 @@ func HandleTest(ctx *gin.Context) { if err := db.DB.Save(&speedingTicket).Error; err != nil { logrus.Error(err) } - printer.PrintTicket(speedingTicket) + go printer.PrintTicket(speedingTicket) ctx.Redirect(http.StatusTemporaryRedirect, "/") log.Printf("%v", upload.UploadTicket(speedingTicket)) }