diff --git a/web/pom.xml b/web/pom.xml
index 899155c..2c465f2 100644
--- a/web/pom.xml
+++ b/web/pom.xml
@@ -75,7 +75,13 @@
system
${project.basedir}/src/main/resources/libs/jna.jar
-
+
+ com
+ javaRFID-helloworld
+ 1.0
+ system
+ ${project.basedir}/src/main/resources/libs/javaRFID-helloworld.jar
+
com.sun.jna.examples
test
diff --git a/web/src/main/java/com/zhehekeji/web/config/ConfigProperties.java b/web/src/main/java/com/zhehekeji/web/config/ConfigProperties.java
index f410fba..4a68610 100644
--- a/web/src/main/java/com/zhehekeji/web/config/ConfigProperties.java
+++ b/web/src/main/java/com/zhehekeji/web/config/ConfigProperties.java
@@ -123,6 +123,7 @@ public class ConfigProperties {
@Data
public static class ScanCodeMode{
private Integer tray;
+ private Integer test = 1;
private Integer goods;
private int [] goodsCodeTypes;
private int [] trayCodeTypes;
diff --git a/web/src/main/java/com/zhehekeji/web/entity/CheckLog.java b/web/src/main/java/com/zhehekeji/web/entity/CheckLog.java
index b72a074..5f5d276 100644
--- a/web/src/main/java/com/zhehekeji/web/entity/CheckLog.java
+++ b/web/src/main/java/com/zhehekeji/web/entity/CheckLog.java
@@ -15,6 +15,10 @@ public class CheckLog {
private Integer streetId;
+
+ @TableField(exist = false)
+ private String streetName;
+
private Integer direction;
private Integer side;
diff --git a/web/src/main/java/com/zhehekeji/web/service/CheckLogService.java b/web/src/main/java/com/zhehekeji/web/service/CheckLogService.java
index 82819f9..7f92e40 100644
--- a/web/src/main/java/com/zhehekeji/web/service/CheckLogService.java
+++ b/web/src/main/java/com/zhehekeji/web/service/CheckLogService.java
@@ -6,6 +6,7 @@ import com.github.pagehelper.PageInfo;
import com.zhehekeji.web.entity.CheckLog;
import com.zhehekeji.web.mapper.CheckLogMapper;
import com.zhehekeji.web.pojo.stock.CheckLogSearch;
+import com.zhehekeji.web.pojo.street.StreetVO;
import com.zhehekeji.web.util.ToolUtil;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
@@ -18,6 +19,9 @@ public class CheckLogService {
@Resource
private CheckLogMapper checkLogMapper;
+ @Resource
+ private StreetService streetService;
+
public PageInfo list(CheckLogSearch search){
@@ -46,7 +50,15 @@ public class CheckLogService {
}
wrapper.orderByDesc("create_time");
ListstockChecks = checkLogMapper.selectList(wrapper);
-
+ List streetVOS = streetService.list();
+ for (CheckLog checkLog : stockChecks){
+ for (StreetVO streetVO : streetVOS){
+ if(streetVO.getId().equals(checkLog.getStreetId())){
+ checkLog.setStreetName(streetVO.getName());
+ break;
+ }
+ }
+ }
return new PageInfo<>(stockChecks);
}
}
diff --git a/web/src/main/java/com/zhehekeji/web/service/OrderService.java b/web/src/main/java/com/zhehekeji/web/service/OrderService.java
index 9d4c336..77443c9 100644
--- a/web/src/main/java/com/zhehekeji/web/service/OrderService.java
+++ b/web/src/main/java/com/zhehekeji/web/service/OrderService.java
@@ -122,9 +122,10 @@ public class OrderService {
}
String leftRightS = leftRight == 1 ? "左" : "右";
- //里外 现在无法判断 这个项目全是 里
- String location = "%s-里-%s列%s行";
- return String.format(location, leftRightS, column, row);
+ String inOut = 2 == orderVO.getInOut2() ?"深":"浅";
+ //
+ String location = "%s-%s-%s列%s行";
+ return String.format(location, leftRightS, inOut,column, row);
}
}
return null;
diff --git a/web/src/main/java/com/zhehekeji/web/service/PlcService.java b/web/src/main/java/com/zhehekeji/web/service/PlcService.java
index b4874d0..0487f10 100644
--- a/web/src/main/java/com/zhehekeji/web/service/PlcService.java
+++ b/web/src/main/java/com/zhehekeji/web/service/PlcService.java
@@ -56,6 +56,10 @@ public class PlcService {
@Resource
private OrderMapper orderMapper;
+
+
+ @Resource
+ private CameraMapper cameraMapper;
@Resource
private StockMapper stockMapper;
@Resource
@@ -234,7 +238,7 @@ public class PlcService {
public void action(PlcCmdInfo plcCmdInfo, Integer times, String code) throws InterruptedException {
Street street = streetService.getStreetByPlcId(plcCmdInfo.getPlcId());
if (street == null) {
- log.error("street not found ,plcId :{}", plcCmdInfo.getPlcId());
+ log.error("street not found ,plcId :{},taskId:{}", plcCmdInfo.getPlcId(), plcCmdInfo.getOrderNum());
return;
}
OrderInfo orderInfo = new OrderInfo(street, plcCmdInfo, times, code);
@@ -248,8 +252,8 @@ public class PlcService {
* 右侧转camera2
* 没有就不管了
*/
- Integer cameraId = getCameraByPlcCmd(plcCmdInfo, orderInfo.getLeftRight());
- gyrateCameraByCode(cameraId, orderInfo.getCmdCode());
+ Integer cameraId = getCameraByPlcCmdAction(plcCmdInfo, orderInfo.getCmdCode());
+ gyrateCameraByCode(cameraId, orderInfo.getCmdCode(), orderInfo.getOrderNum());
if (needCapture) {
Boolean delay = true;
Integer row = 0;
@@ -303,7 +307,19 @@ public class PlcService {
gyrateCameraByCodeTimeLater(street.getCamera1Id(), "C5", configProperties.getCameraConfig().getC2OutDelayCaptureTime() + 500);
}
}
- rfidLiveService.rfidOrderStock(plcCmdInfo, times, code);
+ threadPoolExecutor.execute(()->{
+ rfidLiveService.rfidOrderStock(plcCmdInfo, times, code);
+ });
+ }
+
+ private Integer getCameraByPlcCmdAction(PlcCmdInfo plcCmdInfo, String code) {
+ Street street = streetService.getStreetByPlcId(plcCmdInfo.getPlcId());
+ //只进行相机方向判断左边
+ if (code.contains("L")) {
+ return street.getCamera1Id();
+ } else {
+ return street.getCamera2Id();
+ }
}
public void gyrateCamera(PlcCmdInfo plcCmdInfo, String code) {
@@ -370,6 +386,16 @@ public class PlcService {
if (ptzId != null && ptzId >= 0) {
log.info("gyrate camera by code, code:{},cameraId:{},ptId:{}", code, cameraId, ptzId);
cameraControlModule.toPtz(ptzId, cameraId);
+ } else {
+ log.info("ptz not found , code:{},cameraId:{},ptId:{}", code, cameraId, ptzId);
+ log.error("ptz not found ,code:{},cameraId:{}", code, cameraId);
+ }
+ }
+ public void gyrateCameraByCode(Integer cameraId, String code,String taskId) {
+ Integer ptzId = cameraService.getPtzIdByCodeAndCameraId(code, cameraId);
+ if (ptzId != null && ptzId >= 0) {
+ log.info("gyrate camera by code, code:{},cameraId:{},ptId:{},taskId:{}", code, cameraId, ptzId,taskId);
+ cameraControlModule.toPtz(ptzId, cameraId);
} else {
log.error("ptz not found ,code:{},cameraId:{}", code, cameraId);
}
@@ -563,15 +589,13 @@ public class PlcService {
Integer cameraId = street.getCamera1Id() != null && street.getCamera1Id() != 0 ? street.getCamera1Id() : street.getCamera2Id();
return cameraId;
}
-
}
-
}
public Integer getCameraByPlcCmdE(PlcCmdInfo plcCmdInfo, Integer leftRight) {
Street street = streetService.getStreetByPlcId(plcCmdInfo.getPlcId());
- //判断单双伸 type=0 单伸 1为双伸
Integer type;
- if (plcCmdInfo.getFromSeparation() == 1) {
+ //只进行相机方向判断左边
+ if (plcCmdInfo.getFromDirection() == 1) {
return street.getCamera1Id();
} else {
return street.getCamera2Id();
@@ -625,6 +649,7 @@ public class PlcService {
Boolean trayCheck = Boolean.TRUE;
//如果是用扫码枪 扫 托盘码,就直接扫
//if(configProperties.getScanCodeMode().getTray() == 2){
+ log.info("扫码类型:"+configProperties.getScanCodeMode().getTray());
if (plcCmdInfo.getSeparation1() == 1 && configProperties.getScanCodeMode().getTray() == 2) {
//托盘使用sick扫码枪
SensorGun sensorGun = sensorService.getSensorByPlc(street.getId(), plcCmdInfo.getLeftRight1());
@@ -658,7 +683,7 @@ public class PlcService {
}
- } else if (configProperties.getScanCodeMode().getTray() == 3) {
+ } else if (configProperties.getScanCodeMode().getTray() == 3 ) {
// //RFID
// RFID rfid = rfidService.getRFIDByPlc(street.getId(),plcCmdInfo.getLeftRight1());
Set tags = new HashSet<>();
@@ -669,6 +694,7 @@ public class PlcService {
e.printStackTrace();
} finally {
tags = RFIDStop(plcCmdInfo);
+ log.info("盘点rfid扫描结果:"+tags);
}
if (tags != null && tags.size() > 0 && tags.contains(wmsTrayCode)) {
@@ -686,10 +712,10 @@ public class PlcService {
RfidLive rfidLive = rfidLiveService.getOne(new QueryWrapper()
.eq("street_Id", street.getId())
.eq("direction", plcCmdInfo.getFromDirection())
- .eq("side", plcCmdInfo.getSide1())
+ .eq("side", plcCmdInfo.getFromSeparation())
.eq("rfid_row", plcCmdInfo.getRow1())
- .eq("rfid_column", plcCmdInfo.getRow1()));
- if (ToolUtil.isNotEmpty(rfidLive) && ToolUtil.isNotEmpty(rfidLive.getRfidTrayCode()) && rfidLive.getRfidTrayCode().equals(wmsTrayCode)) {
+ .eq("rfid_column", plcCmdInfo.getColumn1()));
+ if (ToolUtil.isNotEmpty(rfidLive) && ToolUtil.isNotEmpty(rfidLive.getRfidTrayCode()) && rfidLive.getRfidTrayCode().contains(wmsTrayCode)) {
trayCode = wmsTrayCode;
trayCheck = Boolean.TRUE;
log.info("数据库查询rfid", trayCode);
@@ -820,6 +846,7 @@ public class PlcService {
* @param fromOrTo 确定方向
*/
public void RFIDCheck(PlcCmdInfo plcCmdInfo, boolean fromOrTo) {
+ log.info("开启rfid");
Street street = streetService.getStreetByPlcId(plcCmdInfo.getPlcId());
if (street != null) {
//rfid不分左右,rfid使用同一ip和端口,依靠传递字符调整方向
@@ -837,7 +864,6 @@ public class PlcService {
RFIDSocket rfidSocket = new RFIDSocket(ip, port);
log.info("rfid调用,ip:"+ip+";port:"+port);
rfidSocket.startCheck(direction);
- rfidSocket.readData();
RFIDMap.put(streetId, rfidSocket);
}
@@ -848,7 +874,7 @@ public class PlcService {
if (rfidSocket != null) {
tags = rfidSocket.getTags();
log.info("tags:{}", tags);
- rfidSocket.close();
+ rfidSocket.stopCheck();
RFIDMap.remove(street.getId());
}
return tags;
@@ -861,9 +887,9 @@ public class PlcService {
RFIDSocket rfidSocket = RFIDMap.get(street.getId());
String tags = "";
if (rfidSocket != null) {
- tags = rfidSocket.getTag();
log.info("tag:{}", tags);
- rfidSocket.close();
+ rfidSocket.stopCheck();
+ tags = rfidSocket.getTag();
RFIDMap.remove(street.getId());
}
return tags;
diff --git a/web/src/main/java/com/zhehekeji/web/service/RFID/RFIDSocket.java b/web/src/main/java/com/zhehekeji/web/service/RFID/RFIDSocket.java
index a2db1a5..6c84d7b 100644
--- a/web/src/main/java/com/zhehekeji/web/service/RFID/RFIDSocket.java
+++ b/web/src/main/java/com/zhehekeji/web/service/RFID/RFIDSocket.java
@@ -1,291 +1,168 @@
package com.zhehekeji.web.service.RFID;
+import com.module.interaction.RXTXListener;
+import com.module.interaction.ReaderHelper;
+import com.rfid.RFIDReaderHelper;
+import com.rfid.ReaderConnector;
+import com.rfid.rxobserver.RXObserver;
+import com.rfid.rxobserver.ReaderSetting;
+import com.rfid.rxobserver.bean.RXInventoryTag;
+
+import com.rfid.bean.MessageTran;
+import com.util.StringTool;
import com.zhehekeji.web.util.ToolUtil;
-import io.swagger.models.auth.In;
-import lombok.SneakyThrows;
-import lombok.extern.slf4j.Slf4j;
-import java.io.*;
-
-import java.net.InetSocketAddress;
-import java.net.Socket;
import java.util.*;
+import java.util.concurrent.ConcurrentHashMap;
-/**
- * sick扫码枪
- */
-@Slf4j
public class RFIDSocket {
-
- private Socket socket;
-
- private OutputStream os;
-
- private InputStream is;
-
- private Queue buffer;
-
- private boolean running;
-
- private int step;
-
- private int length;
-
private String ip;
-
private int port;
+ private ReaderHelper mReaderHelper;
+ private ReaderConnector mReaderConnector;
+ private boolean running;
- private int index;
-
- private static File file;
-
- private static FileWriter fw;
-
- /**
- * 读到的所有code标签
- */
private Set tags = new HashSet<>();
- private Map countMap = new HashMap();
-
- private List byteList = new ArrayList<>(30);
-
+ private Map tagsCount = new ConcurrentHashMap<>();
public Set getTags(){
return tags;
}
- /**
- * 获取rfid扫描最多的tag,不保证准确性
- * @return
- */
- public String getTag(){
- if(ToolUtil.isNotEmpty(countMap)){
- int count = 0;
- String t = "";
- for (String tag : countMap.keySet()){
- if(countMap.get(tag)>count){
- count = countMap.get(tag);
- t = tag;
- }
- }
- return t;
- }else return "";
- }
-
-
- public RFIDSocket(String ip,int port){
- this.ip = ip;
- this.port = port;
- socket = new Socket();
- os = null;
- is = null;
- try {
- socket.connect(new InetSocketAddress(ip,port),3000);
- os = socket.getOutputStream();
- is = socket.getInputStream();
- } catch (IOException e) {
- log.error("RFIDSocket time out,ip:{},info:{}",ip,e);
- close();
+ private Observer mObserver = new RXObserver() {
+ @Override
+ protected void onInventoryTag(RXInventoryTag tag) {
+ System.out.println("EPC data:" + tag.strEPC);
}
- }
-
- public void readData(){
- running = true;
- buffer = new LinkedList();
-
- Thread thread = new Thread(new Runnable() {
-
- @SneakyThrows
- @Override
- public void run() {
- while (true){
- if(!running){
- System.out.println("stop");
- break;
- }
- int i = 0;
- try {
- //读不到会阻塞 返回-1表示连接已断开
- i = is.read();
- } catch (IOException e) {
- log.error("disconnect");
- }
- if(i == -1){
- break;
- }
- int count = 0;
- try {
- count = is.available();
- if(count > 0){
- //把之前read的字节嫁过来
- byte[]readBytes = new byte[count+1];
- readBytes[0] = (byte)i;
- is.read(readBytes,1,count);
- for(byte b:readBytes){
- buffer.offer(b);
- }
- }
- } catch (IOException e) {
- log.error("");
- }
- while (buffer.size()> 0){
- String code = readTag();
- if(code != null){
- // 写入log
- /*if(!tags.contains(code))
- {
- fw.write(code+"\n");
- fw.flush();
- }*/
- System.out.println(code);
- tags.add(code);
- if(ToolUtil.isEmpty(countMap.get(code))){
- countMap.put(code,1);
- }else countMap.put(code,countMap.get(code) + 1);
- }
- }
- }
- }
- });
- thread.start();
- }
+ @Override
+ protected void onInventoryTagEnd(RXInventoryTag.RXInventoryTagEnd endTag) {
+ System.out.println("inventory end:" + endTag.mTotalRead);
+ ((RFIDReaderHelper) mReaderHelper).realTimeInventory((byte) 0xff,(byte)0x01);
+ }
- private String readTag(){
- String tag = null;
- Byte b = buffer.poll();
- if(b == null){
- return tag;
+ @Override
+ protected void onExeCMDStatus(byte cmd,byte status) {
+ System.out.format("CDM:%s Execute status:%S\n",
+ String.format("%02X",cmd),String.format("%02x", status));
}
- if(step == 0){
- //判断是否表示头
- if(b == HEAD.HEAD){
- step++;
- byteList.add(b);
- }
- }else if(step == 1){
- //读长度
- length = b & 0xff;
- step++;
- byteList.add(b);
- }else if(step == 2){
- byteList.add(b);
- index++;
- if(index == length-1){
- step++;
- }
- }else if(step == 3){
- byteList.add(b);
- byte[]bytes = new byte[byteList.size()];
- for(int i = 0;i 8){
+ for (int i = 0; i < aryDataLength; ++i){
+ sb.append(java.lang.String.format("%02X",messageTran.getAryData()[i]));
+ }
+ String st = sb.toString();
+ int index = st.indexOf("E");
+ String tag = st.substring(index, index+16);
+ System.out.println("tag: "+tag);
+ tags.add(tag);
+ if(ToolUtil.isNotEmpty(tagsCount.get(tag))){
+ tagsCount.put(tag, tagsCount.get(tag)+1);
+ }else{
+ tagsCount.put(tag, 1);
}
- tag = sb.toString();
}
}
- clear();
}
- return tag;
- }
- private void clear(){
- byteList.clear();
- step = 0;
- length = 0;
- index = 0;
- }
+ @Override
+ public void sendData(byte[] btArySendData) {
+ // TODO Auto-generated method stub
+ System.out.println("sendData: " + StringTool.byteArrayToString(btArySendData, 0, btArySendData.length));
+ }
- public void close() {
- running = false;
- try {
- is.close();
- socket.close();
- os.close();
- } catch (IOException e) {
- e.printStackTrace();
- log.error("warn rfid close:{}",e);
+ @Override
+ public void onLostConnect() {
+ // TODO Auto-generated method stub
}
+ };
+ public RFIDSocket(String ip, Integer port){
+ mReaderConnector = new ReaderConnector();
+ mReaderHelper = mReaderConnector.connectNet(ip, port);
}
-
public void startCheck(Integer direction){
+ running = true;
Thread thread = new Thread(new Runnable() {
- @Override
public void run() {
- while (true){
- if(!running){
- break;
- }
- byte []antChanges = new byte[6];
- antChanges[0] = (byte)0xa0;
- antChanges[1] = (byte)0x04;
- antChanges[2] = (byte)0x01;
- antChanges[3] = (byte)0x74;
- if(1 == direction ){
- //切换天线 使用天线
- log.info("rfid左 ip:"+ip);
- antChanges[4] = (byte)0x00;
- antChanges[5] = (byte)0xe7;
- }else {
- log.info("rfid右 ip:"+ip);
- //切换天线 使用天线1
- antChanges[4] = (byte)0x01;
- antChanges[5] = (byte)0xe6;
- }
- try {
- os.write(antChanges);
- Thread.sleep(10);
- } catch (InterruptedException | IOException e) {
- log.error("send cmd error:{}",e);
- }
- byte[]bytes = new byte[5];
- bytes[0] = (byte)0xa0;
- bytes[1] = (byte)0x03;
- bytes[2] = (byte)0x01;
- bytes[3] = (byte)0xb0;
- bytes[4] = (byte)0xac;
+
+ if (mReaderHelper != null) {
+ System.out.println("Connect success!");
try {
- os.write(bytes);
- Thread.sleep(70);
- } catch (InterruptedException | IOException e) {
- log.warn("send rfid cmd error:{}",e);
+ mReaderHelper.registerObserver(mObserver);
+ mReaderHelper.setRXTXListener(mListener);
+
+ Thread.sleep(500);
+ //start to find the tags
+// ((RFIDReaderHelper) mReaderHelper).realTimeInventory((byte) 0xff,(byte)0x01);
+ while (true) {
+// if (i%2==0){
+ if (!running){
+ break;
+ }
+ if (direction == 1) {
+ //切换天线 0x00:天线1;0x01:天线2
+ ((RFIDReaderHelper) mReaderHelper).setWorkAntenna((byte) 0xFF, (byte) 0x00);
+ } else {
+ ((RFIDReaderHelper) mReaderHelper).setWorkAntenna((byte) 0xFF, (byte) 0x01);
+ }
+ //开始盘存
+ ((RFIDReaderHelper) mReaderHelper).iso180006BInventory((byte) 0xFF);
+// i++;
+ Thread.sleep(70);
+ }
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
}
+ } else {
+ System.out.println("Connect faild!");
+ mReaderConnector.disConnect();
}
}
});
thread.start();
+ }
+ public void stopCheck(){
+ running = false;
+ if (mReaderConnector.isConnected()){
+ mReaderConnector.disConnect();
+ }
+ }
+ public String getTag(){
+ if(ToolUtil.isNotEmpty(tagsCount)){
+ int i = 0;
+ String tag = "" ;
+ for (String t : tagsCount.keySet()){
+ if (i implements RfidLiveService {
@Resource
@@ -42,7 +45,6 @@ public class RfidLiveServiceImpl extends ServiceImpl i
@Override
- @Async("threadPoolTaskExecutor")
public void rfidOrderStock(PlcCmdInfo plcCmdInfo, Integer times, String trayCode) {
Street street = streetService.getStreetByPlcId(plcCmdInfo.getPlcId());
@@ -55,7 +57,8 @@ public class RfidLiveServiceImpl extends ServiceImpl i
} catch (InterruptedException e) {
throw new RuntimeException(e);
} finally {
- tags = plcService.RFIDStopGetRFID(plcCmdInfo);
+ tags = String.join(",", plcService.RFIDStop(plcCmdInfo));
+ log.info("随行rfid扫描结果:"+tags);
}
rfidRemoveLive(plcCmdInfo,street,rfid);
rfidSave( plcCmdInfo,tags,street,rfid);
@@ -72,9 +75,10 @@ public class RfidLiveServiceImpl extends ServiceImpl i
remove(new QueryWrapper()
.eq("street_Id", street.getId())
.eq("direction", plcCmdInfo.getFromDirection())
- .eq("side", plcCmdInfo.getFromSide())
+ .eq("side", plcCmdInfo.getFromSeparation())
.eq("rfid_row", plcCmdInfo.getFromRow())
.eq("rfid_column", plcCmdInfo.getFromColumn()));
+ remove(new QueryWrapper().isNull("direction"));
rfidLog.setRfidId(rfid.getId());
rfidLog.setStreet_id(street.getId());
diff --git a/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDecoder.java b/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDecoder.java
index cfb9fa2..e2d6e6c 100644
--- a/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDecoder.java
+++ b/web/src/main/java/com/zhehekeji/web/service/ksec/KsecDecoder.java
@@ -99,6 +99,8 @@ public class KsecDecoder extends DelimiterBasedFrameDecoder {
plcCmdInfo.setFromRow(dataInfo.getFromRow());
plcCmdInfo.setFromColumn(dataInfo.getFromColumn());
plcCmdInfo.setFromSide(dataInfo.getFromSide());
+ plcCmdInfo.setFromSeparation(dataInfo.getFromSeparation());
+ plcCmdInfo.setToSeparation(dataInfo.getToSeparation());
plcCmdInfo.setToSide(dataInfo.getToSide());
//左右不换过来
if(dataInfo.getFromDirection() == 1){
@@ -121,8 +123,7 @@ public class KsecDecoder extends DelimiterBasedFrameDecoder {
if (Cmd.A.name().equals(ksecInfo.getType())) {
//心跳
log.debug("receieve heart ");
- } else if (Cmd.B.name().equals(ksecInfo.getType())) {
-
+ } else if (Cmd.B.name().equals(ksecInfo.getType()) ||(Cmd.E.name().equals(ksecInfo.getType()) && !dataInfo.getTrayCode().startsWith("E"))) {
//任务
if (Cmd.B1.name().equals(cmdName)) {
//昆船盘点模式下也会发B1 ,但是不会发送B2
diff --git a/web/src/main/resources/application-test.yml b/web/src/main/resources/application-test.yml
index 2b90dca..f29365b 100644
--- a/web/src/main/resources/application-test.yml
+++ b/web/src/main/resources/application-test.yml
@@ -27,24 +27,28 @@ userUrl: http://115.236.65.98:11001
# ----默认摄像头的连接信息
cameraConfig:
# ------------球機選擇--- 0:利珀 1:海康
- cameraType: 0
+ cameraType: 1
cameraPassword: a1234567
cameraUser: admin
cameraPort: 8000
videoServer: 127.0.0.1:8083
+ #相机抓图延迟 毫秒,这个延迟是等待球机球机转动到位,然后拍照的
+ delayCaptureTime: 3500
#随行模式下的相机抓图延迟 毫秒,这个延迟是等待球机球机转动到位,然后拍照的
# 发了C1之后多久拍照
- C1DelayCaptureTime: 2500
+ C1DelayCaptureTime: 3500
# 内侧货架 发了C2 之后多久拍照
- C2DelayCaptureTime: 1500
+ C2DelayCaptureTime: 3500
# 外侧货架 发了C2 之后多久拍照
C2OutDelayCaptureTime: 4500
# 发了C3之后多久拍照
- C3DelayCaptureTime: 2500
- C4DelayCaptureTime: 1500
- C4OutDelayCaptureTime: 1500
- #相机抓图延迟 毫秒,这个延迟是等待球机球机转动到位,然后拍照的
- delayCaptureTime: 3500
+ C3DelayCaptureTime: 3500
+ C4DelayCaptureTime: 3500
+ C4OutDelayCaptureTime: 3500
+ # 发了B2之后多久转原点位
+ B2DelayTime: 2000
+ # 外侧货架发了B2多久转原点位
+ B2OutDelayTime: 3000
# 下载mp4延迟 海康的下载mp4需要2分钟
# 利珀延迟10s就可
# 单位毫秒
@@ -57,22 +61,23 @@ savePath:
# ------------服务端类型 0:TCP(罗伯泰克) 1:KSEC(JSON)(昆船)
serverMode: 1
ksec:
+ # ip: 10.43.1.144
ip: 127.0.0.1
- port: 3000
+ port: 9000
#重连次数 默认10次
reconnectNum: -1
#重连间隔 默认10s
reconnectInterval: 10
# ------------ 实时视频流 全部页面的格式 行列数量
videoStyleConfig:
- videoStyleRow: 2
- videoStyleColumn: 2
+ videoStyleRow: 3
+ videoStyleColumn: 3
# ------------光源---
# -------------type 0:没有光源 1:利珀光源控制器JYDam 2:利珀视觉控制器
# ----------- num:总共多少个光源端口 index:需要控制的是哪个
# ------------ 利珀视觉控制器id从1开始,光源控制器从0开始
lightSource:
- type: 2
+ type: 1
num: 4
index: 1
# -----tray 托盘
@@ -80,18 +85,19 @@ lightSource:
# 扫码模式 0:此处不盘点 1:球机扫码 2:sick扫码枪 3:南北达RFID
scanCodeMode:
tray: 3
- goods: 1
+ goods: 0
goodsCodeTypes:
- 14
trayCodeTypes:
- 14
# 照片 視頻保存多久
-deleteFileDays: 365
+deleteFileDays: 60
#rfid
rfid:
#rfid连续扫描时间,默认5s 单位s
- scanTime: 1
+ scanTime: 20
+
asyncExecutorThread:
corePoolSize: 5
diff --git a/web/src/main/resources/libs/RXTXcomm.jar b/web/src/main/resources/libs/RXTXcomm.jar
index 84e5f01..e1e7503 100644
Binary files a/web/src/main/resources/libs/RXTXcomm.jar and b/web/src/main/resources/libs/RXTXcomm.jar differ
diff --git a/web/src/main/resources/libs/javaRFID-helloworld.jar b/web/src/main/resources/libs/javaRFID-helloworld.jar
new file mode 100644
index 0000000..0e90d9f
Binary files /dev/null and b/web/src/main/resources/libs/javaRFID-helloworld.jar differ