自动化立体仓库 - WMS系统
#
luxiaotao1123
2023-02-06 e77de9f405ea5cf8f50126d64a58fbf47c4a3350
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -1,6 +1,8 @@
package com.zy.asrs.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.core.common.BaseRes;
@@ -359,7 +361,7 @@
                throw new CoolException("保存工作档明细失败");
            }
            // 修改订单明细
            if (BaseController.isJSON(locDto.getOrderNo())) {
            if (!BaseController.isJSON(locDto.getOrderNo())) {
                String[] orderNos = GetOrderNo(locDto.getOrderNo());
                if (!Cools.isEmpty(orderNos)){
                    Double anfme = locDto.getAnfme();
@@ -393,6 +395,7 @@
            } else {
                // 订单合并出库
                List<OrderDto> orderDtoList = JSON.parseArray(locDto.getOrderNo(), OrderDto.class);
                for (OrderDto orderDto : orderDtoList) {
                    OrderDetl orderDetl = orderDetlService.selectItem(orderDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch());
                    if (orderDetl == null) {
@@ -707,6 +710,7 @@
            wrkMast.setWrkSts(9L);
            // 出库
        } else if (wrkMast.getWrkSts() > 10) {
            wrkMast.setSteNo(0);
            wrkMast.setWrkSts(17L);
        }
        Date now = new Date();
@@ -883,6 +887,9 @@
                locSts = "D";
                // 库位转移 ===>> D.空桶/空栈板
            } else if (wrkMast.getIoType() == 11) {
                if (wrkMast.getWrkSts() > 11){
                    throw new CoolException("移库任务已在执行中,不能取消");
                }
                locSts = wrkMast.getFullPlt().equalsIgnoreCase("N") ? "D" : "F";
                // 库位转移:目标库位
                LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
@@ -909,7 +916,7 @@
                        if (!Cools.isEmpty(orderNo)) {
                            Double anfme = Integer.parseInt(anfmes[i]) + 0.0;
                            i++;
                            if (BaseController.isJSON(wrkDetl.getOrderNo())) {
                            if (!BaseController.isJSON(wrkDetl.getOrderNo())) {
                                if (!orderDetlService.decrease(orderNo, wrkDetl.getMatnr(), wrkDetl.getBatch(), anfme)) {
                                    throw new CoolException("订单数据回滚失败");
                                }
@@ -925,7 +932,7 @@
                        }
                    }
                }else {
                    if (BaseController.isJSON(wrkDetl.getOrderNo())) {
                    if (!BaseController.isJSON(wrkDetl.getOrderNo())) {
                        if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) {
                            throw new CoolException("订单数据回滚失败");
                        }
@@ -1059,9 +1066,9 @@
        if (Cools.isEmpty(locNos)) {
            return;
        }
        if (true && !Cools.isEmpty(locNos)) {
            throw new CoolException("暂不支持移库任务");    // todo:luxiaotao 移库开关
        }
//        if (true && !Cools.isEmpty(locNos)) {
//            throw new CoolException("暂不支持移库任务");    // todo:luxiaotao 移库开关
//        }
        LocMast one = locMastService.selectById(locNos.get(0));
        List<Integer> rows = Utils.getGroupLoc(Integer.parseInt(locNos.get(0).substring(0, 2)));
        List<LocMast> locMasts = locMastService.queryFreeLocMast(rows, rows.size(), one.getLocType1());