From b67bafd95dc17136ac0eab068ba51cd55e1669f3 Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期五, 13 六月 2025 20:08:12 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java | 154 +++++++++++++++++++++++++++------------------------ 1 files changed, 82 insertions(+), 72 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 5115f87..221dee2 100644 --- a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java @@ -3,19 +3,20 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +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.nc.SendUtil; -import com.zy.nc.entity.NccCgCgdhdWms; -import com.zy.nc.entity.NccSaleDbddWms; -import com.zy.nc.entity.NccSaleXsfhmxWms; -import com.zy.nc.entity.NccScZkmxbWms; +import com.zy.nc.entity.*; +import com.zy.nc.service.NccScPcdaWmsService; import com.zy.nc.util.NcResultMessage; import com.zy.nc.vo.*; import lombok.extern.slf4j.Slf4j; @@ -37,6 +38,12 @@ @Autowired private OrderService orderService; + + @Autowired + private StoreTypeService storeTypeService; + + @Autowired + private NccScPcdaWmsService nccScPcdaWmsService; @Value("${NYNC.ip}") private String nyncIp; @@ -107,21 +114,23 @@ } 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) { - process2 = processGENERALOUT2(orderDetls, memo); + process2 = processGENERALOUT2(orderDetls, order.getOperMemb(), order.getItemId(), memo); List<Object> zkck2 = new ArrayList<>(); zkck2.add(process2); //鍙戦�佽姹� @@ -143,7 +152,7 @@ log.info("杞簱-鍑哄簱1response:{}", response); memo = response.getData().toString(); - process2 = processGENERALOUT2(orderDetls, memo); + process2 = processGENERALOUT2(orderDetls, order.getOperMemb(), order.getItemId(), memo); List<Object> zkck2 = new ArrayList<>(); zkck2.add(process2); //鍙戦�佽姹� @@ -197,16 +206,18 @@ Map<String, Object> data = new HashMap<String, Object>(); SaleOutHeadVO saleOutHeadVO = new SaleOutHeadVO(); saleOutHeadVO.setPk_org("FYT"); - saleOutHeadVO.setCwarehouseid("6101"); SaleOutBodyVO saleOutBodyVO = null; List<SaleOutBodyVO> saleOutBodyVOList = new ArrayList<>(); for (OrderDetl orderDetl : orderDetls) { + if (orderDetl.getQty() <= 0) { + continue; + } saleOutBodyVO = new SaleOutBodyVO(); String remark = orderDetl.getRemark(); if (!Cools.isEmpty(remark)) { NccSaleXsfhmxWms nccSaleXsfhmxWms = JSONObject.parseObject(remark, NccSaleXsfhmxWms.class); saleOutBodyVO.setCsourcetype("4331"); - saleOutBodyVO.setClocationid("610101"); + //saleOutBodyVO.setClocationid("610101"); saleOutBodyVO.setCsourcebillbid(nccSaleXsfhmxWms.getCdeliverybid()); saleOutBodyVO.setCsourcebillhid(nccSaleXsfhmxWms.getCdeliveryid()); saleOutHeadVO.setVdef2(nccSaleXsfhmxWms.getVdef2()); @@ -217,9 +228,11 @@ saleOutHeadVO.setVdef13(nccSaleXsfhmxWms.getVdef13()); saleOutHeadVO.setVdef14(nccSaleXsfhmxWms.getVdef14()); } + saleOutHeadVO.setCwarehouseid(orderDetl.getStandby1()); + saleOutBodyVO.setVbatchcode(orderDetl.getBatch()); - saleOutBodyVO.setNshouldnum(flag ? -orderDetl.getAnfme() : orderDetl.getAnfme()); - saleOutBodyVO.setNnum(orderDetl.getQty()); + saleOutBodyVO.setNshouldnum(flag ? -orderDetl.getQty() : orderDetl.getQty()); + saleOutBodyVO.setNnum(flag ? -orderDetl.getQty() : orderDetl.getQty()); saleOutBodyVOList.add(saleOutBodyVO); } data.put("SaleOutHeadVO", saleOutHeadVO); @@ -232,7 +245,6 @@ Map<String, Object> data = new HashMap<String, Object>(); GeneralInHeadVO generalInHeadVO = new GeneralInHeadVO(); generalInHeadVO.setPk_org("FYT"); - generalInHeadVO.setCwarehouseid("6101"); GeneralInBodyVO generalInBodyVO = null; List<GeneralInBodyVO> generalInBodyVOS = new ArrayList<>(); for (OrderDetl orderDetl : orderDetls) { @@ -246,7 +258,9 @@ generalInBodyVO.setNnum(orderDetl.getQty()); generalInBodyVO.setNshouldnum(orderDetl.getAnfme()); generalInBodyVO.setCsourcetype(nccScZkmxbWms.getZklxbm()); + } + generalInHeadVO.setCwarehouseid(orderDetl.getStandby1()); generalInBodyVOS.add(generalInBodyVO); } data.put("GeneralInHeadVO", generalInHeadVO); @@ -281,31 +295,7 @@ return data; } - private Object processZKCK(Order order, List<OrderDetl> orderDetls) { - //缁勮瀵硅薄鏁版嵁 - Map<String, Object> data = new HashMap<String, Object>(); - WhsTransBillHeaderVO whsTransBillHeaderVO = new WhsTransBillHeaderVO(); - whsTransBillHeaderVO.setPk_org("FYT"); - whsTransBillHeaderVO.setCotherwhid(order.getItemId()); - whsTransBillHeaderVO.setCtrantypeid("4K-01"); - WhsTransBillBodyVO whsTransBillBodyVO = null; - List<WhsTransBillBodyVO> whsTransBillBodyVOS = new ArrayList<>(); - for (OrderDetl orderDetl : orderDetls) { - whsTransBillBodyVO = new WhsTransBillBodyVO(); - String remark = orderDetl.getRemark(); - //if (!Cools.isEmpty(remark)) { - //NccSaleXsfhmxWms nccSaleXsfhmxWms = JSONObject.parseObject(remark, NccSaleXsfhmxWms.class); - whsTransBillBodyVO.setNnum(orderDetl.getQty()); - whsTransBillBodyVO.setCmaterialoid(orderDetl.getMatnr()); - whsTransBillBodyVO.setVbatchcode(orderDetl.getBatch()); - //} - whsTransBillHeaderVO.setCwarehouseid(orderDetl.getStandby1()); - whsTransBillBodyVOS.add(whsTransBillBodyVO); - } - data.put("WhsTransBillHeaderVO", whsTransBillHeaderVO); - data.put("WhsTransBillBodyVO", whsTransBillBodyVOS); - return data; - } + private Object processCGDH(List<OrderDetl> orderDetls) { @@ -313,7 +303,7 @@ Map<String, Object> data = new HashMap<String, Object>(); ic_purchasein_h ic_purchasein_h = new ic_purchasein_h(); ic_purchasein_h.setPk_org("FYT"); - ic_purchasein_h.setCwarehouseid("6301"); + //ic_purchasein_h.setCwarehouseid("6301"); ic_purchasein_h.setCfanaceorgoid("FYT"); ic_purchasein_b ic_purchasein_b = null; List<ic_purchasein_b> ic_purchasein_bs = new ArrayList<>(); @@ -332,6 +322,7 @@ ic_purchasein_b.setCsourcetype(nccCgCgdhdWms.getDhlxbm()); ic_purchasein_b.setVbatchcode(orderDetl.getBatch()); } + ic_purchasein_h.setCwarehouseid(orderDetl.getStandby1()); ic_purchasein_bs.add(ic_purchasein_b); } data.put("ic_purchasein_h", ic_purchasein_h); @@ -339,40 +330,45 @@ return data; } - /** - * @param orderDetls - * @return - */ - private Object processGENERALOUT(List<OrderDetl> orderDetls) { + + private Object processZKCK(Order order, List<OrderDetl> orderDetls) { //缁勮瀵硅薄鏁版嵁 Map<String, Object> data = new HashMap<String, Object>(); - ic_generalout_h generalout_h = new ic_generalout_h(); - generalout_h.setPk_org("FYT"); - generalout_h.setCwarehouseid("6101"); - ic_generalout_b generalout_b = null; - List<ic_generalout_b> ic_purchasein_bs = new ArrayList<>(); + WhsTransBillHeaderVO whsTransBillHeaderVO = new WhsTransBillHeaderVO(); + whsTransBillHeaderVO.setPk_org("FYT"); + whsTransBillHeaderVO.setCotherwhid(order.getItemId()); + whsTransBillHeaderVO.setCtrantypeid("4K-01"); + WhsTransBillBodyVO whsTransBillBodyVO = null; + List<WhsTransBillBodyVO> whsTransBillBodyVOS = new ArrayList<>(); for (OrderDetl orderDetl : orderDetls) { - generalout_b = new ic_generalout_b(); - String remark = orderDetl.getRemark(); - if (!Cools.isEmpty(remark)) { - NccSaleXsfhmxWms nccSaleXsfhmxWms = JSONObject.parseObject(remark, NccSaleXsfhmxWms.class); - generalout_b.setCmaterialvid(orderDetl.getMatnr()); - generalout_b.setNshouldassistnum(orderDetl.getQty()); - generalout_b.setVbatchcode(orderDetl.getBatch()); + NccScPcdaWms nccScPcdaWms = nccScPcdaWmsService.selectOne(new EntityWrapper<NccScPcdaWms>().eq("vbatchcode", orderDetl.getBatch()).eq("wlbm", orderDetl.getMatnr())); + if (nccScPcdaWms == null) { + throw new CoolException("鎵规[{}]鐗╂枡[{}]鏈壘鍒�" + orderDetl.getBatch() + orderDetl.getMatnr()); } - ic_purchasein_bs.add(generalout_b); + + whsTransBillBodyVO = new WhsTransBillBodyVO(); + whsTransBillBodyVO.setCstateid(nccScPcdaWms.getPkBatchcode()); + + String remark = orderDetl.getRemark(); + //if (!Cools.isEmpty(remark)) { + //NccSaleXsfhmxWms nccSaleXsfhmxWms = JSONObject.parseObject(remark, NccSaleXsfhmxWms.class); + whsTransBillBodyVO.setNnum(orderDetl.getQty()); + whsTransBillBodyVO.setCmaterialoid(orderDetl.getMatnr()); + whsTransBillBodyVO.setVbatchcode(orderDetl.getBatch()); + //} + whsTransBillHeaderVO.setCwarehouseid(orderDetl.getStandby1()); + whsTransBillBodyVOS.add(whsTransBillBodyVO); } - data.put("ic_generalout_h", generalout_h); - data.put("ic_generalout_b", ic_purchasein_bs); + data.put("WhsTransBillHeaderVO", whsTransBillHeaderVO); + data.put("WhsTransBillBodyVO", whsTransBillBodyVOS); return data; } - /** * @param orderDetls * @return */ - private Object processGENERALOUT2(List<OrderDetl> orderDetls, String memo) { + private Object processGENERALOUT2(List<OrderDetl> orderDetls, String renyuan, String rukucangku, String memo) { Object o = JSONObject.parseArray(memo).get(0); JSONObject jsonObject = JSONObject.parseObject(o.toString()); String cspecialhid = JSONObject.parseObject(jsonObject.getString("ic.WhsTransBillHeaderVO")).getString("cspecialhid"); @@ -386,17 +382,31 @@ Map<String, Object> data = new HashMap<String, Object>(); ic_generalout_h generalout_h = new ic_generalout_h(); generalout_h.setPk_org("FYT"); - generalout_h.setCwarehouseid("6101"); + //generalout_h.setCwarehouseid("6101"); ic_generalout_b generalout_b = null; List<ic_generalout_b> ic_purchasein_bs = new ArrayList<>(); for (int i = 0; i < orderDetls.size(); i++) { +// NccScPcdaWms nccScPcdaWms = nccScPcdaWmsService.selectOne(new EntityWrapper<NccScPcdaWms>().eq("vbatchcode", orderDetls.get(i).getBatch()).eq("wlbm", orderDetls.get(i).getMatnr())); +// if (nccScPcdaWms == null) { +// throw new CoolException("鎵规[{}]鐗╂枡[{}]鏈壘鍒�" + orderDetls.get(i).getBatch() + orderDetls.get(i).getMatnr()); +// } OrderDetl orderDetl = orderDetls.get(i); + generalout_h.setCwarehouseid(orderDetl.getStandby1()); generalout_b = new ic_generalout_b(); generalout_b.setCsourcebillbid(s.get(i)); generalout_b.setCsourcetype("4K-01"); generalout_b.setCsourcebillhid(cspecialhid); generalout_b.setCmaterialvid(orderDetl.getMatnr()); - generalout_b.setNshouldassistnum(orderDetl.getQty()); + //generalout_b.setCstateid(nccScPcdaWms.getVcode()); + StoreType storeType = storeTypeService.selectOne(new EntityWrapper<StoreType>().eq("store_id", orderDetl.getStandby1())); + generalout_b.setCdptvid(storeType.getDepartmentId()); + generalout_b.setBillmaker(renyuan); + StoreType storeType2 = storeTypeService.selectOne(new EntityWrapper<StoreType>().eq("store_id", rukucangku)); + generalout_b.setCotherwhid(rukucangku); + generalout_b.setCothercalbodyvid(storeType2.getDepartmentId()); + + //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