| | |
| | | package com.zy.asrs.service.impl; |
| | | |
| | | import HslCommunication.Core.Types.OperateResultExOne; |
| | | import HslCommunication.Profinet.Siemens.SiemensS7Net; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | |
| | | private BasCrnErrorMapper basCrnErrorMapper; |
| | | @Autowired |
| | | private WrkMastService wrkMastService; |
| | | |
| | | @Value("${wms.url}") |
| | | private String wmsUrl; |
| | | |
| | |
| | | // continue; |
| | | // } |
| | | // } |
| | | //超宽超高没扫到条码报警 |
| | | // boolean fig=false; |
| | | // for(int i=0;i<8;i++){ |
| | | // switch (i){ |
| | | // case 0: if(devpThread.startSignal[i]){ |
| | | // log.error("前超报警"); |
| | | // fig=true; |
| | | // }; |
| | | // case 1: if(devpThread.startSignal[i]){ |
| | | // log.error("后超报警"); |
| | | // fig=true; |
| | | // }; |
| | | // case 2: if(devpThread.startSignal[i]){ |
| | | // log.error("高超报警"); |
| | | // fig=true; |
| | | // }; |
| | | // case 3: if(devpThread.startSignal[i]){ |
| | | // log.error("左超报警"); |
| | | // fig=true; |
| | | // }; |
| | | // case 4: if(devpThread.startSignal[i]){ |
| | | // log.error("右超报警"); |
| | | // fig=true; |
| | | // }; |
| | | // case 5: if(devpThread.startSignal[i]){ |
| | | // log.error("超重报警"); |
| | | // fig=true; |
| | | // }; |
| | | // case 6: if(devpThread.startSignal[i]){ |
| | | // log.error("未扫到码报警"); |
| | | // fig=true; |
| | | // }; |
| | | // |
| | | // } |
| | | // } |
| | | if (staProtocol.isAutoing() && staProtocol.isInEnable() |
| | | && !staProtocol.isEmptyMk() && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() > 9990) |
| | | && staProtocol.isPakMk()) { //&& staProtocol.getStamp()>=2) {// && !Cools.isEmpty(barcode)) { |
| | |
| | | // Thread.sleep(300); |
| | | // }catch (Exception e){} |
| | | |
| | | //String barcode = barcodeThread.getBarcode(); |
| | | String barcode = "20000005"; |
| | | String barcode = barcodeThread.getBarcode(); |
| | | if(!Cools.isEmpty(barcode)) { |
| | | News.info(""+mark+" - 1"+" - {}号条码扫描器检测条码信息:{}", inSta.getBarcode(), barcode); |
| | | |
| | |
| | | continue; |
| | | } |
| | | // 命令下发 ------------------------------------------------------------------------------- |
| | | // if (!commands.isEmpty()) { |
| | | // if (led.getId() < 7) { |
| | | // if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(3, commands))) { |
| | | // News.error(""+mark+" - 2"+" - {}号LED命令下发失败!!![ip:{}] [port:{}]", led.getId(), led.getIp(), led.getPort()); |
| | | // continue; |
| | | // } else { |
| | | // ledThread.setLedMk(false); |
| | | // } |
| | | // } else { |
| | | // if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(1, commands))) { |
| | | // News.error(""+mark+" - 3"+" - {}号LED命令下发失败!!![ip:{}] [port:{}]", led.getId(), led.getIp(), led.getPort()); |
| | | // continue; |
| | | // } else { |
| | | // ledThread.setLedMk(false); |
| | | // } |
| | | // } |
| | | // |
| | | // } |
| | | // 命令下发 ------------------------------------------------------------------------------- |
| | | if (!commands.isEmpty()) { |
| | | if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(3, commands))) { |
| | | News.error("{}号LED命令下发失败!!![ip:{}] [port:{}]", led.getId(), led.getIp(), led.getPort()); |
| | | continue; |
| | | }else { |
| | | ledThread.setLedMk(false); |
| | | if (led.getId() == 2) { |
| | | if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(3, commands))) { |
| | | News.error(""+mark+" - 2"+" - {}号LED命令下发失败!!![ip:{}] [port:{}]", led.getId(), led.getIp(), led.getPort()); |
| | | continue; |
| | | } else { |
| | | ledThread.setLedMk(false); |
| | | } |
| | | } else { |
| | | if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(1, commands))) { |
| | | News.error(""+mark+" - 3"+" - {}号LED命令下发失败!!![ip:{}] [port:{}]", led.getId(), led.getIp(), led.getPort()); |
| | | continue; |
| | | } else { |
| | | ledThread.setLedMk(false); |
| | | } |
| | | } |
| | | |
| | | } |
| | | // // 命令下发 ------------------------------------------------------------------------------- |
| | | // if (!commands.isEmpty()) { |
| | | // if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(3, commands))) { |
| | | // News.error("{}号LED命令下发失败!!![ip:{}] [port:{}]", led.getId(), led.getIp(), led.getPort()); |
| | | // continue; |
| | | // }else { |
| | | // ledThread.setLedMk(false); |
| | | // } |
| | | // } |
| | | |
| | | try { |
| | | // 修改主档led标记 |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 接收超宽超高没扫到条码报警 |
| | | * @param mark |
| | | */ |
| | | public synchronized void DevpCallThePolice(Integer mark){ |
| | | // 根据输送线plc遍历 |
| | | for (DevpSlave devp : slaveProperties.getDevp()) { //遍历输送线 |
| | | // 遍历入库口 |
| | | for (DevpSlave.Sta inSta : devp.getInSta()) { // 遍历入库口 |
| | | // 获取入库站信息 |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); |
| | | StaProtocol staProtocol = devpThread.getStation().get(inSta.getStaNo()); |
| | | if(null != devpThread){ |
| | | boolean fig=false; |
| | | for (int i=0;i<8;i++){ |
| | | switch (i){ |
| | | case 0: if(devpThread.startSignal[i]){ |
| | | log.error("前超报警"); |
| | | fig=true; |
| | | }; |
| | | case 1: if(devpThread.startSignal[i]){ |
| | | log.error("后超报警"); |
| | | fig=true; |
| | | }; |
| | | case 2: if(devpThread.startSignal[i]){ |
| | | log.error("高超报警"); |
| | | fig=true; |
| | | }; |
| | | case 3: if(devpThread.startSignal[i]){ |
| | | log.error("左超报警"); |
| | | fig=true; |
| | | }; |
| | | case 4: if(devpThread.startSignal[i]){ |
| | | log.error("右超报警"); |
| | | fig=true; |
| | | }; |
| | | case 5: if(devpThread.startSignal[i]){ |
| | | log.error("超重报警"); |
| | | fig=true; |
| | | }; |
| | | case 6: if(devpThread.startSignal[i]){ |
| | | log.error("未扫到码报警"); |
| | | fig=true; |
| | | }; |
| | | |
| | | } |
| | | } |
| | | //发生报警,退回入库口 |
| | | if(fig){ |
| | | staProtocol.setWorkNo((short)9991); |
| | | staProtocol.setStaNo((short)100); |
| | | devpThread.setPakMk(staProtocol.getSiteId(), false); |
| | | boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |