| | |
| | | import com.mes.edgstoragecage.entity.EdgStorageCageDetails; |
| | | import com.mes.edgstoragecage.service.EdgStorageCageDetailsService; |
| | | import com.mes.edgstoragecage.service.EdgStorageCageService; |
| | | import com.mes.engineering.entity.Engineering; |
| | | import com.mes.engineering.mapper.EngineeringMapper; |
| | | import com.mes.glassinfo.entity.GlassInfo; |
| | | import com.mes.glassinfo.service.GlassInfoService; |
| | | import com.mes.largenscreen.entity.PieChartVO; |
| | | import com.mes.taskcache.entity.TaskCache; |
| | | import com.mes.taskcache.service.TaskCacheService; |
| | | import com.mes.tools.WebSocketServer; |
| | |
| | | WebSocketServer webServerService; |
| | | @Autowired |
| | | DamageService damageService; |
| | | @Autowired |
| | | EngineeringMapper engineeringMapper; |
| | | |
| | | |
| | | @Value("${mes.threshold}") |
| | | private int threshold; |
| | |
| | | } |
| | | |
| | | // taskRequestTypeValue = "2"; |
| | | // out08Glassstate = "1"; |
| | | // out08Glassstate = "0"; |
| | | // out10Glassstate = "1"; |
| | | // currentSlot = "1"; |
| | | // confirmationWrodValue = "0"; |
| | | // glassIdeValue = "P25021704|75|12"; |
| | | // glassIdeValue = ""; |
| | | |
| | | log.info("1、获取到的请求字为:{},获取到的扫描ID为:{},获取到的确认字为:{},获取到的出片状态分别为:A09:{}、A10:{},当前格子号为:{}", |
| | | taskRequestTypeValue, glassIdeValue, confirmationWrodValue, out08Glassstate, out10Glassstate, currentSlot); |
| | |
| | | if (!result) { |
| | | log.info("此玻璃id已经进过"); |
| | | return; |
| | | } |
| | | if (StringUtils.isNotBlank(glassIdeValue)) { |
| | | GlassInfo glassInfo = glassInfoService.getOne( |
| | | new LambdaQueryWrapper<GlassInfo>() |
| | | .eq(GlassInfo::getGlassId, glassIdeValue) |
| | | ); |
| | | Engineering engineering = engineeringMapper.selectOne( |
| | | new LambdaQueryWrapper<Engineering>() |
| | | .eq(Engineering::getEngineerId, glassInfo.getEngineerId()) |
| | | ); |
| | | if (engineering.getState() == 2) { |
| | | log.info("此订单已禁止生产"); |
| | | return; |
| | | } |
| | | } |
| | | if ("1".equals(taskRequestTypeValue) && result) { |
| | | log.info("2、进片请求,且确认字为0,执行进片任务,扫码重复ID验证【有重复=false,无重复=true】:{}", result); |
| | |
| | | .eq(GlassInfo::getGlassId, glassId) |
| | | ); |
| | | if (glassInfos != null) { |
| | | if (Math.max(glassInfos.getWidth(), glassInfos.getHeight()) > Integer.parseInt(firstLength) && out08Glassstate == 1) { |
| | | endcell = Const.A09_OUT_TARGET_POSITION; |
| | | if (Math.max(glassInfos.getWidth(), glassInfos.getHeight()) > Integer.parseInt(firstLength)) { |
| | | if (out08Glassstate == 1) { |
| | | endcell = Const.A09_OUT_TARGET_POSITION; |
| | | } else { |
| | | log.info("当前玻璃只能走大线,但大线未空闲玻璃信息:{}", glassInfos); |
| | | return Boolean.FALSE; |
| | | } |
| | | } else { |
| | | endcell = computerLineByState(out08Glassstate, out10Glassstate); |
| | | } |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Scheduled(fixedDelay = 1000) |
| | | public void largenScreen() { |
| | | JSONObject jsonObject = new JSONObject(); |
| | | |
| | | ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("largenScreen"); |
| | | if (sendwServer != null) { |
| | | List<PieChartVO> pieChartVOS = edgStorageCageDetailsService.queryPieChart(); |
| | | jsonObject.append("pieChartVOS", pieChartVOS); |
| | | for (WebSocketServer webserver : sendwServer) { |
| | | if (webserver != null) { |
| | | webserver.sendMessage(jsonObject.toString()); |
| | | List<String> messages = webserver.getMessages(); |
| | | if (!messages.isEmpty()) { |
| | | // // 将最后一个消息转换为整数类型的列表 |
| | | webserver.clearMessages(); |
| | | } |
| | | } else { |
| | | log.info("largenScreen is closed"); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |