| | |
| | | } |
| | | // 生成入库通知档 |
| | | List<DetlDto> detlDtos = new ArrayList<>(); |
| | | param.getCombMats().forEach(elem -> { |
| | | |
| | | for (CombParam.CombMat elem : param.getCombMats()) { |
| | | |
| | | |
| | | // param.getCombMats().forEach(elem -> { |
| | | |
| | | // 订单明细数量校验 |
| | | OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch()); |
| | | if (Cools.isEmpty(orderDetl)) { |
| | | throw new CoolException("该单据中未找到对应物料明细"); |
| | | } |
| | | if (elem.getAnfme() > orderDetl.getEnableQty()) { |
| | | throw new CoolException(orderDetl.getMatnr() + "入库数量不合法"); |
| | | } |
| | |
| | | throw new CoolException("修改单据作业数量失败"); |
| | | } |
| | | |
| | | DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme()); |
| | | DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme(),orderDetl.getManu()); |
| | | if (DetlDto.has(detlDtos, detlDto)) { |
| | | DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch()); |
| | | assert one != null; |
| | |
| | | } else { |
| | | detlDtos.add(detlDto); |
| | | } |
| | | }); |
| | | // }); |
| | | } |
| | | for (DetlDto detlDto : detlDtos) { |
| | | Mat mat = matService.selectByMatnr(detlDto.getMatnr()); |
| | | if (Cools.isEmpty(mat)) { |
| | |
| | | waitPakin.setAppeTime(now); |
| | | waitPakin.setModiUser(userId); |
| | | waitPakin.setModiTime(now); |
| | | waitPakin.setManu(detlDto.getMark()); |
| | | if (!waitPakinService.insert(waitPakin)) { |
| | | throw new CoolException("保存入库通知档失败"); |
| | | } |
| | |
| | | @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("未查询到拣料任务明细"); |