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/asrs/service/impl/ReportToThirdServiceImpl.java | 166 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 144 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java index 101437c..178a672 100644 --- a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java @@ -6,16 +6,11 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; import com.core.exception.CoolException; -import com.zy.asrs.entity.DocType; -import com.zy.asrs.entity.Order; -import com.zy.asrs.entity.OrderDetl; -import com.zy.asrs.entity.StoreType; -import com.zy.asrs.service.ApiLogService; -import com.zy.asrs.service.OrderService; -import com.zy.asrs.service.ReportToThirdService; -import com.zy.asrs.service.StoreTypeService; +import com.zy.asrs.entity.*; +import com.zy.asrs.service.*; import com.zy.nc.SendUtil; import com.zy.nc.entity.*; +import com.zy.nc.service.NccSaleXsfhmxWmsService; import com.zy.nc.service.NccScPcdaWmsService; import com.zy.nc.util.NcResultMessage; import com.zy.nc.vo.*; @@ -35,15 +30,23 @@ @Autowired private ApiLogService apiLogService; - @Autowired private OrderService orderService; + @Autowired + private WrkDetlService wrkDetlService; + @Autowired + private InventoryCheckOrderService inventoryCheckOrderService; + @Autowired + private InventoryCheckOrderDetlService inventoryCheckOrderDetlService; @Autowired private StoreTypeService storeTypeService; @Autowired private NccScPcdaWmsService nccScPcdaWmsService; + + @Autowired + private NccSaleXsfhmxWmsService nccSaleXsfhmxWmsService; @Value("${NYNC.ip}") private String nyncIp; @@ -56,6 +59,9 @@ @Value("${NYNC.saveRefWhsTrans}") private String saveRefWhsTrans; + + @Value("${NYNC.invcountAdd}") + private String invcountAdd; @Value("${NYNC.purchasein}") private String purchasein; @@ -114,17 +120,19 @@ } break; case "閲囪喘鍒拌揣": - process1 = processCGDH(orderDetls); - List<Object> cg = new ArrayList<>(); - cg.add(process1); - //鍙戦�佽姹� - response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, purchasein, JSONObject.toJSONString(cg)); - if (!Cools.isEmpty(response) && response.isSuccess()) { - log.info("閲囪喘鍒拌揣response:{}", response); - step = 10; - } else { - remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100); - } + //涓嶉渶瑕佷笂鎶ヤ簡 + step = 10; +// process1 = processCGDH(orderDetls); +// List<Object> cg = new ArrayList<>(); +// cg.add(process1); +// //鍙戦�佽姹� +// response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, purchasein, JSONObject.toJSONString(cg)); +// if (!Cools.isEmpty(response) && response.isSuccess()) { +// log.info("閲囪喘鍒拌揣response:{}", response); +// step = 10; +// } else { +// remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100); +// } break; case "杞簱-鍑哄簱": if (step == 1) { @@ -198,6 +206,35 @@ } + @Override + public boolean reportTkrk(String matnr, String batch, String orderNo, Double anfme) { + Object process1 = processTKRK(matnr, batch, orderNo, anfme); + //鍙戦�佽姹� + NcResultMessage response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process1)); + log.info("閫�搴撳叆搴搑esponse:{}", response); + if (!Cools.isEmpty(response) && response.isSuccess()) { + log.info("閫�搴撳叆搴搑esponse:{}", response); + return true; + } else { +// remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100); + return false; + } + } + + @Override + public boolean reportCheckOrder(InventoryCheckOrder checkOrder) { + Object process1 = processInvcount(checkOrder); + //鍙戦�佽姹� + NcResultMessage response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, invcountAdd, JSONObject.toJSONString(process1)); + log.info("鐩樼偣鍗時esponse:{}", response); + if (!Cools.isEmpty(response) && response.isSuccess()) { + log.info("鐩樼偣鍗時esponse:{}", response); + return true; + } else { +// remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100); + return false; + } + } private Object processXSFH(List<OrderDetl> orderDetls, Boolean flag) { //缁勮瀵硅薄鏁版嵁 @@ -236,6 +273,90 @@ data.put("SaleOutHeadVO", saleOutHeadVO); data.put("SaleOutBodyVO", saleOutBodyVOList); return data; + } + + private Object processTKRK(String matnr,String batch, String orderNo, Double anfme) { +// EntityWrapper<NccXsckmxTkWms> wrapper = new EntityWrapper<>(); +// wrapper.eq("VBATCHCODE", batch).eq("VSOURCEBILLCODE", orderNo); +// NccXsckmxTkWms nccXsckmxTkWms = nccXsckmxTkWmsService.selectOne(wrapper); +// if (null == nccXsckmxTkWms) { +// throw new CoolException("鏈壘鍒版鏉$爜"); +// } + + NccSaleXsfhmxWms nccSaleXsfhmxWms = nccSaleXsfhmxWmsService.selectOne(new EntityWrapper<NccSaleXsfhmxWms>() + .eq("VBILLCODE", orderNo) + .eq("WLBM", matnr) + ); + if(null == nccSaleXsfhmxWms) { + throw new CoolException("鏈壘鍒伴攢鍞崟鎹�"); + } + + //缁勮瀵硅薄鏁版嵁 + Map<String, Object> data = new HashMap<String, Object>(); + SaleOutHeadVO saleOutHeadVO = new SaleOutHeadVO(); + saleOutHeadVO.setPk_org("FYT"); + SaleOutBodyVO saleOutBodyVO = null; + List<SaleOutBodyVO> saleOutBodyVOList = new ArrayList<>(); + + saleOutBodyVO = new SaleOutBodyVO(); + saleOutBodyVO.setCsourcetype("4331"); + saleOutBodyVO.setCsourcebillbid(nccSaleXsfhmxWms.getCdeliverybid()); + saleOutBodyVO.setCsourcebillhid(nccSaleXsfhmxWms.getCdeliveryid()); + saleOutHeadVO.setCwarehouseid(nccSaleXsfhmxWms.getFhckbm()); + + saleOutBodyVO.setVbatchcode(batch); + saleOutBodyVO.setNnum(anfme * -1); + saleOutBodyVOList.add(saleOutBodyVO); + + data.put("SaleOutHeadVO", saleOutHeadVO); + data.put("SaleOutBodyVO", saleOutBodyVOList); + return data; + } + + private Object processInvcount(InventoryCheckOrder checkOrder) { + List<InventoryCheckOrderDetl> inventoryCheckOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>() + .eq("order_no", checkOrder.getOrderNo())); + if (inventoryCheckOrderDetls.isEmpty()) { + throw new CoolException("鐩樼偣鏄庣粏涓嶅瓨鍦�"); + } + + //缁勮瀵硅薄鏁版嵁 + Map<String, Object> data = new HashMap<String, Object>(); + + //浠撳簱id + String cwarehouseid = null; + List<InvCountBodyVO> invCountBodyVOList = new ArrayList<>(); + for (InventoryCheckOrderDetl inventoryCheckOrderDetl : inventoryCheckOrderDetls) { + List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>() + .eq("matnr", inventoryCheckOrderDetl.getMatnr()) + .eq("batch", inventoryCheckOrderDetl.getBatch()) + ); + if (wrkDetls.isEmpty()) { + throw new CoolException("宸ヤ綔妗f槑缁嗕笉瀛樺湪"); + } + + cwarehouseid = wrkDetls.get(0).getStandby1(); + + InvCountBodyVO invCountBodyVO = new InvCountBodyVO(); + invCountBodyVO.setCmaterialoid(inventoryCheckOrderDetl.getMatnr()); + invCountBodyVO.setVbatchcode(inventoryCheckOrderDetl.getBatch()); + invCountBodyVO.setNcountastnum(inventoryCheckOrderDetl.getCheckAnfme()); + invCountBodyVOList.add(invCountBodyVO); + } + + InvCountHeaderVO invCountHeaderVO = new InvCountHeaderVO(); + invCountHeaderVO.setPk_org("FYT"); + invCountHeaderVO.setCtrantypeid("4R-01"); + invCountHeaderVO.setCwarehouseid(cwarehouseid); + + data.put("InvCountHeaderVO", invCountHeaderVO); + data.put("InvCountBodyVO", invCountBodyVOList); + data.put("paper", "2"); + data.put("splr", "1"); + + ArrayList<Map<String, Object>> list = new ArrayList<>(); + list.add(data); + return list; } private Object processZKRK(List<OrderDetl> orderDetls) { @@ -345,7 +466,7 @@ } whsTransBillBodyVO = new WhsTransBillBodyVO(); - whsTransBillBodyVO.setCstateid(nccScPcdaWms.getVcode()); + whsTransBillBodyVO.setCstateid(nccScPcdaWms.getPkBatchcode()); String remark = orderDetl.getRemark(); //if (!Cools.isEmpty(remark)) { @@ -403,7 +524,8 @@ generalout_b.setCotherwhid(rukucangku); generalout_b.setCothercalbodyvid(storeType2.getDepartmentId()); - generalout_b.setNshouldassistnum(orderDetl.getQty()); + //generalout_b.setNshouldassistnum(orderDetl.getQty()); + generalout_b.setNnum(orderDetl.getQty()); generalout_b.setVbatchcode(orderDetl.getBatch()); ic_purchasein_bs.add(generalout_b); } -- Gitblit v1.9.1