自动化立体仓库 - WMS系统
zhangchao
2024-11-15 7c1af4c63e66754f0868c1a501f4895f9cbc9213
src/main/java/com/zy/asrs/controller/OrderController.java
@@ -337,7 +337,7 @@
        List<DocType> pakins = docTypeService.selectList(new EntityWrapper<DocType>().eq("pakout", 1));
        List<Long> docIds = new ArrayList<>();
        for (DocType pakin : pakins) {
            if (pakin.getDocId() == 36) {
            if (pakin.getDocId() == 17) {
                docIds.add(pakin.getDocId());
            }
        }
@@ -419,7 +419,7 @@
            }
            DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
            if (DetlDto.has(list, dto)) {
                OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
                OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode().trim(),orderDetl.getDeadTime());
                Double anfme = item.getAnfme();
                item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
                if (!orderDetlService.updateById(item)) {
@@ -430,7 +430,7 @@
//                flowLog.setFid(String.valueOf(flowId));
//                flowLog.setOpType(2L);
//                flowLog.setOrderNo(param.getOrderNo());
//                flowLog.setThreeCode(orderDetl.getThreeCode());
//                flowLog.setThreeCode(orderDetl.getThreeCode().trim());
//                flowLog.setMatnr(orderDetl.getMatnr());
//                flowLog.setMaktx(orderDetl.getMaktx());
//                flowLog.setOrderPrevious(anfme);
@@ -446,6 +446,9 @@
//                }
            } else {
                list.add(dto);
                if (!Cools.isEmpty(orderDetl.getThreeCode())){
                    orderDetl.setThreeCode(orderDetl.getThreeCode().trim());
                }
                orderDetl.setOrderId(order.getId());
                orderDetl.setOrderNo(order.getOrderNo());
                orderDetl.setSource(param.getDocType().intValue());
@@ -463,7 +466,7 @@
//                flowLog.setFid(String.valueOf(flowId));
//                flowLog.setOpType(1L);
//                flowLog.setOrderNo(param.getOrderNo());
//                flowLog.setThreeCode(orderDetl.getThreeCode());
//                flowLog.setThreeCode(orderDetl.getThreeCode().trim());
//                flowLog.setMatnr(orderDetl.getMatnr());
//                flowLog.setMaktx(orderDetl.getMaktx());
//                flowLog.setOrderPrevious(0.0D);
@@ -523,13 +526,16 @@
            for (OrderDetl orderDetl : param.getOrderDetlList()) {
                DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
                if (DetlDto.has(dbList, dto)) {
                    OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
                    OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode().trim(),orderDetl.getDeadTime());
                    item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
                    if (!orderDetlService.updateById(item)) {
                        throw new CoolException("生成半成品调拨单明细档失败");
                    }
                } else {
                    dbList.add(dto);
                    if (!Cools.isEmpty(orderDetl.getThreeCode())){
                        orderDetl.setThreeCode(orderDetl.getThreeCode().trim());
                    }
                    orderDetl.setOrderId(order.getId());
                    orderDetl.setOrderNo(order.getOrderNo());
                    orderDetl.setSource(33);
@@ -593,13 +599,16 @@
                    if (orderDetl.getProcessSts() != 1) continue;
                    DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
                    if (DetlDto.has(dbList, dto)) {
                        OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
                        OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode().trim(),orderDetl.getDeadTime());
                        item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
                        if (!orderDetlService.updateById(item)) {
                            throw new CoolException("生成半成品调拨单明细档失败");
                        }
                    } else {
                        dbList.add(dto);
                        if (!Cools.isEmpty(orderDetl.getThreeCode())){
                            orderDetl.setThreeCode(orderDetl.getThreeCode().trim());
                        }
                        orderDetl.setOrderId(order.getId());
                        orderDetl.setOrderNo(order.getOrderNo());
                        orderDetl.setSource(35);
@@ -617,7 +626,7 @@
//                        flowLog.setFid(String.valueOf(flowId));
//                        flowLog.setOpType(1L);
//                        flowLog.setOrderNo(param.getOrderNo());
//                        flowLog.setThreeCode(orderDetl.getThreeCode());
//                        flowLog.setThreeCode(orderDetl.getThreeCode().trim());
//                        flowLog.setMatnr(orderDetl.getMatnr());
//                        flowLog.setMaktx(orderDetl.getMaktx());
//                        flowLog.setOrderPrevious(0.0D);
@@ -674,7 +683,7 @@
        for (OrderDetl orderDetl : param.getOrderDetlList()) {
            DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getAnfme(), orderDetl.getProcessSts());
            if (DetlDto.has(list, dto)) {
                OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
                OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode().trim(),orderDetl.getDeadTime());
                Double anfme = item.getAnfme();
                item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
                if (!orderDetlService.updateById(item)) {
@@ -685,7 +694,7 @@
//                flowLog.setFid(String.valueOf(flowId));
//                flowLog.setOpType(2L);
//                flowLog.setOrderNo(param.getOrderNo());
//                flowLog.setThreeCode(orderDetl.getThreeCode());
//                flowLog.setThreeCode(orderDetl.getThreeCode().trim());
//                flowLog.setMatnr(orderDetl.getMatnr());
//                flowLog.setMaktx(orderDetl.getMaktx());
//                flowLog.setOrderPrevious(anfme);
@@ -711,6 +720,9 @@
                    }
                }
                list.add(dto);
                if (!Cools.isEmpty(orderDetl.getThreeCode())){
                    orderDetl.setThreeCode(orderDetl.getThreeCode().trim());
                }
                orderDetl.setOrderId(order.getId());
                orderDetl.setOrderNo(order.getOrderNo());
                orderDetl.setSource(docType);
@@ -728,7 +740,7 @@
//                flowLog.setFid(String.valueOf(flowId));
//                flowLog.setOpType(2L);
//                flowLog.setOrderNo(param.getOrderNo());
//                flowLog.setThreeCode(orderDetl.getThreeCode());
//                flowLog.setThreeCode(orderDetl.getThreeCode().trim());
//                flowLog.setMatnr(orderDetl.getMatnr());
//                flowLog.setMaktx(orderDetl.getMaktx());
//                flowLog.setOrderPrevious(0.0D);
@@ -956,15 +968,15 @@
            Integer proSts = 0;
            Row row = sheet.getRow(i);
            //单据类型
            String docName =  dataFormatter.formatCellValue(row.getCell(0));
            String docName =  dataFormatter.formatCellValue(row.getCell(0)).trim();
            //单据编号
            String uuid = dataFormatter.formatCellValue(row.getCell(1));
            String uuid = dataFormatter.formatCellValue(row.getCell(1)).trim();
            //物料号
            String matnr = dataFormatter.formatCellValue(row.getCell(2));
            String matnr = dataFormatter.formatCellValue(row.getCell(2)).trim();
            //销售单号
            String csocode = dataFormatter.formatCellValue(row.getCell(3));
            String csocode = dataFormatter.formatCellValue(row.getCell(3)).trim();
            //自由项
            String isocode = dataFormatter.formatCellValue(row.getCell(4));
            String isocode = dataFormatter.formatCellValue(row.getCell(4)).trim();
            // 数量
            if(Cools.isEmpty(dataFormatter.formatCellValue(row.getCell(5)))){
                continue;
@@ -1133,7 +1145,7 @@
                        throw new CoolException("生成单据主档失败,请重新导入!");
                    }
                }else {
                    order2.setSettle(order.getSettle() == 1L ? 1L : 2L );
                    order2.setSettle(order2.getSettle() == 1L ? 1L : 2L );
                    orderService.updateById(order2);
                }
@@ -1211,7 +1223,7 @@
                            throw new CoolException("生成单据主档失败,请重新导入!");
                        }
                    }else {
                        order3.setSettle(order.getSettle() == 1L ? 1L : 2L );
                        order3.setSettle(order3.getSettle() == 1L ? 1L : 2L );
                        orderService.updateById(order3);
                    }