| | |
| | | import com.kangaroohy.milo.model.ReadWriteEntity; |
| | | import com.kangaroohy.milo.service.MiloService; |
| | | import com.mes.common.config.Const; |
| | | import com.mes.damage.service.DamageService; |
| | | import com.mes.edgglasstask.entity.EdgGlassTaskInfo; |
| | | import com.mes.edgglasstask.service.EdgGlassTaskInfoService; |
| | | import com.mes.edgstoragecage.entity.EdgStorageCage; |
| | |
| | | EdgStorageCageService edgStorageCageService; |
| | | @Resource |
| | | EdgStorageDeviceTaskHistoryService edgStorageDeviceTaskHistoryService; |
| | | @Resource |
| | | DamageService damageService; |
| | | |
| | | @Value("${mes.glassGap}") |
| | | private int glassGap; |
| | |
| | | private void startOneOpcTaskChild(String tableName, int device) { |
| | | EdgStorageDeviceTask task = edgStorageDeviceTaskService.queryTaskMessage(tableName); |
| | | // try { |
| | | if (task == null) { |
| | | log.info("任务表基础数据录入失败,请检查数据是否录入成功"); |
| | | return; |
| | | } |
| | | if (task.getTaskState() == 2) { |
| | | //防止出片任务且笼前有玻璃的情况,将进片id置空,即出片仅考虑笼内的玻璃 |
| | | task.setGlassIdIn(""); |
| | | } |
| | | if (task == null) { |
| | | log.info("任务表基础数据录入失败,请检查数据是否录入成功"); |
| | | return; |
| | | } |
| | | if (task.getTaskState() == 2) { |
| | | //防止出片任务且笼前有玻璃的情况,将进片id置空,即出片仅考虑笼内的玻璃 |
| | | task.setGlassIdIn(""); |
| | | } |
| | | int request = task.getTaskState(); |
| | | int taskRunning = task.getTaskRunning(); |
| | | log.info("开始执行任务,任务请信息为{}", task); |
| | | log.info("开始执行任务,任务请信息为{}", task); |
| | | if (request == 0) { |
| | | log.info("设备:{}状态:{}", device, request); |
| | | log.info("未收到任务请求,结束本次任务"); |
| | |
| | | .eq(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_NEW) |
| | | .eq(EdgStorageDeviceTaskHistory::getDeviceId, device) |
| | | .orderByDesc(EdgStorageDeviceTaskHistory::getCreateTime).last("limit 1")); |
| | | //如果任务类型为1,3,将切割完成的玻璃自动报工 |
| | | if (Const.GLASS_CACHE_TYPE_IN_ALL.contains(taskHistory.getTaskType())) { |
| | | damageService.autoSubmitReport(taskHistory.getGlassIdIn(), taskHistory.getDeviceId(),"切割","进卧理"); |
| | | } |
| | | updateCellRemainWidth(cell, device, taskHistory); |
| | | edgStorageDeviceTaskHistoryService.update(new LambdaUpdateWrapper<EdgStorageDeviceTaskHistory>() |
| | | .eq(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_NEW) |
| | |
| | | .last("Limit 1"); |
| | | GlassInfo swapGlassInfo = glassInfoService.getOne(queryWrapper); |
| | | if (swapGlassInfo != null && !glassInfo.getGlassId().equals(swapGlassInfo.getGlassId())) { |
| | | |
| | | int patternSequence = glassInfo.getPatternSequence(); |
| | | int xAxis = glassInfo.getXAxis(); |
| | | int yAxis = glassInfo.getYAxis(); |
| | | String swapGlassId = swapGlassInfo.getGlassId(); |
| | | log.info("将玻璃{}和玻璃{},信息互换,进玻璃 {}", glassInfo, swapGlassInfo, swapGlassInfo); |
| | | int swapPatternSequence = swapGlassInfo.getPatternSequence(); |
| | | int swapXAxis = swapGlassInfo.getXAxis(); |
| | | int swapYAxis = swapGlassInfo.getYAxis(); |
| | | swapGlassInfo.setGlassId(glassId); |
| | | swapGlassInfo.setPatternSequence(patternSequence); |
| | | swapGlassInfo.setXAxis(xAxis); |
| | | swapGlassInfo.setYAxis(yAxis); |
| | | glassInfo.setGlassId(swapGlassId); |
| | | glassInfo.setPatternSequence(swapPatternSequence); |
| | | glassInfo.setXAxis(swapXAxis); |
| | | glassInfo.setYAxis(swapYAxis); |
| | | log.info("将玻璃{}和玻璃{},信息互换(原片序号及坐标除外),进玻璃 {}", glassInfo, swapGlassInfo, swapGlassInfo); |
| | | glassInfoService.updateById(swapGlassInfo); |
| | | glassInfoService.updateById(glassInfo); |
| | | return swapGlassId; |