From ed514bde915d1a9b2cf57c379155eed0cd225e99 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期一, 28 七月 2025 10:23:53 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java | 88 +++++++++++++++++++++++++++++++++++++++-----
1 files changed, 78 insertions(+), 10 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 aae1a3d..013a2ca 100644
--- a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
@@ -11,6 +11,7 @@
import com.zy.asrs.utils.MatUtils;
import com.zy.nc.SendUtil;
import com.zy.nc.entity.*;
+import com.zy.nc.service.NccSaleDbddWmsService;
import com.zy.nc.service.NccSaleXsfhmxWmsService;
import com.zy.nc.service.NccScPcdaWmsService;
import com.zy.nc.util.NcResultMessage;
@@ -49,6 +50,8 @@
@Autowired
private NccSaleXsfhmxWmsService nccSaleXsfhmxWmsService;
+ @Autowired
+ private NccSaleDbddWmsService nccSaleDbddWmsService;
@Value("${NYNC.ip}")
private String nyncIp;
@@ -218,17 +221,45 @@
@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;
+ Object process1 = null;
+ NcResultMessage response1 = null;
+ boolean success1 = false;
+ try {
+ process1 = processTKRK(matnr, batch, orderNo, anfme);
+ //鍙戦�佽姹�
+ response1 = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process1));
+ log.info("閫�搴撳叆搴搑esponse:{}", response1);
+ if (!Cools.isEmpty(response1) && response1.isSuccess()) {
+ log.info("閫�搴撳叆搴搑esponse:{}", response1);
+ success1 = true;
+ return true;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ reportApiLog(null, process1, process1, response1, "TKRK", nyncIp, saveRefDelivery, success1);
}
+
+ Object process2 = null;
+ NcResultMessage response2 = null;
+ boolean success2 = false;
+ try {
+ process2 = processDBTK(matnr, batch, orderNo, anfme);
+ //鍙戦�佽姹�
+ response2 = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, dbdd, JSONObject.toJSONString(process2));
+ log.info("閫�搴撳叆搴搑esponse:{}", response2);
+ if (!Cools.isEmpty(response2) && response2.isSuccess()) {
+ log.info("閫�搴撳叆搴搑esponse:{}", response2);
+ success2 = true;
+ return true;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ reportApiLog(null, process2, process2, response2, "DBRK", nyncIp, dbdd, success2);
+ }
+
+ return false;
}
@Override
@@ -354,6 +385,43 @@
return data;
}
+ private Object processDBTK(String matnr, String batch, String orderNo, Double anfme) {
+ List<NccSaleDbddWms> nccSaleDbddWmsList = nccSaleDbddWmsService.selectList(new EntityWrapper<NccSaleDbddWms>()
+ .eq("wlbm", matnr)
+ .eq("vbillcode", orderNo)
+ );
+
+ if (nccSaleDbddWmsList.isEmpty()) {
+ throw new CoolException("璋冩嫧璁㈠崟ERP鏁版嵁涓虹┖");
+ }
+
+ NccSaleDbddWms nccSaleDbddWms = nccSaleDbddWmsList.get(0);
+
+ //缁勮瀵硅薄鏁版嵁
+ Map<String, Object> data = new HashMap<String, Object>();
+
+ List<IaIjBillB> bids = new ArrayList<>();
+ IaIjBillB iaIjBillB = new IaIjBillB();
+ NccScPcdaWms nccScPcdaWms = nccScPcdaWmsService.selectOne(new EntityWrapper<NccScPcdaWms>().eq("vbatchcode", batch).eq("wlbm", matnr));
+ if (nccScPcdaWms == null) {
+ throw new CoolException("鎵规[{}]鐗╂枡[{}]鏈壘鍒�" + batch + "-" + matnr);
+ }
+
+ Double weight = MatUtils.calcWeight(matnr, anfme);
+ iaIjBillB.setBid(nccSaleDbddWms.getCbill_bid());
+ iaIjBillB.setNassistnum(weight);
+ iaIjBillB.setNnum(anfme * -1);
+ iaIjBillB.setVbatchcode(batch);
+ iaIjBillB.setClocationid("");
+ iaIjBillB.setCstateid(nccScPcdaWms.getVcode());
+
+ bids.add(iaIjBillB);
+
+ data.put("hid", nccSaleDbddWms.getCbill_bid());
+ data.put("bids", bids);
+ return data;
+ }
+
private Object processInvcount(String matnr, String batch, String cwarehouseid) {
List<InventoryCheckOrderDetl> inventoryCheckOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>()
.eq("matnr", matnr)
--
Gitblit v1.9.1