48 lines
1.6 KiB
Java
48 lines
1.6 KiB
Java
package com.sv.netty;
|
|
|
|
import com.sv.netty.config.*;
|
|
import com.sv.netty.utils.AesUtil;
|
|
import com.sv.netty.utils.EncodeMsg;
|
|
import com.sv.netty.utils.JsonUtils;
|
|
import com.sv.netty.utils.MakeCode;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
public class MessageHandler {
|
|
private static final Logger logger = LoggerFactory.getLogger(MessageHandler.class);
|
|
|
|
public static String sendHeartBeat() {
|
|
VenueMessage venueMessage = new VenueMessage();
|
|
venueMessage.setMessageType(MessageType.HB);
|
|
String clientSn = System.getProperty(NettyConstant.VENUE_CLIENT_SN);
|
|
String clientVid = System.getProperty(NettyConstant.VENUE_CLIENT_VID);
|
|
HeartBeat hb = new HeartBeat();
|
|
hb.setDeviceName(clientSn);
|
|
hb.setVenueId(Integer.parseInt(clientVid));
|
|
venueMessage.setMessage(JsonUtils.encode(hb));
|
|
return EncodeMsg.INSTANCE.encode(venueMessage);
|
|
}
|
|
|
|
/**
|
|
* 核销二维码
|
|
* @return
|
|
*/
|
|
public static String checkBarcode(String barcode) {
|
|
String decrypt = AesUtil.decrypt(barcode);
|
|
// 这个二维码是线下的二维码
|
|
if (!decrypt.startsWith("venue-")){
|
|
VenueBarCode venueBarCode = MakeCode.decodeCode(barcode);
|
|
if (venueBarCode == null) {
|
|
logger.error("二维码不合法" + barcode);
|
|
return null;
|
|
}
|
|
}
|
|
VenueMessage venueMessage = new VenueMessage();
|
|
venueMessage.setMessageType(MessageType.SCAN_CODE);
|
|
venueMessage.setMessage(barcode);
|
|
logger.info("核销二维码===" + barcode);
|
|
return EncodeMsg.INSTANCE.encode(venueMessage);
|
|
}
|
|
|
|
}
|