自动化立体仓库 - WMS系统
zwl
9 天以前 b187814d7cfa5ace1ed9c203372524c69fe56553
src/main/java/com/zy/asrs/service/impl/MesServiceImpl.java
@@ -239,7 +239,6 @@
            newMemo.put("itemdata", list);
            // 生成订单
            OrderPakin orderPakin = new OrderPakin();
            orderPakin.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
@@ -260,8 +259,8 @@
                    // 生成明细
                    Mat mat = matService.selectByMatnr(mesMatInfo.getItemNo());
                    if(Cools.isEmpty(mat)){
                        log.error("该物料编号立库没有="+mesMatInfo.getItemNo());
                    if (Cools.isEmpty(mat)) {
                        log.error("该物料编号立库没有=" + mesMatInfo.getItemNo());
                        continue;
                    }
                    OrderDetlPakin orderDetlPakin = new OrderDetlPakin();
@@ -1004,9 +1003,9 @@
            }
            //有多少种不同的配盘号   只有配盘出库单需要知道
            if (mesCallOutApply.getTransType().equals("配盘出库单")){
            if (mesCallOutApply.getTransType().equals("配盘出库单")) {
                orderPakout.setPayType(set.size());
                String shipCode =mesCallOutApply.getItemdata().get(0).getTrayid().split("-")[2];
                String shipCode = mesCallOutApply.getItemdata().get(0).getTrayid().split("-")[2];
                orderPakout.setShipCode(shipCode);//区域  是否是特殊托盘
                orderPakoutService.updateById(orderPakout);
            }
@@ -1040,11 +1039,11 @@
            orderPakin.setPakinPakoutStatus(1);
            orderPakinService.insert(orderPakin);
            if (mesCallOutApply.getItemdata() != null && !mesCallOutApply.getItemdata().isEmpty()) {
                for (MesCallOutApply.MesOutApplyItem mesOutApplyItem : mesCallOutApply.getItemdata()){
                for (MesCallOutApply.MesOutApplyItem mesOutApplyItem : mesCallOutApply.getItemdata()) {
                    // 生成明细
                    Mat mat = matService.selectByMatnr(mesOutApplyItem.getItemno());
                    if(Cools.isEmpty(mat)){
                        log.error("该物料编号立库没有="+mesOutApplyItem.getItemno());
                    if (Cools.isEmpty(mat)) {
                        log.error("该物料编号立库没有=" + mesOutApplyItem.getItemno());
                        continue;
                    }
                    OrderDetlPakin orderDetlPakin = new OrderDetlPakin();
@@ -1105,73 +1104,37 @@
            return result;
        }
        // 下发给RCS
        RcsTaskSubmit rcsTaskSubmit = new RcsTaskSubmit();
        rcsTaskSubmit.setRobotTaskCode(transTask.getTaskno());
        rcsTaskSubmit.setInitPriority(10);  //默认10
        List<RcsTaskTargetRoute> targetRouteList = new ArrayList<>();
        RcsTaskTargetRoute startRoute = new RcsTaskTargetRoute();
        startRoute.setSeq(0);
        startRoute.setCode(transTask.getCurStationId());
        startRoute.setOperation("COLLECT");
        targetRouteList.add(startRoute);
        RcsTaskTargetRoute endRoute = new RcsTaskTargetRoute();
        endRoute.setSeq(1);
        endRoute.setCode(transTask.getNextStationId());
        endRoute.setOperation("DELIVERY");
        targetRouteList.add(endRoute);
        rcsTaskSubmit.setTargetRoute(targetRouteList);
        int workNo = commonService.getWorkNo(WorkNoType.OTHER.type);
        Date now = new Date();
        Task task = new Task();
        task.setWrkNo(workNo);
        task.setTaskType("ZX-AGV");
        task.setWrkSts(301L);//301.AGV任务创建
        task.setIoType(3);//3.站到站
        task.setIoPri(10.00);
        task.setWrkDate(now);
        task.setBarcode(transTask.getBarcode());
        task.setSourceStaNo(transTask.getCurStationId());
        task.setStaNo(transTask.getNextStationId());
        task.setBarcode(transTask.getTuoPanId());
        task.setModiUser(defaultUserId);
        task.setModiTime(now);
        task.setAppeUser(defaultUserId);
        task.setAppeTime(now);
        task.setTaskNo(transTask.getTaskno());
        task.setMemo(JSONObject.toJSONString(transTask));
        task.setPltType(transTask.getAgvFactory());//华晓AGV
        task.setPacked(transTask.getRackNumber());//料架号
        task.setCtnType(1);
        // 转发给海康或华晓RCS
        int success = rcsService.submitTask(rcsTaskSubmit, transTask.getAgvFactory());
        if (success == 1) {
            int workNo = commonService.getWorkNo(WorkNoType.OTHER.type);
            Date now = new Date();
            Task task = new Task();
            task.setWrkNo(workNo);
            task.setTaskType("ZX-AGV");
            task.setWrkSts(302L);//302.AGV任务执行中
            task.setIoType(3);//3.站到站
            task.setIoPri(10.00);
            task.setWrkDate(now);
            task.setBarcode(transTask.getBarcode());
            task.setSourceStaNo(transTask.getCurStationId());
            task.setStaNo(transTask.getNextStationId());
            task.setBarcode(transTask.getTuoPanId());
            task.setModiUser(defaultUserId);
            task.setModiTime(now);
            task.setAppeUser(defaultUserId);
            task.setAppeTime(now);
            task.setTaskNo(transTask.getTaskno());
            task.setMemo(JSONObject.toJSONString(transTask));
            task.setPltType(transTask.getAgvFactory());//华晓AGV
            task.setPacked(transTask.getRackNumber());//料架号
        if (taskService.insert(task)) {
                result.put("Success", "1");
                result.put("Message", "任务接收成功");
            taskService.insert(task);
//            Mat mat = matService.selectByMatnr(transTask.getItemno());
//            TaskDetl taskDetl = new TaskDetl();
//            taskDetl.setWrkNo(task.getWrkNo());
//            taskDetl.setIoTime(task.getIoTime());
//            taskDetl.setMatnr(transTask.getItemno());
//            taskDetl.setAnfme(0.0);
//            taskDetl.setStandby1(String.valueOf(transTask.getQty()));
//            taskDetl.setMaktx(mat.getMaktx());
//            taskDetl.setSpecs(mat.getSpecs());
//            taskDetl.setOrderNo(transTask.getOrderNo());
//            taskDetl.setZpallet(transTask.getTuoPanId());
//            taskDetl.setMemo(JSONObject.toJSONString(transTask.getItemBarcode()));
//            taskDetl.setModiUser(defaultUserId);
//            taskDetl.setModiTime(now);
//            taskDetl.setAppeUser(defaultUserId);
//            taskDetl.setAppeTime(now);
//            taskDetlService.insert(taskDetl);
            result.put("Success", "1");
            result.put("Message", "任务接收成功");
        } else {
        }else {
            result.put("Success", "2");
            result.put("Message", "任务下发给RCS失败");
        }
        return result;
    }