自动化立体仓库 - WMS系统
#
zjj
2024-10-20 d1b031c864041c0c75e433bcd839aa9493f506bb
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -568,38 +568,44 @@
    @Override
//    @Transactional
    public void leftoversOut(Map<String, Object> map,Long userId) {
        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", map.get("barcode")).eq("io_type", 103));
        String barcode = map.get("barcode").toString();
        String barcode2 = map.get("barcode2").toString();
        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", barcode).eq("io_type", 103));
        if (Cools.isEmpty(wrkMast)) {
            throw new CoolException("未查询到拣料任务");
        }
        Date now = new Date();
        int workNo = commonService.getWorkNo(1);
        WrkMast wrkMast1 = new WrkMast();
        wrkMast1.sync(wrkMast);
        wrkMast1.setWrkNo(workNo);
        wrkMast1.setWrkSts(2L);
        wrkMast1.setIoType(200);
        wrkMast1.setSourceStaNo(wrkMast.getStaNo() == 113 ? 111 : 117);
        wrkMast1.setStaNo(map.get("floor").hashCode() == 2 ? 204:304);
        wrkMast1.setIoTime(now);
        wrkMast1.setIoPri(13D); // 优先级:13
        wrkMast1.setCrnNo(wrkMast.getCrnNo());
        wrkMast1.setSourceLocNo(wrkMast.getLocNo()); // 源库位
        wrkMast1.setFullPlt("Y"); // 满板:Y
        wrkMast1.setPicking("N"); // 拣料
        wrkMast1.setExitMk("N"); // 退出
        wrkMast1.setEmptyMk("N"); // 空板
        wrkMast1.setLinkMis("N");
        wrkMast1.setAppeUser(userId); // 操作人员数据
        wrkMast1.setAppeTime(now);
        wrkMast1.setModiUser(userId);
        wrkMast1.setModiTime(now);
        wrkMast1.setBarcode(wrkMast.getBarcode());
        if (!wrkMastService.insert(wrkMast1)) {
            throw new CoolException("保存工作档失败");
        WrkMast wrkMast2 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", barcode2).eq("io_type", 200));
        if (Cools.isEmpty(wrkMast2)) {
            Date now = new Date();
            WrkMast wrkMast1 = new WrkMast();
            wrkMast1.sync(wrkMast);
            wrkMast1.setWrkNo(workNo);
            wrkMast1.setWrkSts(2L);
            wrkMast1.setIoType(200);
            wrkMast1.setSourceStaNo(wrkMast.getStaNo() == 113 ? 111 : 117);
            wrkMast1.setStaNo(wrkMast.getStaNo() == 113 ? 204 : 304);
            wrkMast1.setIoTime(now);
            wrkMast1.setIoPri(13D); // 优先级:13
            wrkMast1.setCrnNo(wrkMast.getCrnNo());
            wrkMast1.setSourceLocNo(wrkMast.getLocNo()); // 源库位
            wrkMast1.setFullPlt("Y"); // 满板:Y
            wrkMast1.setPicking("N"); // 拣料
            wrkMast1.setExitMk("N"); // 退出
            wrkMast1.setEmptyMk("N"); // 空板
            wrkMast1.setLinkMis("N");
            wrkMast1.setAppeUser(userId); // 操作人员数据
            wrkMast1.setAppeTime(now);
            wrkMast1.setModiUser(userId);
            wrkMast1.setModiTime(now);
            wrkMast1.setBarcode(barcode2);
            if (!wrkMastService.insert(wrkMast1)) {
                throw new CoolException("保存工作档失败");
            }
        }
        List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("zpallet", map.get("barcode")));
        if (Cools.isEmpty(wrkDetls)) {
            throw new CoolException("未查询到拣料任务明细");