自动化立体仓库 - WMS系统
skyouc
4 天以前 34aa40fffdda9155e77a7991ca8c7691102bb0b8
src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
@@ -81,6 +81,8 @@
    private OrderDetlPakoutService orderDetlPakoutService;
    @Autowired
    private OrderPakoutService orderPakoutService;
    @Autowired
    private WaitPakinLogServiceImpl waitPakinLogService;
    @Transactional
@@ -291,6 +293,11 @@
                        .eq("three_code", detl.getThreeCode())
                        .eq("supp_code", detl.getSuppCode())
                        .eq("order_no", detl.getOrderNo()));
//                List<WaitPakinLog> wrkDetls = waitPakinLogService.selectList(new EntityWrapper<WaitPakinLog>()
//                        .eq("matnr", detl.getMatnr())
//                        .eq("three_code", detl.getThreeCode())
//                        .eq("supp_code", detl.getSuppCode())
//                        .eq("order_no", detl.getOrderNo()));
                if (Objects.isNull(wrkDetls) || wrkDetls.isEmpty()) {
                    ReportOrderParams itemParam = new ReportOrderParams();
                    // BS Code
@@ -301,7 +308,7 @@
                            .setPro_komcode(detl.getMatnr())
                            // 上报时,默认产品id是供应商编码
                            .setPro_id(detl.getSuppCode())
                            .setLocation_no("LX000000000")
                            .setLocation_no("QH00000000")
                            .setSj_emp("9527")
                            .setLocation_type(MatLocType.getMatTag(material.getTagId() + ""))
                            // 上报时,默认上报时间是更新时间
@@ -316,6 +323,27 @@
                } else {
                    wrkDetls.forEach(wrkDetl -> {
                        ReportOrderParams itemParam = new ReportOrderParams();
                        WaitPakin waitPakin = waitPakinService.selectOne(new EntityWrapper<WaitPakin>()
                                .eq("matnr", detl.getMatnr())
                                .eq("three_code", detl.getThreeCode())
//                                .eq("zpallet", wrkDetl.getZpallet())
                                .eq("supp_code", detl.getSuppCode())
                                .eq("order_no", detl.getOrderNo()));
                        if (Objects.isNull(waitPakin)) {
                            WaitPakinLog waitPakinLog = waitPakinLogService.selectOne(new EntityWrapper<WaitPakinLog>()
                                    .eq("matnr", detl.getMatnr())
                                    .eq("three_code", detl.getThreeCode())
//                                    .eq("zpallet", wrkDetl.getZpallet())
                                    .eq("supp_code", detl.getSuppCode())
                                    .eq("order_no", detl.getOrderNo()));
                            if (Objects.isNull(waitPakinLog)) {
                                throw new CoolException("历史组托档不存在,请联系管理员!!");
                            }
                            itemParam.setPick_qty(waitPakinLog.getAnfme().intValue());
                        } else {
                            itemParam.setPick_qty(waitPakin.getAnfme().intValue());
                        }
//                        ReportOrderParams itemParam = new ReportOrderParams();
                        // BS Code
                        itemParam.setTotal_serial(detl.getThreeCode())
                                // 上报时,默认产品类型是null
@@ -330,12 +358,12 @@
                                // 上报时,默认上报时间是更新时间
                                .setSj_date(Utils.dateToStr(order.getUpdateTime(), "yyyy-MM-dd HH:mm:ss"))
                                // 上报时,默认上报数量是订单数量
                                .setPick_qty(wrkDetl.getAnfme().intValue())
//                                .setPick_qty(detl.getQty().intValue())
//                                .setPick_qty(wrkDetl.getAnfme().intValue())
//                                .setPick_qty(waitPakinLog.getAnfme().intValue())
                                // 上报时,默认损坏数量是0
                                .setDamage_qty(0)
                                .setDamage_qty(wrkDetl.getAdjustQty().intValue())
                                // 上报时,默认差异数量是0
                                .setDiff_qty(0);
                                .setDiff_qty(wrkDetl.getSplusQty().intValue());
                        reportOrderParams.add(itemParam);
                    });
                }
@@ -396,7 +424,7 @@
            List<OrderItemsParam> reportOrderParams = new ArrayList<>();
            orderDetls.forEach(detl -> {
                Mat material = matService.selectOne(new EntityWrapper<Mat>().eq("matnr",  detl.getMatnr())
                Mat material = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", detl.getMatnr())
                        .eq("supp_code", detl.getSuppCode()));
                if (Objects.isNull(material)) {
                    throw new CoolException(material.getMatnr() + "物料不存在");
@@ -417,7 +445,7 @@
                        .eq("order_no", detl.getOrderNo()));
                if (Objects.isNull(detlLog) || detlLog.isEmpty()) {
                    OrderItemsParam itemParam = new OrderItemsParam();
                    itemParam.setLocation_no("LX99999999");
                    itemParam.setLocation_no("QH00000000");
                    itemParam
                            // 上报时,默认产品类型是null
                            .setPro_type(material.getProType())