From c8f89c1e9353d6e530b8b7fe93c15686251b7d65 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期三, 31 三月 2021 08:26:15 +0800 Subject: [PATCH] # --- src/main/java/zy/cloud/wms/common/service/MainService.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 53 insertions(+), 4 deletions(-) diff --git a/src/main/java/zy/cloud/wms/common/service/MainService.java b/src/main/java/zy/cloud/wms/common/service/MainService.java index d1ef20f..a2007e9 100644 --- a/src/main/java/zy/cloud/wms/common/service/MainService.java +++ b/src/main/java/zy/cloud/wms/common/service/MainService.java @@ -11,9 +11,11 @@ import zy.cloud.wms.common.model.OrderStoDto; import zy.cloud.wms.common.service.asrs.AsrsService; import zy.cloud.wms.common.service.asrs.entity.Result; +import zy.cloud.wms.common.service.asrs.entity.Result1; import zy.cloud.wms.common.utils.VersionUtils; import zy.cloud.wms.manager.entity.*; import zy.cloud.wms.manager.entity.param.StockTransferParam; +import zy.cloud.wms.manager.entity.result.PakoutVo; import zy.cloud.wms.manager.service.CustOrderService; import zy.cloud.wms.manager.service.LocDetlService; import zy.cloud.wms.manager.service.MatService; @@ -53,7 +55,7 @@ // 鏌ョ湅绔嬪簱搴撳瓨 Result result = asrsService.stockTransferPrew(transferParams); if (result.getCode() == 500) { - throw new CodeCoolException("20001-" + String.valueOf(result.getData())); + throw new CodeCoolException("20001-" + String.valueOf(result.getMsg())); } if (result.getCode() == 200) { res = (List<StoPreTab>) result.getData(); @@ -109,9 +111,50 @@ if (Cools.isEmpty(dto) || Cools.isEmpty(dto.getCustOrders())) { return; } - // 妫�鏌ュ簱瀛樻槸鍚﹁冻澶� - locDetlService.checkLocDetlCount(dto.getNumber()); Date now = new Date(); + + /******************************* 绔嬪簱鎷h揣鍗� ********************************/ + // 妫�鏌ュ簱瀛樻槸鍚﹁冻澶� + List<StockTransferParam> transferParams = locDetlService.checkLocDetlCountOfRes(dto.getNumber()); + if (!Cools.isEmpty(transferParams)) { + // 鏌ョ湅绔嬪簱搴撳瓨 + Result1 result = asrsService.stockTransfer(transferParams); + if (result.getCode() == 500) { + if (Cools.isEmpty(result.getData())) { + throw new CoolException(result.getMsg()); + } else { + throw new CodeCoolException("20001-" + result.getData()); + } + } + if (result.getCode() == 200) { + for (PakoutVo vo : result.getData()) { + // 鍒ゆ柇鐗╂枡鏄惁瀛樺湪 + Mat mat = matService.selectByMatnr(vo.getMatnr()); + if (null == mat) { + throw new CoolException(vo.getMatnr() + "鐗╂枡灏氭湭鏇存柊銆�" + dto.getNumber() +"鍗曟嵁鍥犳涓柇锛�"); + } + Pakout pakout = new Pakout(); + pakout.setWrkSts(1L); + pakout.setAnfme(vo.getAnfme()); + pakout.setZpallet(vo.getZpallet()); + pakout.setLocNo(vo.getLocNo()); + pakout.setNodeId(-1L); + pakout.setWrkNo(String.valueOf(snowflakeIdWorker.nextId())); + VersionUtils.setPakout(pakout, mat); + pakout.setDocId(getDocId(dto.getNumber())); // 鍗曟嵁绫诲瀷 + pakout.setDocNum(dto.getNumber()); // 鍗曟嵁缂栧彿 + pakout.setCreateTime(now); + pakout.setUpdateTime(now); + pakout.setStatus(1); + if (!pakoutService.insert(pakout)) { + throw new CoolException("淇濆瓨鍑哄簱閫氱煡鍗曞け璐�"); + } + } + + } + } + + /******************************* 骞充粨鎷h揣鍗� ********************************/ for (CustOrder custOrder : dto.getCustOrders()) { // 鍒ゆ柇鐗╂枡鏄惁瀛樺湪 Mat mat = matService.selectByMatnr(custOrder.getUserCode()); @@ -132,7 +175,7 @@ pakout.setNodeId(locDetl.getNodeId()); pakout.setWrkNo(String.valueOf(snowflakeIdWorker.nextId())); VersionUtils.setPakout(pakout, mat); -// pakout.setDocId(custOrder.getBTypeId()); + pakout.setDocId(getDocId(dto.getNumber())); // 鍗曟嵁绫诲瀷 pakout.setDocNum(custOrder.getNumber()); // 鍗曟嵁缂栧彿 pakout.setCreateTime(now); pakout.setUpdateTime(now); @@ -162,5 +205,11 @@ } } + private Long getDocId(String number) { + if (number.startsWith("PR")) { + return 6L; + } + return 11L; + } } -- Gitblit v1.9.1