diff --git a/web/src/main/java/com/zhehekeji/web/service/PlcCmdInfo.java b/web/src/main/java/com/zhehekeji/web/service/PlcCmdInfo.java index a8c78e4..df0a556 100644 --- a/web/src/main/java/com/zhehekeji/web/service/PlcCmdInfo.java +++ b/web/src/main/java/com/zhehekeji/web/service/PlcCmdInfo.java @@ -66,6 +66,8 @@ public class PlcCmdInfo { private String plcId; + private Integer times; + public PlcCmdInfo(String plcId, String taskId, Integer side1, Integer leftRight1, Integer column1, Integer row1, Integer separation1, Integer side2, Integer leftRight2, Integer column2, Integer row2, Integer separation2) { this.taskId = taskId; this.side1 = side1; 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 d382893..402ac48 100644 --- a/web/src/main/java/com/zhehekeji/web/service/PlcService.java +++ b/web/src/main/java/com/zhehekeji/web/service/PlcService.java @@ -462,8 +462,34 @@ public class PlcService { return cameraId; } }else { - //双伸 - //todo + if (street.getCamera1Id() != null && street.getCamera2Id() != null && street.getCamera1Id() != 0 && street.getCamera2Id() != 0) { + //双伸 todo 这个因项目而异,看现场的情况 + //默认是 + if(plcCmdInfo.getTimes() <= 2){ + //左侧 + if(plcCmdInfo.getLeftRight1() == 1){ + + if(plcCmdInfo.getSeparation1() == 1){ + //左侧 内货架 camera2 + return street.getCamera2Id(); + }else { + //左侧 外货架 camera1 + return street.getCamera1Id(); + } + }else { + if(plcCmdInfo.getSeparation1() == 2){ + //右侧 内货架 camera2 + return street.getCamera1Id(); + }else { + //右侧 外货架 camera1 + return street.getCamera2Id(); + } + } + } + } else { + Integer cameraId = street.getCamera1Id() != null && street.getCamera1Id() != 0 ? street.getCamera1Id() : street.getCamera2Id(); + return cameraId; + } return null; } 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 bd13826..d4b6907 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 @@ -73,6 +73,7 @@ public class KsecDecoder extends DelimiterBasedFrameDecoder { if (Cmd.isBaseAction(code)) { //执行动作,需要保存执行到第几步了 Integer times = GoodsActionTimes.put(plcCmdInfo.getOrderNum()); + plcCmdInfo.setTimes(times); code = code + "-" + plcCmdInfo.getLeftRightStr(times) + plcCmdInfo.getInOutStr(times); //执行动作 plcService.action(plcCmdInfo, times, code);