From bcd583668d6dc95993075354a8e7b0935e92eefd Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期一, 22 三月 2021 11:07:26 +0800 Subject: [PATCH] # --- src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java | 16 +++++++++++----- 1 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java b/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java index b580661..74ca754 100644 --- a/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java +++ b/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java @@ -317,6 +317,7 @@ null, // 缁忔墜浜虹紪鍙穂绌篯 dto.getMatnr(), // 鍟嗗搧缂栧彿 dto.getCount(), // 鍟嗗搧鏁伴噺 + dto.getCount(), // 鎬绘暟閲� Cools.isEmpty(mat.getName())?0.0D:Double.parseDouble(mat.getName()), // 鍟嗗搧鍗曚环 null, // 鍟嗗搧澶囨敞[绌篯 1, // 鐘舵�� @@ -332,9 +333,10 @@ } @Override + @Transactional public R stockTransfer(String number, Long userId) { List<CustOrder> custOrders = custOrderService.selectList(new EntityWrapper<CustOrder>().eq("number", number).eq("status", 1)); - boolean error = false; + boolean asrs = false; List<StockTransferParam> params = new ArrayList<>(); for (CustOrder custOrder : custOrders) { Double count = locDetlService.selectCountByMatnr(custOrder.getUserCode()); @@ -342,17 +344,21 @@ count = 0.0D; } if (count < custOrder.getQty()) { - if (!error) { - error = true; - } + if (!asrs) { asrs = true; } StockTransferParam param = new StockTransferParam(); param.setMatnr(custOrder.getUserCode()); param.setAnfme(custOrder.getQty() - count); params.add(param); } } - if (error) { + if (asrs) { if (asrsService.stockTransfer(params)) { + for (StockTransferParam param : params) { + // 淇敼閿�鍞鍗曞緟鍑烘暟閲� + if (!custOrderService.updateQty(number, param.getMatnr(), param.getAnfme())) { + throw new CoolException("淇敼閿�鍞鍗曞緟鍑烘暟閲忓け璐�"); + } + } return R.ok("搴撳瓨璋冩嫧鎴愬姛"); } else { return R.error("绔嬪簱璋冩嫧澶辫触锛岃鑱旂郴绠$悊鍛�"); -- Gitblit v1.9.1