From ebf0db91e09be33fcbfe97ed5b91965dc2e61dfd Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期四, 01 八月 2024 10:54:26 +0800
Subject: [PATCH] 1. 托盘管理 2. 入库通知档导入功能 3. 工作档明细 新增来源单据类型及单据编号 4. 库存明细统计表 增加一栏ERP数量(需跟ERP确认接口实现方式)。 5. 存货档案、单据管理、库存管理可以支持模糊搜索(各个单据界面)。
---
zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkLogHandler.java | 96 ++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 93 insertions(+), 3 deletions(-)
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkLogHandler.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkLogHandler.java
index 5a35d84..4232215 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkLogHandler.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkLogHandler.java
@@ -1,7 +1,15 @@
package com.zy.asrs.wms.task.handler;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.zy.asrs.common.sys.entity.OperateLog;
+import com.zy.asrs.common.sys.service.OperateLogService;
+import com.zy.asrs.common.utils.HttpHandler;
+import com.zy.asrs.common.utils.Utils;
+import com.zy.asrs.common.wms.entity.Order;
import com.zy.asrs.common.wms.entity.WaitPakin;
import com.zy.asrs.common.wms.entity.WrkDetl;
import com.zy.asrs.common.wms.entity.WrkMast;
@@ -11,13 +19,13 @@
import com.zy.asrs.wms.task.core.ReturnT;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
+import java.text.SimpleDateFormat;
+import java.util.*;
/**
* Created by vincent on 2020/7/6
@@ -40,6 +48,17 @@
private WaitPakinLogService waitPakinLogService;
@Autowired
private OrderService orderService;
+ @Autowired
+ private OperateLogService operateLogService;
+
+ @Value("${erp.url}")
+ private String ERP_URL;
+
+ @Value("${erp.report}")
+ private String ERP_REPORT;
+
+ @Value("${erp.login}")
+ private String ERP_LOGIN;
// update asr_wrk_mast set inv_wh = 'Y', ove_mk = 'Y' where wrk_no =
@Transactional
@@ -99,6 +118,77 @@
}
}
+ if (!wrkDetlsKeyOrder.isEmpty()) {
+ //涓婃姤蹇靛垵ERP 銆� 涓婃姤涓夋柟骞冲彴 銆�
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
+ String nowFormat = dateFormat.format(new Date());
+
+ ArrayList<LinkedHashMap<String, Object>> mats = new ArrayList<>();
+ String orderNo = "";
+ for (WrkDetl wrkDetl : wrkDetlsKeyOrder) {
+ orderNo = wrkDetl.getOrderNo();
+ LinkedHashMap<String, Object> mat = new LinkedHashMap<>();
+ mat.put("GoodsCode", wrkDetl.getMatnr());
+ mat.put("Num", wrkDetl.getAnfme());
+ if (!Cools.isEmpty(wrkDetl.getBatch())) {
+ mat.put("BatchNo", wrkDetl.getBatch());
+ }
+ if (!Cools.isEmpty(wrkDetl.getThreeCode())) {
+ mat.put("DepotName", wrkDetl.getThreeCode());
+ }
+ if (!Cools.isEmpty(wrkDetl.getSupp())) {
+ mat.put("FromDanCode", wrkDetl.getSupp());
+ }
+ if (!Cools.isEmpty(wrkDetl.getSuppCode())) {
+ mat.put("FromNo", wrkDetl.getSuppCode());
+ }
+ mats.add(mat);
+ }
+ Order order = orderService.selectByNo(orderNo, hostId);
+ if (order != null) {
+ LinkedHashMap<String, Object> param = new LinkedHashMap<>();
+ param.put("Login", ERP_LOGIN);
+ param.put("DanType", order.getDocType$());
+ param.put("Date", nowFormat);
+ param.put("DanCode", orderNo);
+ param.put("Data", mats);
+
+ String response = "";
+ try {
+ response = new HttpHandler.Builder()
+ .setUri(ERP_URL)
+ .setPath(ERP_REPORT + Utils.ncErpDataEncode(param))
+ .build()
+ .doGet();
+ JSONObject jsonObject = JSON.parseObject(response);
+ JSONArray result = jsonObject.getJSONArray("result");
+ Object object = result.get(0);
+ JSONObject data = JSON.parseObject(object.toString());
+ if (data.getBoolean("State")) {
+ //涓婃姤鎴愬姛
+ } else {
+ //涓婃姤澶辫触
+ exceptionHandle("涓婃姤ERP澶辫触[workNo={0}]澶辫触", wrkMast.getWrkNo());
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ //寮傚父涓婃姤澶辫触
+// exceptionHandle("涓婃姤ERP寮傚父澶辫触[workNo={0}]澶辫触", wrkMast.getWrkNo());
+ } finally {
+ //璁板綍涓婃姤鏁版嵁
+ OperateLog operateLog = new OperateLog();
+ operateLog.setAction("涓婃姤ERP," + ERP_URL + ERP_REPORT);
+ operateLog.setRequest(Utils.ncErpDataEncode(param));
+ operateLog.setResponse(response);
+ operateLog.setCreateTime(new Date());
+ operateLog.setSystem("WMS");
+ operateLog.setUserId(9527L);
+ operateLog.setIp("127.0.0.1");
+ operateLogService.save(operateLog);
+ }
+ }
+ }
+
// 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
if (!wrkMastLogService.saveToHistory(wrkMast.getId())) {
exceptionHandle("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo());
--
Gitblit v1.9.1