自动化立体仓库 - WMS系统
Junjie
2023-05-11 c9660ae04ddbe152883c471c190ec75298648ab4
src/main/java/com/zy/asrs/controller/OutController.java
@@ -68,9 +68,12 @@
            List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(), orderDetl.getBatch(), null, exist);
            for (LocDetl locDetl : locDetls) {
                if (issued > 0) {
//                    LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), orderDetl.getOrderNo(),
//                            issued >= locDetl.getAnfme() ? locDetl.getAnfme() : issued);
                    LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), orderDetl.getOrderNo(),
                            issued >= locDetl.getAnfme() ? locDetl.getAnfme() : issued);
                    int ioType = (issued >= locDetl.getAnfme() && locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("loc_no", locDto.getLocNo())) == 1) ? 101 : 103;
                            locDetl.getAnfme());
//                    int ioType = (issued >= locDetl.getAnfme() && locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("loc_no", locDto.getLocNo())) == 1) ? 101 : 103;
                    int ioType = 101;
                    List<Integer> staNos = staDescService.queryOutStaNosByLocNo(locDetl.getLocNo(), ioType);
                    locDto.setStaNos(staNos);
                    locDtos.add(locDto);
@@ -99,6 +102,11 @@
        }
        boolean lack = true;
        for (LocDto locDto : locDtos) {
            if (Cools.isEmpty(locDto.getStaNo()) && !locDto.isLack()) {
                return R.error(locDto.getLocNo()+"库位请选择出库站");
            }
        }
        for (LocDto locDto : locDtos) {
            if (!locDto.isLack()) {
                lack = false;
                break;
@@ -115,7 +123,7 @@
        for (LocDto locDto : locDtos) {
            if (!isJSON(locDto.getOrderNo())) {
                if (Cools.isEmpty(locDto.getOrderNo())) { continue; }
                OrderDto orderDto = new OrderDto(locDto.getOrderNo(), locDto.getMatnr(), locDto.getAnfme());
                OrderDto orderDto = new OrderDto(locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch(), locDto.getAnfme());
                if (OrderDto.has(orderDtos, orderDto)) {
                    OrderDto dto = OrderDto.find(orderDtos, orderDto);
                    assert dto != null;
@@ -127,7 +135,7 @@
                // 订单合并出库
                List<OrderDto> orderDtoList = JSON.parseArray(locDto.getOrderNo(), OrderDto.class);
                for (OrderDto one : orderDtoList) {
                    OrderDto orderDto = new OrderDto(one.getOrderNo(), locDto.getMatnr(), one.getAnfme());
                    OrderDto orderDto = new OrderDto(one.getOrderNo(), locDto.getMatnr(), locDto.getBatch(), one.getAnfme());
                    if (OrderDto.has(orderDtos, orderDto)) {
                        OrderDto dto = OrderDto.find(orderDtos, orderDto);
                        assert dto != null;
@@ -143,10 +151,10 @@
            if (order.getSettle() > 2) {
                return R.error(orderDto.getOrderNo() + "订单已失效,请及时刷新页面");
            }
            OrderDetl orderDetl = orderDetlService.selectItem(orderDto.getOrderNo(), orderDto.getMatnr(), null);
            if (orderDetl.getAnfme() - orderDetl.getQty() < orderDto.getAnfme()) {
                return R.ok(orderDto.getOrderNo() + "订单已作业,请及时刷新页面");
            }
//            OrderDetl orderDetl = orderDetlService.selectItemNoneOfBatch(orderDto.getOrderNo(), orderDto.getMatnr());
//            if (orderDetl.getAnfme() - orderDetl.getQty() < orderDto.getAnfme()) {
//                return R.ok(orderDto.getOrderNo() + "订单已作业,请及时刷新页面");
//            }
        }
        List<TaskDto> taskDtos = new ArrayList<>();