自动化立体仓库 - WMS系统
pang.jiabao
昨天 f0226479e92a906950aac0834048cc709e032e97
src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
@@ -372,7 +372,7 @@
        // 空托出库
        if (StringUtils.isEmpty(mesOutApply.getOrderNo()) && "01".equals(mesOutApply.getTransType())) {
            // 生成空托出库任务
            mobileService.callEmptyBinOutBound(mesOutApply,WMS_TRANS_START_STATION_1,"1",defaultUserId);
            mobileService.callEmptyBinOutBound(mesOutApply,mesOutApply.getStationId().startsWith("LL") ? WMS_TRANS_START_STATION_3 : WMS_TRANS_START_STATION_1,"1",1,defaultUserId);
//            try {
//                if (!StringUtils.isEmpty(mesOutApply.getTaskno()) && !StringUtils.isEmpty(mesOutApply.getStationId())) {
@@ -477,8 +477,13 @@
            wrkMast.setIoType(101); // 入出库状态
            wrkMast.setIoPri(13D); // 优先级:13
            wrkMast.setCrnNo(1);
            wrkMast.setSourceStaNo("203"); // 源站
            wrkMast.setStaNo("204"); // 目标站
            if(mesOutApply.getStationId().startsWith("LL")) {
                wrkMast.setSourceStaNo("203"); // 源站
                wrkMast.setStaNo("204"); // 目标站
            } else {
                wrkMast.setSourceStaNo("205"); // 源站
                wrkMast.setStaNo("205"); // 目标站
            }
            wrkMast.setSourceLocNo(locMast.getLocNo()); // 源库位
            wrkMast.setFullPlt("Y"); // 满板:Y
            wrkMast.setPicking("N"); // 拣料
@@ -586,8 +591,8 @@
                    transTask.setOrderNo(mesInApply.getOrderNo());
                    transTask.setTransType(mesInApply.getTransType());
                    transTask.setCurProcess(mesInApply.getProductLineId());
                    transTask.setCurStationId("A3");
                    transTask.setNextStationId("A4");
                    transTask.setCurStationId(mesInApply.getStationID());
                    transTask.setNextStationId(mesInApply.getStationID().startsWith("LL") ? WMS_TRANS_START_STATION_2 : WMS_TRANS_START_STATION_1);
                    transTask.setItemno(WMS_ZPALLET_ID);  // 固定为空托的编码
                    transTask.setQty(1);    // 空托只回1个
                    transTask.setProductLineId(mesInApply.getProductLineId());
@@ -595,7 +600,7 @@
                    transTask.setAgvFactory(1);
                    JSONObject sendAgvTask = submitTask(transTask);
                    if (!"1".equals(sendAgvTask.getString("Success"))) {
                        log.error("出库下发agv运输任务失败,{}", JSONObject.toJSONString(transTask));
                        log.error("入库下发agv运输任务失败,{}", JSONObject.toJSONString(transTask));
                        return 2;
                    }
                } else {
@@ -678,7 +683,6 @@
            OrderInAndOutUtil.updateOrder(Boolean.TRUE, orderPakin.getId(), 2L, defaultUserId);
            // 呼叫AGV从产线运回立库
            try {
                if (!StringUtils.isEmpty(mesInApply.getTaskno())) {
                    TransTask transTask = new TransTask();
                    transTask.setTaskno(mesInApply.getTaskno());
@@ -687,7 +691,7 @@
                    transTask.setTransType(mesInApply.getTransType());
                    transTask.setCurProcess(mesInApply.getProductLineId());
                    transTask.setCurStationId(mesInApply.getStationID());
                    transTask.setNextStationId(WMS_TRANS_START_STATION_2);
                    transTask.setNextStationId(mesInApply.getStationID().startsWith("LL") ? WMS_TRANS_START_STATION_2 : WMS_TRANS_START_STATION_1);
                    transTask.setItemno(mesInApply.getItemno());
                    transTask.setQty(mesInApply.getQty());
                    transTask.setProductLineId(mesInApply.getProductLineId());
@@ -697,12 +701,12 @@
                    transTask.setAgvFactory(1);
                    JSONObject sendAgvTask = submitTask(transTask);
                    if (!"1".equals(sendAgvTask.getString("Success"))) {
                        log.error("出库下发agv运输任务失败:{}", JSONObject.toJSONString(transTask));
                        log.error("入库下发agv运输任务失败:{}", JSONObject.toJSONString(transTask));
                        throw new CoolException("入库下发agv运输任务失败");
                    }
                } else {
                    throw new CoolException("MES入库下发agv运输任务失败");
                }
            } catch (Exception e) {
                log.error("下发AGV运输任务失败", e);
            }
        }
        return 1;
@@ -973,7 +977,7 @@
                        transTask.setOrderNo(dbMemo.getString("OrderNo"));
                        transTask.setTransType(dbMemo.getString("TransType"));
//                    transTask.setCurProcess();
                        transTask.setCurStationId(WMS_TRANS_START_STATION_1);
                        transTask.setCurStationId(WMS_TRANS_START_STATION_3);
                        transTask.setNextProcess(dbMemo.getString("ProductLineId"));
                        transTask.setNextStationId(dbMemo.getString("StationId"));
                        transTask.setItemno(dbMemo.getString("Itemno"));
@@ -984,7 +988,7 @@
                        transTask.setAgvFactory(1);
                        JSONObject sendAgvTask = submitTask(transTask);
                        if (!"1".equals(sendAgvTask.getString("Success"))) {
                            log.error("出库下发agv运输任务失败", JSONObject.toJSONString(transTask));
                            log.error("出库下发agv运输任务失败:{}", JSONObject.toJSONString(transTask));
                        }
                    }
                } else {
@@ -1074,7 +1078,6 @@
    /**
     * 9.1下发运输任务
     * TODO:其他库的任务全部转到滑块库统一调度
     *
     * @param transTask
     * @return
@@ -1124,12 +1127,6 @@
        // 转发给海康或华晓RCS
        RcsReturn rcsReturn = rcsService.submitTask(rcsTaskSubmit, transTask.getAgvFactory());
        if (rcsReturn.getCode().equals("SUCCESS")) {
            JSONObject data = rcsReturn.getData();
            String robotTaskCode = data.getString("robotTaskCode");
            if (Cools.isEmpty(transTask.getTaskno())) {
                transTask.setTaskno(robotTaskCode);
                result.put("taskno", transTask.getTaskno());
            }
            int workNo = commonService.getWorkNo(WorkNoType.OTHER.type);
            Date now = new Date();
            Task task = new Task();
@@ -1161,7 +1158,7 @@
            taskDetl.setSpecs(mat.getSpecs());
            taskDetl.setOrderNo(transTask.getOrderNo());
            taskDetl.setZpallet(transTask.getTuoPanId());
            taskDetl.setMemo(barCodeListToStr(transTask.getItemBarcode()));
            taskDetl.setMemo(Cools.isEmpty(transTask.getItemBarcode()) ? "":barCodeListToStr(transTask.getItemBarcode()));
            taskDetl.setModiUser(defaultUserId);
            taskDetl.setModiTime(now);
            taskDetl.setAppeUser(defaultUserId);