| | |
| | | public void outBigStorageTask() throws Exception { |
| | | Date startDate = new Date(); |
| | | S7DataZKDLPTwo s7DataZKDLPTwo = s7SerializerZKDLPTwo.read(S7DataZKDLPTwo.class); |
| | | log.info("进片任务读取s7DataZKDLPTwo:{}", s7DataZKDLPTwo); |
| | | log.info("出片任务读取s7DataZKDLPTwo:{}", s7DataZKDLPTwo); |
| | | // ReadWriteEntity inkageEntity = miloService.readFromOpcUa("DLP2B.DLP2B.mesControl"); |
| | | // if (true != Boolean.parseBoolean(inkageEntity.getValue() + "")) { |
| | | Boolean inkageEntity = s7DataZKDLPTwo.getMesControl(); |
| | |
| | | //获取空闲且领取任务的数据信息,没有任务直接走玻璃调度 |
| | | HashMap<Integer, Boolean> map = new HashMap<>(); |
| | | try { |
| | | Boolean oneEntity = CMJ1ModbusTcp.readUInt16(42027 - 40001) != 0; |
| | | map.put(930, oneEntity); |
| | | if (CMJ1ModbusTcp.checkConnected()) { |
| | | Boolean oneEntity = CMJ1ModbusTcp.readUInt16(42027 - 40001) != 0; |
| | | map.put(930, oneEntity); |
| | | } else { |
| | | map.put(930, Boolean.FALSE); |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | //nothing |
| | | log.info("一线空闲状态获取异常"); |
| | | } |
| | | try { |
| | | S7DataZKExtra s7DataZKExtra = s7SerializerZKQ2.read(S7DataZKExtra.class); |
| | | log.info("中空额外读取{}", s7DataZKExtra); |
| | | map.put(931, s7DataZKExtra.getIsFree()); |
| | | map.put(932, s7DataZKExtra.getIsFree03()); |
| | | } catch (Exception e) { |
| | |
| | | String fromOpcUa = ""; |
| | | switch (i) { |
| | | case 1: |
| | | requestWord = s7DataZKDLPOne.getId1().toString(); |
| | | requestWord = s7DataZKDLPOne.getId1(); |
| | | statetWord = s7DataZKDLPOne.getState1().toString(); |
| | | toOpcUa = s7DataZKDLPOne.getTo1().toString(); |
| | | fromOpcUa = s7DataZKDLPOne.getFrom1().toString(); |
| | | break; |
| | | case 2: |
| | | requestWord = s7DataZKDLPOne.getId2().toString(); |
| | | requestWord = s7DataZKDLPOne.getId2(); |
| | | statetWord = s7DataZKDLPOne.getState2().toString(); |
| | | toOpcUa = s7DataZKDLPOne.getTo2().toString(); |
| | | fromOpcUa = s7DataZKDLPOne.getFrom2().toString(); |
| | | break; |
| | | case 3: |
| | | requestWord = s7DataZKDLPOne.getId3().toString(); |
| | | requestWord = s7DataZKDLPOne.getId3(); |
| | | statetWord = s7DataZKDLPOne.getState3().toString(); |
| | | toOpcUa = s7DataZKDLPOne.getTo3().toString(); |
| | | fromOpcUa = s7DataZKDLPOne.getFrom3().toString(); |
| | | break; |
| | | case 4: |
| | | requestWord = s7DataZKDLPOne.getId4().toString(); |
| | | requestWord = s7DataZKDLPOne.getId4(); |
| | | statetWord = s7DataZKDLPOne.getState4().toString(); |
| | | toOpcUa = s7DataZKDLPOne.getTo4().toString(); |
| | | fromOpcUa = s7DataZKDLPOne.getFrom4().toString(); |
| | | break; |
| | | case 5: |
| | | requestWord = s7DataZKDLPOne.getId5().toString(); |
| | | requestWord = s7DataZKDLPOne.getId5(); |
| | | statetWord = s7DataZKDLPOne.getState5().toString(); |
| | | toOpcUa = s7DataZKDLPOne.getTo5().toString(); |
| | | fromOpcUa = s7DataZKDLPOne.getFrom5().toString(); |
| | | break; |
| | | case 6: |
| | | requestWord = s7DataZKDLPOne.getId6().toString(); |
| | | requestWord = s7DataZKDLPOne.getId6(); |
| | | statetWord = s7DataZKDLPOne.getState6().toString(); |
| | | toOpcUa = s7DataZKDLPOne.getTo6().toString(); |
| | | fromOpcUa = s7DataZKDLPOne.getFrom6().toString(); |
| | |
| | | int glassCount = baseInfoList.size(); |
| | | List<BigStorageCageTask> bigStorageCageTaskList = new ArrayList<>(); |
| | | //生成出片任务条数不足6补全 |
| | | // for (T t : baseInfoList) { |
| | | // bigStorageCageTaskList.add(new BigStorageCageTask(t.getGlassId(), t.getSlot(), targetSlot, 0)); |
| | | // } |
| | | for (T t : baseInfoList) { |
| | | bigStorageCageTaskList.add(new BigStorageCageTask(t.getGlassId(), t.getSlot(), targetSlot, 0)); |
| | | } |
| | | // while (bigStorageCageTaskList.size() < 6) { |
| | | // bigStorageCageTaskList.add(new BigStorageCageTask("", 0, 0, 0)); |
| | | // } |
| | |
| | | resetOutTask(); |
| | | // bigStorageCageTaskService.removeAll(tableName); |
| | | // bigStorageCageTaskService.saveTaskMessage(tableName, bigStorageCageTaskList); |
| | | log.info("生成出片任务数据{}", bigStorageCageTaskList); |
| | | S7DataZKDLPTwo s7DataZKDLPTwo = new S7DataZKDLPTwo(); |
| | | for (int i = 0; i < bigStorageCageTaskList.size() && i < 6; i++) { |
| | | String glassId = bigStorageCageTaskList.get(i).getGlassId(); |
| | |
| | | } |
| | | } |
| | | s7SerializerZKDLPTwo.write(s7DataZKDLPTwo); |
| | | log.info("出片任务写入数据{}", s7DataZKDLPTwo); |
| | | S7DataZKDLPTwo s7DataZKDLPTwo1 = s7SerializerZKDLPTwo.read(S7DataZKDLPTwo.class); |
| | | log.info("写入出片任务后读取数据{}", s7DataZKDLPTwo1); |
| | | List<HollowBigStorageCageHistoryTask> historyList = bigStorageCageTaskList.stream().filter(e -> StringUtils.isNotBlank(e.getGlassId())).map(e -> { |
| | | HollowBigStorageCageHistoryTask history = new HollowBigStorageCageHistoryTask(); |
| | | BeanUtils.copyProperties(e, history); |
| | |
| | | history.setTaskType(taskType); |
| | | return history; |
| | | }).collect(Collectors.toList()); |
| | | log.info("历史任务保存{}", historyList); |
| | | hollowBigStorageCageHistoryTaskService.saveBatch(historyList); |
| | | log.info("将出片玻璃{}玻璃状态改为出片中", glassIds); |
| | | hollowBigStorageCageDetailsService.update(new LambdaUpdateWrapper<HollowBigStorageCageDetails>() |