| | |
| | | private ManLocDetlService manLocDetlService; |
| | | @Autowired |
| | | private ManLocDetlMapper manLocDetlMapper; |
| | | @Autowired |
| | | private ReportToThirdService reportToThirdService; |
| | | |
| | | @Autowired |
| | | private InventoryCheckOrderService inventoryCheckOrderService; |
| | |
| | | List<WrkDetl> paramWrkDetls = JSON.parseArray(JSON.toJSONString(param.getWrkDetls()), WrkDetl.class); |
| | | for (WrkDetl wrkDetl : paramWrkDetls) { |
| | | String locNo = Cools.isEmpty(wrkMast.getLocNo()) ? wrkMast.getSourceLocNo() : wrkMast.getLocNo(); |
| | | List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("loc_no", locNo)); |
| | | List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>() |
| | | .eq("loc_no", locNo) |
| | | .eq("area", wrkDetl.getWrkNo()) |
| | | ); |
| | | for (InventoryCheckOrderDetl checkOrderDetl : checkOrderDetls) { |
| | | if (wrkDetl.getMatnr().equals(checkOrderDetl.getMatnr()) && Cools.eq(wrkDetl.getBatch(), checkOrderDetl.getBatch())) { |
| | | checkOrderDetl.setCheckAnfme(wrkDetl.getAnfme()); |
| | |
| | | throw new CoolException(locDetl.getLocNo() + "库位不是在库状态"); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void checkOutSubmit(Integer orderId, Long userId) { |
| | | InventoryCheckOrder inventoryCheckOrder = inventoryCheckOrderService.selectOne(new EntityWrapper<InventoryCheckOrder>() |
| | | .eq("id", orderId)); |
| | | if (inventoryCheckOrder == null) { |
| | | throw new CoolException("盘点单不存在"); |
| | | } |
| | | |
| | | if (!inventoryCheckOrder.getStatus().equals("1")) { |
| | | throw new CoolException("盘点单状态已上报"); |
| | | } |
| | | |
| | | List<InventoryCheckOrderDetl> checkOrderDetlList = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>() |
| | | .eq("order_no", inventoryCheckOrder.getOrderNo()) |
| | | ); |
| | | if (checkOrderDetlList.isEmpty()) { |
| | | throw new CoolException("盘点单无物料明细"); |
| | | } |
| | | InventoryCheckOrderDetl orderDetl = checkOrderDetlList.get(0); |
| | | |
| | | List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>() |
| | | .eq("matnr", orderDetl.getMatnr()) |
| | | .eq("batch", orderDetl.getBatch()) |
| | | ); |
| | | |
| | | boolean complete = true; |
| | | for (InventoryCheckOrderDetl checkOrderDetl : checkOrderDetls) { |
| | | if (!checkOrderDetl.getStatus().equals("2")) { |
| | | complete = false; |
| | | } |
| | | } |
| | | if (complete) { |
| | | boolean result = reportToThirdService.reportCheckOrder(orderDetl.getMatnr(), orderDetl.getBatch()); |
| | | if (!result) { |
| | | throw new CoolException("盘点单上报失败"); |
| | | } |
| | | }else { |
| | | throw new CoolException("盘点未完成无法上报"); |
| | | } |
| | | } |
| | | } |