|
|
|
|
@ -76,6 +76,11 @@ public class MyProtocolDecoder extends FixedLengthFrameDecoder {
|
|
|
|
|
byte b8 = in.readByte();
|
|
|
|
|
byte[] bytes = new byte[]{b1, b2, b3, b4, b5, b6, b7, b8};
|
|
|
|
|
String signal = "pl43"+plcId+type+String.valueOf(taskId)+short1+short2+short3+short4+short5+short6+short7+short8+":"+code+b1+b2+b3+b4+b5+b6+b7+b8;
|
|
|
|
|
byte[] bytesBarNumSys = {b5, b6, b7, b8};
|
|
|
|
|
int boxNumAlgo = b3;
|
|
|
|
|
int boxNumSys = b4;
|
|
|
|
|
//String barCodeSys = String.valueOf(b5)+b6+b7+b8;
|
|
|
|
|
String barCodeSys = new String(bytesBarNumSys, "UTF-8");
|
|
|
|
|
if(!type.equals(HEART)){
|
|
|
|
|
log.info("plcId:{},原始信号:{}", plcId, signal);
|
|
|
|
|
}
|
|
|
|
|
@ -85,9 +90,23 @@ public class MyProtocolDecoder extends FixedLengthFrameDecoder {
|
|
|
|
|
} else if (type.equals(ORDER)) {
|
|
|
|
|
if ("B1".equals(code)) {
|
|
|
|
|
log.info("order start ,plcId:{},orderInfo:{}", plcId, plcOrderInfo.toString());
|
|
|
|
|
//根据后四位是否有条码信息来判断随行模式还是盘点模式
|
|
|
|
|
if(b5 == 0 && b6 == 0 && b7 ==0 && b8 ==0) {
|
|
|
|
|
log.info("随行模式");
|
|
|
|
|
} else {
|
|
|
|
|
log.info("盘点模式");
|
|
|
|
|
log.info("Verification mode. Code:{}, box number(system):{}, box number(algorithm):{}", barCodeSys, boxNumSys, boxNumAlgo);
|
|
|
|
|
}
|
|
|
|
|
plcService.orderStart(plcOrderInfo, plcId);
|
|
|
|
|
} else if ("B2".equals(code)) {
|
|
|
|
|
log.info("order end, plcId:{},orderInfo:{}", plcId, plcOrderInfo.toString());
|
|
|
|
|
if(b5 == 0 && b6 == 0 && b7 ==0 && b8 ==0) {
|
|
|
|
|
log.info("随行模式");
|
|
|
|
|
} else {
|
|
|
|
|
log.info("盘点模式");
|
|
|
|
|
log.info("Verification mode. Code:{}, box number(system):{}, box number(algorithm):{}", barCodeSys, boxNumSys, boxNumAlgo);
|
|
|
|
|
plcService.recordStock(plcOrderInfo,plcId,barCodeSys,boxNumSys,boxNumAlgo);
|
|
|
|
|
}
|
|
|
|
|
plcService.orderStop(plcId, plcOrderInfo.getOrderNum());
|
|
|
|
|
}
|
|
|
|
|
} else if (type.equals(ACTION)) {
|
|
|
|
|
|