自动化立体仓库 - WMS系统
zhangc
2025-02-27 d0d64cf47ce37027307ceb64dc72e3ae36796a92
src/main/java/com/zy/asrs/controller/OrderDetlController.java
@@ -197,12 +197,20 @@
        EntityWrapper<OrderDetl> wrapper = new EntityWrapper<>();
        excludeTrash(param);
        Object o = param.get("orderType");
        boolean flag = false;
        if (o != null) {
            String[] split = o.toString().split(",");
            //-1说明是半成品箱壳出库单
            if (split[0].equals("-1")) {
                wrapper.like("order_no", "EB", SqlLike.RIGHT);
                wrapper.in("source", split);
                List<DocType> pakins = docTypeService.selectList(new EntityWrapper<DocType>().eq("pakout", 1));
                List<Long> docIds = new ArrayList<>();
                for (DocType pakin : pakins) {
                    if (pakin.getDocId() != 33) {
                        docIds.add(pakin.getDocId());
                    }
                }
                wrapper.andNew().like("matnr", "401", SqlLike.RIGHT).or().like("matnr", "402", SqlLike.RIGHT).andNew().in("source", docIds);
                flag = true;
            } else {
                wrapper.in("source", split);
            }
@@ -224,7 +232,12 @@
//        wrapper.in("source", docIds);
        Page<OrderDetl> page = orderDetlService.selectPage(new Page<>(curr, limit), wrapper);
        for (OrderDetl record : page.getRecords()) {
            Double sumAnfme = agvLocDetlService.getSumAnfme(record.getMatnr(), record.getThreeCode());
            Double sumAnfme;
            if (flag) {
                sumAnfme = agvLocDetlService.getSumAnfme2(record.getMatnr(), record.getThreeCode());
            } else {
                sumAnfme = agvLocDetlService.getSumAnfme(record.getMatnr(), record.getThreeCode());
            }
            record.setStock(sumAnfme == null ? 0 : sumAnfme);
        }
        return R.ok(page);