From 080fdceed464c56f43633e85daeaf929d40496af Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期三, 18 十月 2023 13:16:07 +0800 Subject: [PATCH] 连接ERP 获取ERP库存信息 --- src/main/java/com/zy/asrs/controller/OutController.java | 86 ++++++++++++++++++++++++++++++++++--------- 1 files changed, 68 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OutController.java b/src/main/java/com/zy/asrs/controller/OutController.java index 41f3c3e..3c368d0 100644 --- a/src/main/java/com/zy/asrs/controller/OutController.java +++ b/src/main/java/com/zy/asrs/controller/OutController.java @@ -53,6 +53,8 @@ private ManLocDetlService manLocDetlService; @Autowired private ManPakOutService manPakOutService; + @Autowired + private DocTypeService docTypeService; @Autowired private AgvLocDetlService agvLocDetlService; @@ -69,28 +71,75 @@ @ManagerAuth public R pakoutPreview(@RequestBody List<Long> ids) { +// Order order = orderService.selectById(ids.get(0)); +// +// DocType docType = docTypeService.selectById(order.getDocType()); +// +// if("浜哄伐琛ヨ揣鍗�".equals(docType.getDocName())){ +// List<OrderDetl> orderDetlList = orderDetlService.selectBatchIds(ids); +// //杩斿洖缁欏墠绔殑搴撲綅浠ュ強绔欑偣淇℃伅 +// List<LocDto> locDtoList = new ArrayList<>(); +// +// for (OrderDetl orderDetl : orderDetlList) { +// +// double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getQty()).orElse(0.0D); +// if (issued <= 0.0D) { continue; } +// +// //浠庡钩搴撳鎵� +// //issued = manLocDetlService.queryStockAndSetLocDto(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),locDtoList,issued,orderDetl.getThreeCode(),orderDetl.getDeadTime()); +// +// //鍏堟壘AGV鐨勫簱瀛橈紝濡傛灉杩斿洖鐨刬ssued澶т簬0锛屽垯鍘诲洓椤瑰簱鎵� +// //issued = agvLocDetlService.queryStockAndSetLocDto(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),locDtoList,issued,orderDetl.getThreeCode(),orderDetl.getDeadTime()); +// +// //浠庡洓椤瑰簱鐨勫簱瀛橀噷闈㈡壘锛� +// issued = locDetlService.queryStockAndSetLocDto1(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),locDtoList,issued,orderDetl.getThreeCode(),orderDetl.getDeadTime()); +// +// if (issued > 0) { +// LocDto locDto = new LocDto(null, orderDetl.getMatnr(), orderDetl.getMaktx(), orderDetl.getBatch(), orderDetl.getOrderNo(), issued); +// locDto.setLack(Boolean.TRUE); +// locDtoList.add(locDto); +// } +// } +// return R.ok().add(locDtoList); +// } + List<OrderDetl> orderDetlList = orderDetlService.selectBatchIds(ids); //杩斿洖缁欏墠绔殑搴撲綅浠ュ強绔欑偣淇℃伅 List<LocDto> locDtoList = new ArrayList<>(); for (OrderDetl orderDetl : orderDetlList) { double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getQty()).orElse(0.0D); - if (issued <= 0.0D) { continue; } + Order order = orderService.selectByNo(orderDetl.getOrderNo()); + DocType docType = docTypeService.selectById(order.getDocType()); + if("浜哄伐琛ヨ揣鍗�".equals(docType.getDocName())){ + if (issued <= 0.0D) { continue; } + issued = locDetlService.queryStockAndSetLocDto1(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),locDtoList,issued,orderDetl.getThreeCode(),orderDetl.getDeadTime()); + if (issued > 0) { + LocDto locDto = new LocDto(null, orderDetl.getMatnr(), orderDetl.getMaktx(), orderDetl.getBatch(), orderDetl.getOrderNo(), issued); + locDto.setLack(Boolean.TRUE); + locDtoList.add(locDto); + } + }else { + //double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getQty()).orElse(0.0D); + if (issued <= 0.0D) { continue; } - //浠庡钩搴撳鎵� - issued = manLocDetlService.queryStockAndSetLocDto(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),locDtoList,issued,orderDetl.getThreeCode(),orderDetl.getDeadTime()); + //浠庡钩搴撳鎵� + issued = manLocDetlService.queryStockAndSetLocDto(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),locDtoList,issued,orderDetl.getThreeCode(),orderDetl.getDeadTime()); - //鍏堟壘AGV鐨勫簱瀛橈紝濡傛灉杩斿洖鐨刬ssued澶т簬0锛屽垯鍘诲洓椤瑰簱鎵� - issued = agvLocDetlService.queryStockAndSetLocDto(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),locDtoList,issued,orderDetl.getThreeCode(),orderDetl.getDeadTime()); + //鍏堟壘AGV鐨勫簱瀛橈紝濡傛灉杩斿洖鐨刬ssued澶т簬0锛屽垯鍘诲洓椤瑰簱鎵� + issued = agvLocDetlService.queryStockAndSetLocDto(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),locDtoList,issued,orderDetl.getThreeCode(),orderDetl.getDeadTime()); - //浠庡洓椤瑰簱鐨勫簱瀛橀噷闈㈡壘锛� - issued = locDetlService.queryStockAndSetLocDto(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),locDtoList,issued,orderDetl.getThreeCode(),orderDetl.getDeadTime()); + //浠庡洓椤瑰簱鐨勫簱瀛橀噷闈㈡壘锛� + issued = locDetlService.queryStockAndSetLocDto(orderDetl.getMatnr(),orderDetl.getBatch(),orderDetl.getOrderNo(),locDtoList,issued,orderDetl.getThreeCode(),orderDetl.getDeadTime()); - if (issued > 0) { - LocDto locDto = new LocDto(null, orderDetl.getMatnr(), orderDetl.getMaktx(), orderDetl.getBatch(), orderDetl.getOrderNo(), issued); - locDto.setLack(Boolean.TRUE); - locDtoList.add(locDto); + if (issued > 0) { + LocDto locDto = new LocDto(null, orderDetl.getMatnr(), orderDetl.getMaktx(), orderDetl.getBatch(), orderDetl.getOrderNo(), issued); + locDto.setLack(Boolean.TRUE); + locDtoList.add(locDto); + } } + + } return R.ok().add(locDtoList); @@ -434,13 +483,14 @@ }else{ manPakOut.setUuid(manPakOutExist.getUuid()); } - try{ - if (!manPakOutService.insert(manPakOut)){ - return R.error("娣诲姞鎷h揣鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); - } - }catch (Exception e){ - return R.error("娣诲姞鎷h揣鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); - } + manPakOutService.insert(manPakOut); +// try{ +// if (!manPakOutService.insert(manPakOut)){ +// return R.error("娣诲姞鎷h揣鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); +// } +// }catch (Exception e){ +// return R.error("娣诲姞鎷h揣鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); +// } return R.ok(); } -- Gitblit v1.9.1