| | |
| | | } |
| | | if (!locDetlDtos.isEmpty()) { |
| | | // 启动出库开始 101.出库 |
| | | stockOut(staNo, locDetlDtos, 101, userId); |
| | | stockOut(staNo, locDetlDtos, null, userId); |
| | | } else { |
| | | throw new CoolException("库位物料不存在"); |
| | | } |
| | |
| | | // 生成工作档 |
| | | for (OutLocDto dto : dtos) { |
| | | // 判断入出库类型:101.全板出库 or 103.拣料出库 |
| | | ioType = (dto.isAll() && (ioType==101||ioType==103))?101:103; |
| | | if (ioType == null) { |
| | | ioType = dto.isAll() ? 101 : 103; |
| | | } |
| | | // 获取库位 |
| | | LocMast locMast = locMastService.selectById(dto.getLocNo()); |
| | | // 获取路径 |
| | |
| | | throw new CoolException("当前工作状态不能拣料入库"); |
| | | } |
| | | // 保存工作明细档历史档 |
| | | if (!wrkDetlLogService.save(wrkMast.getWrkNo())) { |
| | | throw new CoolException("保存工作明细档历史档失败"); |
| | | } |
| | | // if (!wrkDetlLogService.save(wrkMast.getWrkNo())) { |
| | | // throw new CoolException("保存工作明细档历史档失败"); |
| | | // } |
| | | // 删除工作明细档 |
| | | if (!wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()))) { |
| | | throw new CoolException("删除工作明细档档历史档失败"); |
| | | } |
| | | // if (!wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()))) { |
| | | // throw new CoolException("删除工作明细档档历史档失败"); |
| | | // } |
| | | // 保存工作主档历史档 |
| | | if (!wrkMastLogService.save(wrkMast.getWrkNo())) { |
| | | throw new CoolException("保存工作主档历史档失败"); |
| | |
| | | if (!wrkMastService.updateById(wrkMast)) { |
| | | throw new CoolException("更新工作档数据状态失败"); |
| | | } |
| | | // 更新/删除拣料库存明细 |
| | | for (WrkDetl wrkDetl : wrkDetls) { |
| | | LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locNo).eq("matnr", wrkDetl.getMatnr())); |
| | | // 库存数量计算 |
| | | locDetl.setAnfme(locDetl.getAnfme() - wrkDetl.getAnfme()); |
| | | if (locDetl.getAnfme() > 0) { |
| | | locDetl.setModiTime(new Date()); |
| | | locDetl.setModiUser(userId); |
| | | if (!locDetlService.updateById(locDetl)) { |
| | | throw new CoolException("更新库存明细失败"); |
| | | } |
| | | } else { |
| | | if (!locDetlService.delete(new EntityWrapper<>(locDetl))) { |
| | | throw new CoolException("删除库存明细失败"); |
| | | } |
| | | } |
| | | } |
| | | // // 更新/删除拣料库存明细 |
| | | // for (WrkDetl wrkDetl : wrkDetls) { |
| | | // LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locNo).eq("matnr", wrkDetl.getMatnr())); |
| | | // // 库存数量计算 |
| | | // locDetl.setAnfme(locDetl.getAnfme() - wrkDetl.getAnfme()); |
| | | // if (locDetl.getAnfme() > 0) { |
| | | // locDetl.setModiTime(new Date()); |
| | | // locDetl.setModiUser(userId); |
| | | // if (!locDetlService.updateById(locDetl)) { |
| | | // throw new CoolException("更新库存明细失败"); |
| | | // } |
| | | // } else { |
| | | // if (!locDetlService.delete(new EntityWrapper<>(locDetl))) { |
| | | // throw new CoolException("删除库存明细失败"); |
| | | // } |
| | | // } |
| | | // } |
| | | // 修改库位状态 Q.拣料/盘点/并板再入库 |
| | | LocMast locMast = locMastService.selectById(wrkMast.getLocNo()); |
| | | locMast.setLocType("Q"); |