From 794fd937a840ab256ae7660aa49175c4d762af86 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 27 六月 2025 16:35:09 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java | 124 ++++++++++++++++++++++++++++++++---------
1 files changed, 96 insertions(+), 28 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 ad36b7d..a3b0320 100644
--- a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
@@ -5,21 +5,13 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
-import com.core.common.R;
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.service.NccXsckmxTkWmsService;
import com.zy.nc.util.NcResultMessage;
import com.zy.nc.vo.*;
import lombok.extern.slf4j.Slf4j;
@@ -38,18 +30,20 @@
@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 NccXsckmxTkWmsService nccXsckmxTkWmsService;
@Autowired
private NccSaleXsfhmxWmsService nccSaleXsfhmxWmsService;
@@ -65,6 +59,9 @@
@Value("${NYNC.saveRefWhsTrans}")
private String saveRefWhsTrans;
+
+ @Value("${NYNC.invcountAdd}")
+ private String invcountAdd;
@Value("${NYNC.purchasein}")
private String purchasein;
@@ -210,13 +207,28 @@
}
@Override
- public boolean reportTkrk(String batch, String orderNo, Double anfme) {
- Object process1 = processTKRK(batch, orderNo, anfme);
+ 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);
@@ -263,17 +275,17 @@
return data;
}
- private Object processTKRK(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("鏈壘鍒版鏉$爜");
- }
+ 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", nccXsckmxTkWms.getVsourcebillcode())
- .eq("WLBM", nccXsckmxTkWms.getWlbm())
+ .eq("VBILLCODE", orderNo)
+ .eq("WLBM", matnr)
);
if(null == nccSaleXsfhmxWms) {
throw new CoolException("鏈壘鍒伴攢鍞崟鎹�");
@@ -288,11 +300,11 @@
saleOutBodyVO = new SaleOutBodyVO();
saleOutBodyVO.setCsourcetype("4331");
- saleOutBodyVO.setCsourcebillbid(nccXsckmxTkWms.getCsourcebillbid());
- saleOutBodyVO.setCsourcebillhid(nccXsckmxTkWms.getCsourcebillhid());
+ saleOutBodyVO.setCsourcebillbid(nccSaleXsfhmxWms.getCdeliverybid());
+ saleOutBodyVO.setCsourcebillhid(nccSaleXsfhmxWms.getCdeliveryid());
saleOutHeadVO.setCwarehouseid(nccSaleXsfhmxWms.getFhckbm());
- saleOutBodyVO.setVbatchcode(nccXsckmxTkWms.getVbatchcode());
+ saleOutBodyVO.setVbatchcode(batch);
saleOutBodyVO.setNnum(anfme * -1);
saleOutBodyVOList.add(saleOutBodyVO);
@@ -301,6 +313,62 @@
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槑缁嗕笉瀛樺湪");
+ }
+
+ NccScPcdaWms nccScPcdaWms = nccScPcdaWmsService.selectOne(new EntityWrapper<NccScPcdaWms>()
+ .eq("WLBM", inventoryCheckOrderDetl.getMatnr())
+ .eq("VBATCHCODE", inventoryCheckOrderDetl.getBatch())
+ );
+ if(null == nccScPcdaWms) {
+ throw new CoolException("ERP鏁版嵁搴撴棤娉曟煡璇㈠埌鐩樼偣涓婃姤鏁版嵁");
+ }
+
+ cwarehouseid = wrkDetls.get(0).getStandby1();
+
+ InvCountBodyVO invCountBodyVO = new InvCountBodyVO();
+ invCountBodyVO.setCmaterialoid(inventoryCheckOrderDetl.getMatnr());
+ invCountBodyVO.setVbatchcode(inventoryCheckOrderDetl.getBatch());
+ invCountBodyVO.setNcountastnum(inventoryCheckOrderDetl.getCheckAnfme());
+ invCountBodyVO.setCstateid(nccScPcdaWms.getPkStorestate());
+ invCountBodyVO.setPk_batchcode(nccScPcdaWms.getPkBatchcode());
+ 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", "1");
+ data.put("splr", "0");
+
+ ArrayList<Map<String, Object>> list = new ArrayList<>();
+ list.add(data);
+ return list;
+ }
+
private Object processZKRK(List<OrderDetl> orderDetls) {
//缁勮瀵硅薄鏁版嵁
Map<String, Object> data = new HashMap<String, Object>();
--
Gitblit v1.9.1