skyouc
2025-08-09 7307bcb70ef2f9a6ab39b43dc79a081700aeb821
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java
@@ -2,6 +2,7 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zy.asrs.framework.common.R;
@@ -126,7 +127,7 @@
        //组拖通知档
        waitPakins.forEach(pakin -> {
            waitPakinService.comb(pakin);
            waitPakinService.comb(pakin, ordersParam.getInType());
        });
@@ -373,27 +374,30 @@
                }
            }
        });
        //判断是否为波次单据
        if (pickSheet.getType().equals(1)) {
            //删除波次及对应明细信息
            if (!waveService.remove(new LambdaQueryWrapper<Wave>().eq(Wave::getId, pickSheet.getWaveId()))) {
                throw new CoolException("波次列表单据删除失败!!");
            }
        //删除波次及对应明细信息
        if (!waveService.remove(new LambdaQueryWrapper<Wave>().eq(Wave::getId, pickSheet.getWaveId()))) {
            throw new CoolException("波次列表单据删除失败!!");
        }
            if (!waveDetlService.remove(new LambdaQueryWrapper<WaveDetl>().eq(WaveDetl::getWaveId, pickSheet.getWaveId()))) {
                throw new CoolException("波次明细列表删除失败!!");
            }
        if (!waveDetlService.remove(new LambdaQueryWrapper<WaveDetl>().eq(WaveDetl::getWaveId, pickSheet.getWaveId()))) {
            throw new CoolException("波次明细列表删除失败!!");
        }
        List<Order> orders = orderService.list(new LambdaQueryWrapper<Order>().eq(Order::getWaveId, pickSheet.getWaveId()));
        if (orders.isEmpty()) {
            throw new CoolException("波次订单不存在!!");
        }
        List<Long> list = orders.stream().map(Order::getId).collect(Collectors.toList());
        boolean remove = orderDetlService.remove(new LambdaQueryWrapper<OrderDetl>().in(OrderDetl::getOrderId, list));
        if (!remove) {
            throw new CoolException("原始订单明细删除失败!!");
        }
        if (!orderService.remove(new LambdaQueryWrapper<Order>().in(Order::getId, list))) {
            throw new CoolException("原始订单删除失败!!");
            List<Order> orders = orderService.list(new LambdaQueryWrapper<Order>().eq(Order::getWaveId, pickSheet.getWaveId()));
            if (orders.isEmpty()) {
                throw new CoolException("波次订单不存在!!");
            }
            List<Long> list = orders.stream().map(Order::getId).collect(Collectors.toList());
            boolean remove = orderDetlService.remove(new LambdaQueryWrapper<OrderDetl>().in(OrderDetl::getOrderId, list));
            if (!remove) {
                throw new CoolException("原始订单明细删除失败!!");
            }
            if (!orderService.remove(new LambdaQueryWrapper<Order>().in(Order::getId, list))) {
                throw new CoolException("原始订单删除失败!!");
            }
        }
        return true;
@@ -418,7 +422,8 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public boolean bindOrderBySite(Map<String, Object> param) {
        CacheSite siteNo = cacheSiteMapper.selectOne(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getSiteNo, param.get("siteNo")), false);
        CacheSite siteNo = cacheSiteMapper.selectOne(new LambdaQueryWrapper<CacheSite>()
                .eq(CacheSite::getSiteNo, param.get("siteNo")), false);
        if (Objects.isNull(siteNo)) {
            throw new CoolException("站点异常!!");
        }
@@ -426,7 +431,8 @@
            if (!StringUtil.isNullOrEmpty(siteNo.getOrderNo())) {
                throw new CoolException("当前播种站点已绑定订单!!");
            }
            Order order = orderService.getOne(new LambdaQueryWrapper<Order>().eq(Order::getOrderNo, param.get("orderNo").toString()));
            Order order = orderService.getOne(new LambdaQueryWrapper<Order>()
                    .eq(Order::getOrderNo, param.get("orderNo").toString()));
            if (Objects.isNull(order)) {
                throw new CoolException("绑定订单不存在!!");
            }
@@ -438,12 +444,12 @@
                throw new CoolException("订单播种位绑定失败!!");
            }
            if (!waveSeedMapper.update(new LambdaUpdateWrapper<WaveSeed>()
                    .eq(WaveSeed::getOrderNo, order.getOrderNo())
                    .set(WaveSeed::getSiteId, siteNo.getId())
                    .set(WaveSeed::getSiteNo, siteNo.getSiteNo()))) {
                throw new CoolException("播种站点更新失败!!");
            }
//            if (!waveSeedMapper.update(new LambdaUpdateWrapper<WaveSeed>()
//                    .eq(WaveSeed::getOrderNo, order.getOrderNo())
//                    .set(WaveSeed::getSiteId, siteNo.getId())
//                    .set(WaveSeed::getSiteNo, siteNo.getSiteNo()))) {
//                throw new CoolException("播种站点更新失败!!");
//            }
            //绑定成功,播种墙亮灯
            sowLightMange(siteNo.getSiteNo(), order, "LIGHT");
        } else {
@@ -657,7 +663,16 @@
     */
    @Override
    public R getMatsByCode(String matnr) {
        return R.ok().add(matService.list(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, matnr)));
        QueryWrapper<LocDetl> wrapper = new QueryWrapper<>();
        wrapper.eq("matnr", matnr).select("id, maktx, matnr, SUM(anfme) anfme");
        LocDetl detl = locDetlService.getOne(wrapper);
        Mat one = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, detl.getMatnr()), false);
        if (Objects.isNull(one)) {
            throw new CoolException("物料不存在!!");
        }
        one.setAnfme(detl.getAnfme());
        return R.ok().add(one);
    }
    /**