From 6f01b51fc0770fda7787076caf0314be7a7f6656 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期五, 27 六月 2025 10:58:21 +0800 Subject: [PATCH] # --- src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java | 135 +++++++++++++++++++++++++++------------------ 1 files changed, 81 insertions(+), 54 deletions(-) diff --git a/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java b/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java index 492455b..f9308c4 100644 --- a/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java +++ b/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java @@ -25,6 +25,7 @@ import java.util.ArrayList; import java.util.Date; +import java.util.HashMap; import java.util.List; @Service @@ -66,27 +67,48 @@ @Transactional public ReturnT<String> start1(List<NccSaleXsfhmxWms> wmsFlag) { try { - OpenOrderPakoutParam param = new OpenOrderPakoutParam(); - DetlDto detlDto; - List<DetlDto> orderDetails = new ArrayList<>(); - long i = 1; - for (NccSaleXsfhmxWms nccSaleXsfhmxWms : wmsFlag) { - param.setOrderType("閿�鍞彂璐�"); - detlDto = new DetlDto(); - detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm()); - detlDto.setAnfme(nccSaleXsfhmxWms.getNnum().doubleValue()); - detlDto.setStandby1(nccSaleXsfhmxWms.getFhckbm()); - detlDto.setLineNumber(i); - detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms)); - orderDetails.add(detlDto); - log.info("NccSaleXsfhmxWms鏁版嵁:{}", JSONObject.toJSON(nccSaleXsfhmxWms)); - i++; - nccSaleXsfhmxWms.setWmsFlag(1); - param.setOrderNo(nccSaleXsfhmxWms.getVbillcode()); + HashMap<String, List<NccSaleXsfhmxWms>> map = new HashMap<>(); + List<NccSaleXsfhmxWms> fenzu; + for (NccSaleXsfhmxWms wms : wmsFlag) { + if (map.get(wms.getFhckbm()) == null) { + fenzu = new ArrayList<>(); + fenzu.add(wms); + map.put(wms.getFhckbm(), fenzu); + } else { + fenzu = map.get(wms.getFhckbm()); + fenzu.add(wms); + map.put(wms.getFhckbm(), fenzu); + } } - param.setOrderDetails(orderDetails); - openService.pakoutOrderCreate(param); - nccSaleXsfhmxWmsService.updateBatchById(wmsFlag); + int size = 1; + for (String key : map.keySet()) { + OpenOrderPakoutParam param = new OpenOrderPakoutParam(); + DetlDto detlDto; + List<DetlDto> orderDetails = new ArrayList<>(); + long i = 1; + for (NccSaleXsfhmxWms nccSaleXsfhmxWms : map.get(key)) { + param.setOrderType("閿�鍞彂璐�"); + detlDto = new DetlDto(); + detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm()); + detlDto.setAnfme(nccSaleXsfhmxWms.getNnum().doubleValue()); + detlDto.setBatch(nccSaleXsfhmxWms.getVbatchcode()); + detlDto.setWeight(nccSaleXsfhmxWms.getNastnum().doubleValue()); + detlDto.setStandby1(nccSaleXsfhmxWms.getFhckbm()); + detlDto.setLineNumber(i); + detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms)); + orderDetails.add(detlDto); + log.info("NccSaleXsfhmxWms鏁版嵁:{}", JSONObject.toJSON(nccSaleXsfhmxWms)); + i++; + nccSaleXsfhmxWms.setWmsFlag(1); + param.setOrderNo(nccSaleXsfhmxWms.getVbillcode() + "-" + size); + param.setCstmrName(nccSaleXsfhmxWms.getKhmc()); + param.setKpCstmrName(nccSaleXsfhmxWms.getKpkhmc()); + } + param.setOrderDetails(orderDetails); + openService.pakoutOrderCreate(param); + nccSaleXsfhmxWmsService.updateBatchById(map.get(key)); + size++; + } } catch (Exception e) { e.printStackTrace(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); @@ -112,6 +134,7 @@ detlDto = new DetlDto(); detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm()); detlDto.setAnfme(nccSaleXsfhmxWms.getNnum().doubleValue()); + detlDto.setWeight(nccSaleXsfhmxWms.getNastnum().doubleValue()); detlDto.setStandby1(nccSaleXsfhmxWms.getFhckbm()); detlDto.setLineNumber(i); detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms)); @@ -150,6 +173,7 @@ detlDto = new DetlDto(); detlDto.setMatnr(nccScZkmxbWms.getWlbm()); detlDto.setAnfme(nccScZkmxbWms.getYingzzsl().doubleValue()); + detlDto.setWeight(nccScZkmxbWms.getYingzsl().doubleValue()); detlDto.setBatch(nccScZkmxbWms.getVbatchcode()); detlDto.setLineNumber(i); detlDto.setRemark(JSONObject.toJSONString(nccScZkmxbWms)); @@ -188,6 +212,7 @@ detlDto = new DetlDto(); detlDto.setMatnr(nccScZkmxbWms.getWlbm()); detlDto.setAnfme(nccScZkmxbWms.getYingzzsl().doubleValue()); + detlDto.setWeight(nccScZkmxbWms.getYingzsl().doubleValue()); detlDto.setBatch(nccScZkmxbWms.getVbatchcode()); detlDto.setLineNumber(i); detlDto.setRemark(JSONObject.toJSONString(nccScZkmxbWms)); @@ -225,6 +250,7 @@ detlDto = new DetlDto(); detlDto.setMatnr(nccCgCgdhdWms.getWlbm()); detlDto.setAnfme(nccCgCgdhdWms.getYdzsl().doubleValue()); + detlDto.setAnfme(nccCgCgdhdWms.getYdsl().doubleValue()); detlDto.setBatch(nccCgCgdhdWms.getVbatchcode()); detlDto.setLineNumber(i); detlDto.setRemark(JSONObject.toJSONString(nccCgCgdhdWms)); @@ -251,40 +277,40 @@ * * @return */ - @Transactional - public ReturnT<String> start4(List<NccCkPddWms> wmsFlag) { - try { - InventoryCheckOrder param = new InventoryCheckOrder(); - InventoryCheckOrderDetl checkOrderDetl = null; - for (NccCkPddWms nccScZkmxbWms : wmsFlag) { - log.info("NccCkPddWms鏁版嵁:{}", JSONObject.toJSON(nccScZkmxbWms)); - Mat mat = matService.selectByMatnr(nccScZkmxbWms.getWlbm()); - if (Cools.isEmpty(mat)) { - throw new CoolException(nccScZkmxbWms.getWlbm() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); - } - checkOrderDetl = new InventoryCheckOrderDetl(); - checkOrderDetl.setMatnr(nccScZkmxbWms.getWlbm()); - checkOrderDetl.setMaktx(mat.getMaktx()); - checkOrderDetl.setOrderNo(nccScZkmxbWms.getVbillcode()); - checkOrderDetl.setAnfme(nccScZkmxbWms.getZmzsl().doubleValue()); - checkOrderDetl.setBatch(nccScZkmxbWms.getVbatchcode()); - inventoryCheckOrderDetlService.insert(checkOrderDetl); - nccScZkmxbWms.setWmsFlag(1); - param.setOrderNo(nccScZkmxbWms.getVbillcode()); - param.setCreateBy(nccScZkmxbWms.getPdrmc()); - - } - param.setCreateTime(new Date()); - param.setStatus("1"); - inventoryCheckOrderService.insert(param); - nccCkPddWmsService.updateBatchById(wmsFlag); - } catch (Exception e) { - e.printStackTrace(); - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - return FAIL.setMsg(e.getMessage()); - } - return SUCCESS; - } +// @Transactional +// public ReturnT<String> start4(List<NccCkPddWms> wmsFlag) { +// try { +// InventoryCheckOrder param = new InventoryCheckOrder(); +// InventoryCheckOrderDetl checkOrderDetl = null; +// for (NccCkPddWms nccScZkmxbWms : wmsFlag) { +// log.info("NccCkPddWms鏁版嵁:{}", JSONObject.toJSON(nccScZkmxbWms)); +// Mat mat = matService.selectByMatnr(nccScZkmxbWms.getWlbm()); +// if (Cools.isEmpty(mat)) { +// throw new CoolException(nccScZkmxbWms.getWlbm() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); +// } +// checkOrderDetl = new InventoryCheckOrderDetl(); +// checkOrderDetl.setMatnr(nccScZkmxbWms.getWlbm()); +// checkOrderDetl.setMaktx(mat.getMaktx()); +// checkOrderDetl.setOrderNo(nccScZkmxbWms.getVbillcode()); +// checkOrderDetl.setAnfme(nccScZkmxbWms.getZmzsl().doubleValue()); +// checkOrderDetl.setBatch(nccScZkmxbWms.getVbatchcode()); +// inventoryCheckOrderDetlService.insert(checkOrderDetl); +// nccScZkmxbWms.setWmsFlag(1); +// param.setOrderNo(nccScZkmxbWms.getVbillcode()); +// param.setCreateBy(nccScZkmxbWms.getPdrmc()); +// +// } +// param.setCreateTime(new Date()); +// param.setStatus("1"); +// inventoryCheckOrderService.insert(param); +// nccCkPddWmsService.updateBatchById(wmsFlag); +// } catch (Exception e) { +// e.printStackTrace(); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); +// return FAIL.setMsg(e.getMessage()); +// } +// return SUCCESS; +// } /** @@ -305,6 +331,7 @@ detlDto = new DetlDto(); detlDto.setMatnr(nccCgCgdhdWms.getWlbm()); detlDto.setAnfme(nccCgCgdhdWms.getZsl().doubleValue()); + detlDto.setWeight(nccCgCgdhdWms.getFsl().doubleValue()); detlDto.setBatch(nccCgCgdhdWms.getVbatchcode()); detlDto.setLineNumber(i); detlDto.setRemark(JSONObject.toJSONString(nccCgCgdhdWms)); -- Gitblit v1.9.1