|
|
@@ -55,30 +55,31 @@ func (s *PrintService) PrintTicket(printerID uint, lotName, channelCode, plateNo
|
|
|
slipNo := fmt.Sprintf("%d", ticketID)
|
|
|
|
|
|
if useCSN {
|
|
|
- csn_Reset()
|
|
|
- csn_Align(1)
|
|
|
- csn_Text("PARKING TICKET", 2, 2, 0, 0)
|
|
|
- csn_Text("", 1, 1, 0, 0)
|
|
|
- csn_Text(lotName, 1, 1, 0, 0)
|
|
|
- csn_Text("A-General Car", 1, 1, 0, 0)
|
|
|
- csn_Text("", 1, 1, 0, 0)
|
|
|
- csn_Text("PARK AT YOUR OWN RISK", 1, 1, 0, 1)
|
|
|
- csn_Text("================================", 1, 1, 0, 0)
|
|
|
- csn_Align(0)
|
|
|
- csn_Text("In-Time::"+now, 1, 1, 0, 0)
|
|
|
- if channelCode != "" { csn_Text("InGate::"+channelCode, 1, 1, 0, 0) }
|
|
|
- if plateNo != "" { csn_Text("Veh No::"+plateNo, 1, 1, 0, 0) }
|
|
|
- csn_Text("================================", 1, 1, 0, 0)
|
|
|
- csn_Text("Slip No::"+slipNo, 1, 1, 0, 0)
|
|
|
- csn_Text("================================", 1, 1, 0, 0)
|
|
|
- csn_Align(1)
|
|
|
- csn_FeedLine()
|
|
|
- csn_QRCode(ticketNo, 4)
|
|
|
- csn_FeedLine()
|
|
|
- csn_Text("SCAN AND PAY WITH", 1, 1, 0, 0)
|
|
|
- csn_Text("NEW THE CANADIA BANK APP", 1, 1, 0, 0)
|
|
|
- csn_FeedLines(3)
|
|
|
- csn_FullCut()
|
|
|
+ // 用 WriteData 直发 ESC/POS 字节(绕过高阶函数兼容性问题)
|
|
|
+ var buf []byte
|
|
|
+ add := func(b []byte) { buf = append(buf, b...) }
|
|
|
+ add(InitCmd); add(AlignCenterCmd); add(DoubleHeightCmd); add(BoldOnCmd)
|
|
|
+ add(ESCPOS_Text("PARKING TICKET"))
|
|
|
+ add(BoldOffCmd); add(NormalCmd)
|
|
|
+ add(ESCPOS_Text("")); add(ESCPOS_Text(lotName))
|
|
|
+ add(ESCPOS_Text("A-General Car")); add(ESCPOS_Text(""))
|
|
|
+ add(ESCPOS_Text("PARK AT YOUR OWN RISK"))
|
|
|
+ add(ESCPOS_Text("================================"))
|
|
|
+ add(AlignLeftCmd)
|
|
|
+ add(ESCPOS_Text("In-Time::"+now))
|
|
|
+ if channelCode != "" { add(ESCPOS_Text("InGate::"+channelCode)) }
|
|
|
+ if plateNo != "" { add(ESCPOS_Text("Veh No::"+plateNo)) }
|
|
|
+ add(ESCPOS_Text("================================"))
|
|
|
+ add(ESCPOS_Text("Slip No::"+slipNo))
|
|
|
+ add(ESCPOS_Text("================================"))
|
|
|
+ add(AlignCenterCmd); add(ESCPOS_Text(""))
|
|
|
+ add(ESCPOS_QRCode(ticketNo))
|
|
|
+ add(ESCPOS_Text(""))
|
|
|
+ add(ESCPOS_Text("SCAN AND PAY WITH"))
|
|
|
+ add(ESCPOS_Text("NEW THE CANADIA BANK APP"))
|
|
|
+ add(InitCmd); add(ESCPOS_Text("")); add(ESCPOS_Text("")); add(ESCPOS_Text(""))
|
|
|
+ add(CutPaperCmd)
|
|
|
+ Csn_WriteData(buf)
|
|
|
global.GVA_DB.Model(&printer).Update("status", "online")
|
|
|
return nil
|
|
|
}
|