| | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.time.LocalDateTime; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | |
| | | if (0==i){ |
| | | map.put(identifier + "的saveRequest的信号",i+1); |
| | | } |
| | | // miloService.writeToOpcByte(entity); |
| | | miloService.writeToOpcByte(entity); |
| | | }else if ("SaveRequestLast".equals(parts[2])){ |
| | | ReadWriteEntity entity = new ReadWriteEntity(parts[0] + "." + parts[1] + ".SaveFeedLast", 1); |
| | | log.info("-------监听到,{}的SaveRequestLast的信号",identifier); |
| | |
| | | if (0==i){ |
| | | map.put(identifier + "的SaveRequestLast的信号",i+1); |
| | | } |
| | | // miloService.writeToOpcByte(entity); |
| | | miloService.writeToOpcByte(entity); |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | ReadWriteEntity entity2 = new ReadWriteEntity(parts[0]+"."+parts[1]+".OrderNumber", orderNum); |
| | | // miloService.writeToOpcByte(entity2); |
| | | miloService.writeToOpcByte(entity2); |
| | | } |
| | | //如果是返修工位需要传输返修工位号 |
| | | if (OPCElement.OP465_ZZ_CODE_CHECK.equals(Node) || OPCElement.OP355_ZZ_CODE_CHECK.equals(Node)){ |
| | | rework(SNCode); |
| | | } |
| | | // miloService.writeToOpcByte(entity); |
| | | miloService.writeToOpcByte(entity); |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | |
| | | private void rework(String SNCode) { |
| | | private void rework(String SNCode) throws Exception{ |
| | | BsOrderScheduling bsOrderScheduling = new BsOrderScheduling(); |
| | | bsOrderScheduling.setEngineNo(SNCode); |
| | | List<String> allProcessCoed = new ArrayList<>(); |
| | |
| | | if (CollUtil.isNotEmpty(collect)){ |
| | | String s = collect.get(0); |
| | | //查找次机型的完整工序 |
| | | List<BsTechnologyRouteChildInfo> bsTechnologyRouteChildInfos = bsTechnologyRouteChildInfoService.selectAllTechnologyRouteByProductCode(SNCode); |
| | | List<BsTechnologyRouteChildInfo> bsTechnologyRouteChildInfos = bsTechnologyRouteChildInfoService.selectAllTechnologyRouteByProductCode(s); |
| | | if (CollUtil.isNotEmpty(bsTechnologyRouteChildInfos)){ |
| | | allProcessCoed = bsTechnologyRouteChildInfos.stream().map(BsTechnologyRouteChildInfo::getProcessesCode).collect(Collectors.toList()); |
| | | } |
| | |
| | | writeList.add(readWriteEntity); |
| | | }); |
| | | } |
| | | if (CollUtil.isNotEmpty(writeList)){ |
| | | ReadWriteEntity readWriteEntity = new ReadWriteEntity(); |
| | | readWriteEntity.setIdentifier("Repair_sign"); |
| | | readWriteEntity.setValue(1); |
| | | writeList.add(readWriteEntity); |
| | | // miloService.writeToOpcByte(writeList); |
| | | } |
| | | ReadWriteEntity readWriteEntity = new ReadWriteEntity(); |
| | | readWriteEntity.setIdentifier("Repair_sign"); |
| | | readWriteEntity.setValue(1); |
| | | writeList.add(readWriteEntity); |
| | | miloService.writeToOpcByte(writeList); |
| | | } |
| | | |
| | | |
| | |
| | | Object object = miloService.readFromOpcUa(parts[0] + "." + parts[1] + ".Runtime").getValue(); |
| | | Long beatTime = 0L; |
| | | if (ObjectUtil.isNotEmpty(object)){ |
| | | beatTime = (Long) object; |
| | | String str = object.toString(); |
| | | beatTime = Float.valueOf(str).longValue(); |
| | | } |
| | | DaPassingStationCollection PassingStationCollection=new DaPassingStationCollection(); |
| | | PassingStationCollection.setSfcCode(SNCode); |