自动化立体仓库 - WMS系统
zhangc
2024-12-19 f7359e4c48b19293798798f8226463519bcdd659
优化AGV工作处理及上报逻辑
3个文件已修改
49 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/task/ReportDataScheduler.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/ReportDataScheduler.java
@@ -59,13 +59,12 @@
    @Scheduled(fixedDelay = 5000)
    @Async("reportThreadPool")
    public void execute() {
        log.info("定时任务开始执行");
        if (!flag) {
            return;
        }
        Page<ReportData> objectPage = new Page<>(1, 1000);
        Page<ReportData> objectPage = new Page<>(1, 100);
        Page<ReportData> reportData = reportDataService.selectPage(objectPage, new EntityWrapper<ReportData>().orderBy("create_time", false));
        if (reportData != null && !Cools.isEmpty(reportData.getRecords())) {
            Map<String, Object> mesTokenInfo = getMesTokenInfo();
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -43,9 +43,9 @@
    //移库类型数组
    private static final List<Integer> MOVE_TYPE_List = new ArrayList<Integer>() {{
        add(11);
        add(101);
        add(12);
        add(53);
        //add(53);
        add(101);
        add(103);
        add(108);
        add(111);
@@ -135,6 +135,23 @@
            }
            Integer pltType = agvWrkMast.getPltType();
            if (Cools.isEmpty(pltType) && !Cools.isEmpty(agvWrkMast.getLocNo())) {
                AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo());
                if (agvLocMast != null) {
                    pltType = agvLocMast.getPltType();
                } else {
                    if (!Cools.isEmpty(agvWrkMast.getSourceLocNo())) {
                        agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo());
                        if (agvLocMast != null) {
                            pltType = agvLocMast.getPltType();
                        }
                    }
                }
            }
            if (Cools.isEmpty(agvWrkMast.getPltType())) {
                agvWrkMast.setPltType(pltType);
            }
            agvWrkMast.setModiTime(new Date());
            //修改工作档状态为207.库存更新完成
            agvWrkMast.setWrkSts(207L);
@@ -336,13 +353,7 @@
//                }
//                agvWrkMastService.updateById(agvWrkMast);
//            }
            Integer pltType = agvWrkMast.getPltType();
            if (Cools.isEmpty(pltType) && !Cools.isEmpty(agvWrkMast.getLocNo())) {
                AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo());
                if (agvLocMast != null) {
                    pltType = agvLocMast.getPltType();
                }
            }
            if (!isJSON(orderNo)) {
                //检查订单是否已完成
                orderService.checkComplete(orderNo, pltType);
@@ -733,7 +744,6 @@
        }
    }
    private void reportMesPakinOrder(AgvWrkMast agvWrkMast, List<AgvWrkDetl> agvWrkDetls) {
src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java
@@ -76,19 +76,23 @@
                    mesPath = orderReportPath;
                    break;
            }
            doHttpRequest(data.getReportJson(), mesTokenInfo, data.getMemo(), url, mesPath, null, "127.0.0.1");
            reportDataService.deleteById(data.getId());
            ReportDataLog reportDataLog = new ReportDataLog();
            String fail = null;
            if (!doHttpRequest(data.getReportJson(), mesTokenInfo, data.getMemo(), url, mesPath, null, "127.0.0.1")) {
                fail = "fail";
            }
            reportDataService.deleteById(data.getId());
            BeanUtil.copyProperties(data, reportDataLog);
            reportDataLog.setReportTime(new Date());
            reportDataLog.setReportDataId(data.getId());
            reportDataLog.setThreeCode(fail);
            reportDataLogService.insert(reportDataLog);
        }
        return SUCCESS;
    }
    private JSONObject doHttpRequest(String requestParam, Map<String, Object> headParam, String namespace, String url, String path, String appkey, String ip) {
    private Boolean doHttpRequest(String requestParam, Map<String, Object> headParam, String namespace, String url, String path, String appkey, String ip) {
        String response = "";
        boolean success = false;
@@ -102,14 +106,14 @@
                throw new CoolException("mes接口调用失败,返回信息:" + jsonObject);
            }
            success = true;
            return jsonObject;
            return true;
        } catch (Exception e) {
            log.error(e.getMessage());
            throw new CoolException(e.getMessage());
            //throw new CoolException(e.getMessage());
        } finally {
            apiLogService.save(namespace, url + path, appkey, ip, requestParam, response, success);
        }
        return false;
    }
}