diff --git a/business/jxstore/event/event_tcp.go b/business/jxstore/event/event_tcp.go index 8c7ada6b4..8044a74d1 100644 --- a/business/jxstore/event/event_tcp.go +++ b/business/jxstore/event/event_tcp.go @@ -42,8 +42,7 @@ func (t *TcpClient) handleConn(c net.Conn) { for { var ( printNo string //打印机编号 - //printStatus *GetPrintStatus - buffer = make([]byte, 1024) + buffer = make([]byte, 1024) ) n, err := c.Read(buffer) if err != nil { @@ -54,15 +53,7 @@ func (t *TcpClient) handleConn(c net.Conn) { } return } - //也可能是查状态的(openAPI外部查询,一次性的) - //if err = json.Unmarshal(buffer[:n], &printStatus); err == nil { - // fmt.Println("handleConn msg: ", string(buffer[:n])) - // if printStatus != nil { - // status := t.getPrintStatus(printStatus.PrintNo) - // c.Write([]byte(utils.Int2Str(status))) - // c.Close() - // } - //} + //看是心跳还是打印回调 data := hex.EncodeToString(buffer[:n]) //证明是心跳 @@ -70,6 +61,7 @@ func (t *TcpClient) handleConn(c net.Conn) { printNoData, _ := hex.DecodeString(data[len(heartText) : len(data)-8]) printNo = string(printNoData) status := printStatus2JxStatus(data[len(data)-8 : len(data)-6]) + globals.SugarLogger.Debugf("输出打印机编号printNo:[%s],和状态printStatus[%d],打印时间time:[%v]", printNo, status, time.Now()) //如果没在连接池里 //1、加到连接池中,不同的打印机no开不同的goroutine //2、初始化channel,每个打印机一个,放打印消息和打印回调消息 @@ -97,7 +89,9 @@ func (t *TcpClient) handleConn(c net.Conn) { t.setPrintStatusTime(printNo) } //状态不一致再更新状态(可能缺纸了,过热了等) + globals.SugarLogger.Debugf("比较缓存状态和真实状态缓存状态[%d],真实状态[%d]", t.getPrintStatus(printNo), status) if t.getPrintStatus(printNo) != status { + globals.SugarLogger.Debugf("更新打印机状态到数据库和缓存[%s:%d]", printNo, status) t.setPrintStatus(printNo, status) changePrinterStatus(printNo, status) }