|
|
@@ -32,30 +32,30 @@ public class DeJuRFIDService implements IService {
|
|
|
public void start(RemoteLabHardware hardware) {
|
|
|
GClient client;
|
|
|
String ipAddress = hardware.getIpAddress();
|
|
|
- if (clientMap.containsKey(ipAddress)){
|
|
|
- client=clientMap.get(ipAddress);
|
|
|
- }else {
|
|
|
+ if (clientMap.containsKey(ipAddress)) {
|
|
|
+ client = clientMap.get(ipAddress);
|
|
|
+ } else {
|
|
|
client = new GClient();
|
|
|
- clientMap.put(ipAddress,client);
|
|
|
+ clientMap.put(ipAddress, client);
|
|
|
}
|
|
|
- if (client.openTcp(ipAddress+":8160", 2000)) {
|
|
|
+ if (client.openTcp(ipAddress + ":8160", 2000)) {
|
|
|
// 订阅标签上报事件
|
|
|
subscribeHandler(client);
|
|
|
|
|
|
// 功率配置, 将4个天线功率都设置为30dBm.
|
|
|
Integer uniformPower = hardware.getUniformPower();
|
|
|
- MsgBaseGetPower msgBaseGetPower=new MsgBaseGetPower();
|
|
|
+ MsgBaseGetPower msgBaseGetPower = new MsgBaseGetPower();
|
|
|
client.sendSynMsg(msgBaseGetPower);
|
|
|
if (0 == msgBaseGetPower.getRtCode()) {
|
|
|
Hashtable<Integer, Integer> dicPower = msgBaseGetPower.getDicPower();
|
|
|
Integer integer = dicPower.get(0);
|
|
|
- if (!Objects.equals(integer, uniformPower)){
|
|
|
+ if (!Objects.equals(integer, uniformPower)) {
|
|
|
MsgBaseSetPower msgBaseSetPower = new MsgBaseSetPower();
|
|
|
Hashtable<Integer, Integer> hashtable = new Hashtable<>();
|
|
|
|
|
|
Integer channels = hardware.getChannels();
|
|
|
for (int i = 1; i <= channels; i++) {
|
|
|
- hashtable.put(i,uniformPower);
|
|
|
+ hashtable.put(i, uniformPower);
|
|
|
}
|
|
|
msgBaseSetPower.setDicPower(hashtable);
|
|
|
client.sendSynMsg(msgBaseSetPower);
|
|
|
@@ -69,8 +69,8 @@ public class DeJuRFIDService implements IService {
|
|
|
log.info("Power configuration error.");
|
|
|
}
|
|
|
|
|
|
- MsgAppSetBeep msgAppSetBeep=new MsgAppSetBeep();
|
|
|
- msgAppSetBeep.setBeepMode(hardware.getSessionIndex()>1?1:0);
|
|
|
+ MsgAppSetBeep msgAppSetBeep = new MsgAppSetBeep();
|
|
|
+ msgAppSetBeep.setBeepMode(hardware.getSessionIndex() > 1 ? 1 : 0);
|
|
|
msgAppSetBeep.setBeepStatus(1);
|
|
|
client.sendSynMsg(msgAppSetBeep);
|
|
|
|
|
|
@@ -81,15 +81,15 @@ public class DeJuRFIDService implements IService {
|
|
|
}
|
|
|
// 4个天线读卡, 读取EPC数据区以及TID数据区
|
|
|
MsgBaseInventoryEpc msgBaseInventoryEpc = new MsgBaseInventoryEpc();
|
|
|
- switch (hardware.getChannels()){
|
|
|
+ switch (hardware.getChannels()) {
|
|
|
case 4:
|
|
|
- msgBaseInventoryEpc.setAntennaEnable(EnumG.AntennaNo_3);
|
|
|
+ msgBaseInventoryEpc.setAntennaEnable(EnumG.AntennaNo_1 | EnumG.AntennaNo_2 | EnumG.AntennaNo_3 | EnumG.AntennaNo_4);
|
|
|
break;
|
|
|
case 8:
|
|
|
- msgBaseInventoryEpc.setAntennaEnable(EnumG.AntennaNo_4);
|
|
|
+ msgBaseInventoryEpc.setAntennaEnable(EnumG.AntennaNo_1 | EnumG.AntennaNo_2 | EnumG.AntennaNo_3 | EnumG.AntennaNo_4 | EnumG.AntennaNo_5 | EnumG.AntennaNo_6 | EnumG.AntennaNo_7 | EnumG.AntennaNo_8);
|
|
|
break;
|
|
|
case 16:
|
|
|
- msgBaseInventoryEpc.setAntennaEnable(EnumG.AntennaNo_5);
|
|
|
+ msgBaseInventoryEpc.setAntennaEnable(EnumG.AntennaNo_1 | EnumG.AntennaNo_2 | EnumG.AntennaNo_3 | EnumG.AntennaNo_4 | EnumG.AntennaNo_5 | EnumG.AntennaNo_6 | EnumG.AntennaNo_7 | EnumG.AntennaNo_8 | EnumG.AntennaNo_9 | EnumG.AntennaNo_10 | EnumG.AntennaNo_11 | EnumG.AntennaNo_12 | EnumG.AntennaNo_13 | EnumG.AntennaNo_14 | EnumG.AntennaNo_15 | EnumG.AntennaNo_16);
|
|
|
break;
|
|
|
case 1:
|
|
|
default:
|
|
|
@@ -111,7 +111,7 @@ public class DeJuRFIDService implements IService {
|
|
|
@Override
|
|
|
public void disconnect(RemoteLabHardware hardware) {
|
|
|
String ipAddress = hardware.getIpAddress();
|
|
|
- if (clientMap.containsKey(ipAddress)){
|
|
|
+ if (clientMap.containsKey(ipAddress)) {
|
|
|
GClient client = clientMap.get(ipAddress);
|
|
|
MsgBaseStop msg = new MsgBaseStop();
|
|
|
// 停止读卡,空闲态
|
|
|
@@ -129,13 +129,14 @@ public class DeJuRFIDService implements IService {
|
|
|
|
|
|
/**
|
|
|
* 订阅6c标签信息上报
|
|
|
+ *
|
|
|
* @param client 客户端
|
|
|
*/
|
|
|
private void subscribeHandler(GClient client) {
|
|
|
client.onTagEpcLog = (s, logBaseEpcInfo) -> {
|
|
|
if (logBaseEpcInfo.getResult() == 0) {
|
|
|
- InventoryTag tag=new InventoryTag();
|
|
|
- BeanUtils.copyProperties(logBaseEpcInfo,tag);
|
|
|
+ InventoryTag tag = new InventoryTag();
|
|
|
+ BeanUtils.copyProperties(logBaseEpcInfo, tag);
|
|
|
sendService.send(tag);
|
|
|
}
|
|
|
};
|