镇海石化
LAPTOP-S9HJSOEB\昊天 1 year ago
parent 47ce47146b
commit 3f62a8417c

@ -11,6 +11,7 @@ import com.zhehekeji.web.service.interfaces.RfidLogService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import lombok.var;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
@ -44,7 +45,7 @@ public class VideoccController {
} }
} }
log.info("库存请求orderNum{},tag:{}",orderNum,list); log.info("库存请求orderNum{},tag:{}",orderNum,list);
PlcService.wmsTrayCodeMapByTask.put(orderNum,list); // PlcService.wmsTrayCodeMapByTask.put(orderNum,list);
VideoccResponse videoccResponse = new VideoccResponse(); VideoccResponse videoccResponse = new VideoccResponse();
videoccResponse.setMsg("成功"); videoccResponse.setMsg("成功");
videoccResponse.setIsSuccess(1); videoccResponse.setIsSuccess(1);

@ -121,7 +121,6 @@ public class CameraService {
e.printStackTrace(); e.printStackTrace();
} }
} }
return new PageInfo<>(cameras); return new PageInfo<>(cameras);
} }

@ -97,7 +97,6 @@ public class PlcService {
ExecutorService executor = Executors.newFixedThreadPool(20); ExecutorService executor = Executors.newFixedThreadPool(20);
public static Map<String, Set<String>> wmsTrayCodeMapByTask = new HashMap<>();
private static ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 8, 200, TimeUnit.MINUTES, new ArrayBlockingQueue<>(100000)); private static ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 8, 200, TimeUnit.MINUTES, new ArrayBlockingQueue<>(100000));
@ -663,7 +662,7 @@ public class PlcService {
log.error("相机{}未连接无法拍照", cameraId); log.error("相机{}未连接无法拍照", cameraId);
} }
//托盘码 //托盘码
String trayCode = null; String trayCode = "";
Boolean trayCheck = Boolean.FALSE; Boolean trayCheck = Boolean.FALSE;
//如果是用扫码枪 扫 托盘码,就直接扫 //如果是用扫码枪 扫 托盘码,就直接扫
//if(configProperties.getScanCodeMode().getTray() == 2){ //if(configProperties.getScanCodeMode().getTray() == 2){
@ -736,27 +735,26 @@ public class PlcService {
log.info("盘点rfid扫描结果" + tags); log.info("盘点rfid扫描结果" + tags);
} }
if (tags != null && tags.size() > 0) { if (tags != null && tags.size() > 0) {
//镇海深巷道,进行假盘点
if (wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum()) != null // if ( tags.contains(wmsTrayCode)) {
&& tags.containsAll(wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum()))) { // log.info("扫描成功");
log.info("扫描成功"); //
// } else {
} else { // if (wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum()) != null) {
if (wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum()) != null) { // wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum()).removeAll(tags);
wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum()).removeAll(tags); //
// log.info("未扫到数据为:{}", wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum()));
log.info("未扫到数据为:{}", wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum())); // for (String str : wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum())) {
for (String str : wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum())) { // if (str.length() == 14) {
if (str.length() == 14) { // code = "RFID扫描失败";
code = "RFID扫描失败"; // log.info("未扫描到箱体" + str);
log.info("未扫描到箱体" + str); // }
} // }
} // if (wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum()).size() > configProperties.getRfid().getGraceNumber()) {
if (wmsTrayCodeMapByTask.get(plcCmdInfo.getOrderNum()).size() > configProperties.getRfid().getGraceNumber()) { // code = "RFID扫描失败";
code = "RFID扫描失败"; // }
} // }
} // }
}
RFID rfid = rfidMapper.selectOne(new QueryWrapper<RFID>().eq("street_id", street.getId())); RFID rfid = rfidMapper.selectOne(new QueryWrapper<RFID>().eq("street_id", street.getId()));
if (!rfidLiveService.getRfidLive(plcCmdInfo, street, wmsTrayCode)) { if (!rfidLiveService.getRfidLive(plcCmdInfo, street, wmsTrayCode)) {
rfidLiveService.rfidRemoveLive(plcCmdInfo, street, rfid); rfidLiveService.rfidRemoveLive(plcCmdInfo, street, rfid);
@ -771,24 +769,25 @@ public class PlcService {
}); });
try { try {
String sickCode = sickFuture.get(); // get()会阻塞直到结果可用 //String sickCode = sickFuture.get(); // get()会阻塞直到结果可用
String rfid = rfidFuture.get(); // get()会阻塞直到结果可用 String rfid = rfidFuture.get(); // get()会阻塞直到结果可用
log.info("sickCode:{}", sickCode); //log.info("sickCode:{}", sickCode);
log.info("rfid:{}", rfid); log.info("rfid:{}", rfid);
trayCode = sickCode; //trayCode = sickCode;
if (sickCode != null && !"".equals(sickCode)) { // if (sickCode != null && !"".equals(sickCode)) {
trayCode = trayCode + ";"; // trayCode = trayCode + ";";
} else { // } else {
trayCheck = Boolean.TRUE; // trayCheck = Boolean.TRUE;
} // }
if (rfid == null || "".equals(rfid)) { if (rfid == null || "".equals(rfid)) {
trayRFIDCheck = Boolean.TRUE; trayRFIDCheck = Boolean.TRUE;
} }
trayCode += rfid; //trayCode += rfid;
if ("".equals(trayCode)) { if ("".equals(trayCode)) {
trayCode = "盘点正确"; trayCode = "盘点正确";
trayCode = wmsTrayCode;
} }
} catch (InterruptedException | ExecutionException e) { } catch (InterruptedException | ExecutionException e) {
e.printStackTrace(); e.printStackTrace();
@ -803,7 +802,7 @@ public class PlcService {
//核对异常 //核对异常
Integer status = 1; Integer status = 1;
//托盘和货物都正确 //托盘和货物都正确
if (trayCheck && trayRFIDCheck) { if ( trayRFIDCheck) {
status = 2; status = 2;
} }
if (stock == null) { if (stock == null) {

@ -79,7 +79,7 @@ lightSource:
# -----goods 货物 # -----goods 货物
# 扫码模式 0:此处不盘点 1球机扫码 2sick扫码枪 3:南北达RFID # 扫码模式 0:此处不盘点 1球机扫码 2sick扫码枪 3:南北达RFID
scanCodeMode: scanCodeMode:
tray: 1 tray: 3
goods: 0 goods: 0
goodsCodeTypes: goodsCodeTypes:
- 14 - 14

Loading…
Cancel
Save