From 41627341cf8a7b096be51079125607faeb209152 Mon Sep 17 00:00:00 2001
From: 王佳豪 <g675230687@126.com>
Date: 星期四, 15 七月 2021 15:30:11 +0800
Subject: [PATCH] 出库通知档 1.联动勾选,源发地仓位相同的同时勾选和取消勾选(行点击触发)
---
src/main/java/com/slcf/filter/UpdateThread.java | 219 ++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 200 insertions(+), 19 deletions(-)
diff --git a/src/main/java/com/slcf/filter/UpdateThread.java b/src/main/java/com/slcf/filter/UpdateThread.java
index de4481e..f62afed 100644
--- a/src/main/java/com/slcf/filter/UpdateThread.java
+++ b/src/main/java/com/slcf/filter/UpdateThread.java
@@ -5,11 +5,16 @@
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
+import java.util.Date;
import javax.annotation.Resource;
+import com.slcf.pojo.SapRequestLogBean;
+import com.slcf.service.SapRequestLogService;
+import net.sf.json.JSONString;
import org.activiti.engine.impl.transformer.IntegerToString;
import org.apache.log4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -40,6 +45,8 @@
// WaitPakOutService waitPakOutService;
// @Resource
// private static WaitPakInServiceImpl waitPakInService;
+ @Autowired
+ SapRequestLogService sapRequestLogService;
Logger logger=Logger.getLogger(UpdateThread.class);
@@ -66,9 +73,11 @@
waitPakOutService = getWaitPakOutService();
while(true) {
try {
- updateWaitPakInData();
- sendPickPrintCmd();
- updateWaitPakOutData();
+ updateWaitPakInData(); // 鍏ュ簱
+ sendPickPrintCmd(); // 鎵撳嵃
+ updateWaitPakOutData(); // 鍑哄簱
+ // 娓呯┖2澶╁墠鐨勬棩蹇�
+ sapRequestLogService.clearSapLog();
// updateWaitCheckData();
Thread.sleep(5000);
} catch (InterruptedException e) {
@@ -105,19 +114,33 @@
String encodedPassword;
String token="";
String session_value="";
+
+ HttpURLConnection connection1 = null;
try {
encodedPassword = base.encode(input.getBytes("UTF-8"));
URL url1 = new URL(httpUrl);
- HttpURLConnection connection1 = (HttpURLConnection) url1.openConnection();
+ connection1 = (HttpURLConnection) url1.openConnection();
connection1.setDoOutput(true);
connection1.setDoInput(true);
+ connection1.setConnectTimeout(30000);
+ connection1.setReadTimeout(30000);
connection1.setRequestMethod("GET");
connection1.setRequestProperty("Authorization", "Basic " + encodedPassword);
connection1.setRequestProperty("x-csrf-token","Fetch");
+
+
String sessionCookie = connection1.getHeaderField("Set-Cookie");
if(sessionCookie==null || sessionCookie.length()<1)
{
logger.error("SAP ERROR-----璋冪敤涓婃灦瀹屾垚鎺ュ彛锛実et璇锋眰鑾峰彇cookie澶辫触");
+ // SAP INFO-----璋冪敤涓婃灦瀹屾垚鎺ュ彛锛屾棩蹇楄褰�
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakIn.getMatnr());
+ logInfo.setRequest("鑾峰彇cookie澶辫触,cookie鍊�:" + sessionCookie);
+ logInfo.setResponse("SAP ERROR-----璋冪敤涓婃灦瀹屾垚鎺ュ彛锛実et璇锋眰鑾峰彇cookie澶辫触");
+ logInfo.setCreate_time(new Date());
+ logInfo.setType(2);
+// sapRequestLogService.addSapLog(logInfo);
return result;
}
String[] sessionId = sessionCookie.split(";");
@@ -126,7 +149,20 @@
// Map<String, List<String>> map = connection1.getHeaderFields();
// token = map.get("x-csrf-token").toString();
} catch (Exception e1) {
- e1.printStackTrace();
+ logger.error("SAP ERROR-----璋冪敤涓婃灦瀹屾垚鎺ュ彛1锛実et璇锋眰鑾峰彇cookie澶辫触銆�" + e1.getMessage());
+ // SAP INFO-----璋冪敤涓婃灦瀹屾垚鎺ュ彛锛屾棩蹇楄褰�
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakIn.getMatnr());
+ logInfo.setRequest("鑾峰彇cookie澶辫触");
+ logInfo.setResponse("SAP ERROR-----璋冪敤涓婃灦瀹屾垚鎺ュ彛1锛実et璇锋眰鑾峰彇cookie澶辫触銆�" + e1.getMessage());
+ logInfo.setCreate_time(new Date());
+ logInfo.setType(2);
+// sapRequestLogService.addSapLog(logInfo);
+// e1.printStackTrace();
+ }finally {
+ if(connection1!=null){
+ connection1.disconnect();
+ }
}
try {
@@ -150,16 +186,19 @@
byte[] buff = jsObj.toString().getBytes();
int buffLen = buff.length;
//鍒涘缓杩炴帴
+ HttpURLConnection connection = null;
try {
// String input = "ZHANGX:654321";
// BASE64Encoder base = new BASE64Encoder();
// String encodedPassword = base.encode(input.getBytes("UTF-8"));
URL url = new URL(httpUrl);
- HttpURLConnection connection = (HttpURLConnection) url.openConnection();
+ connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
+ connection.setConnectTimeout(30000);
+ connection.setReadTimeout(30000);
// connection.setUseCaches(false);
// connection.setInstanceFollowRedirects(true);
// connection.setRequestProperty("Content-Type","text/json;charset=gb2312");
@@ -207,11 +246,29 @@
}catch(Exception em) {
}
if(zstatus.equals("s") || message.contains("宸茬粡瀹屽叏鎻愪緵")) {//涓婃姤SAP鎴愬姛,杞巻鍙叉。
+ // SAP INFO-----璋冪敤涓婃灦瀹屾垚鎺ュ彛锛屾棩蹇楄褰�
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakIn.getMatnr());
+ logInfo.setRequest(jsObj.toString());
+ logInfo.setResponse(sb.toString());
+ logInfo.setCreate_time(new Date());
+ logInfo.setRemark("涓婃灦瀹屾垚鎺ュ彛:" + message);
+ logInfo.setType(1);
+// sapRequestLogService.addSapLog(logInfo);
// if(zstatus.equals("s")) {
waitPakIn.setIo_status("Y");
waitPakInService.upWaitPakIn(waitPakIn);
waitPakInService.moveToLog(waitPakIn);
}else if(zstatus.equals("e")) {//涓婃姤SAP澶辫触,鏇存柊io_status=X
+ // SAP INFO-----璋冪敤涓婃灦瀹屾垚鎺ュ彛锛屾棩蹇楄褰�
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakIn.getMatnr());
+ logInfo.setRequest(jsObj.toString());
+ logInfo.setResponse(sb.toString());
+ logInfo.setCreate_time(new Date());
+ logInfo.setRemark("涓婃灦瀹屾垚鎺ュ彛:" + message);
+ logInfo.setType(2);
+// sapRequestLogService.addSapLog(logInfo);
waitPakIn.setIo_status("X");
waitPakIn.setMemo(message);
waitPakInService.upWaitPakIn(waitPakIn);
@@ -227,6 +284,10 @@
waitPakInService.upWaitPakIn(waitPakIn);
logger.error("SAP Error sendPakInStatus--"+waitPakIn.getMatnr()+"---" + e.getMessage());
// System.out.println(e.getMessage());
+ }finally {
+ if(connection!=null){
+ connection.disconnect();
+ }
}
}catch (Exception e) {
waitPakIn.setIo_status("X");
@@ -265,12 +326,16 @@
String encodedPassword;
String token="";
String session_value="";
+
+ HttpURLConnection connection1 = null;
try {
encodedPassword = base.encode(input.getBytes("UTF-8"));
URL url1 = new URL(httpUrl);
- HttpURLConnection connection1 = (HttpURLConnection) url1.openConnection();
+ connection1 = (HttpURLConnection) url1.openConnection();
connection1.setDoOutput(true);
connection1.setDoInput(true);
+ connection1.setConnectTimeout(30000);
+ connection1.setReadTimeout(30000);
connection1.setRequestMethod("GET");
connection1.setRequestProperty("Authorization", "Basic " + encodedPassword);
connection1.setRequestProperty("x-csrf-token","Fetch");
@@ -278,15 +343,37 @@
if(sessionCookie==null || sessionCookie.length()<1)
{
logger.error("璋冪敤涓嬫灦瀹屾垚鎺ュ彛锛実et璇锋眰鑾峰彇cookie澶辫触");
+ // SAP INFO-----璋冪敤涓婃灦瀹屾垚鎺ュ彛锛屾棩蹇楄褰�
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakOut.getMatnr());
+ logInfo.setRequest("鑾峰彇cookie鍊煎け璐�,cookie锛�" + sessionCookie);
+ logInfo.setResponse("璋冪敤鍑哄簱瀹屾垚鎺ュ彛锛実et璇锋眰鑾峰彇cookie澶辫触");
+ logInfo.setCreate_time(new Date());
+ logInfo.setType(2);
+// sapRequestLogService.addSapLog(logInfo);
return result;
}
String[] sessionId = sessionCookie.split(";");
session_value = sessionId[0];
token = connection1.getHeaderField("x-csrf-token");
+
// Map<String, List<String>> map = connection1.getHeaderFields();
// token = map.get("x-csrf-token").toString();
} catch (Exception e1) {
- e1.printStackTrace();
+ logger.error("璋冪敤涓嬫灦瀹屾垚鎺ュ彛锛実et璇锋眰鑾峰彇cookie澶辫触" + e1.getMessage());
+ // SAP INFO-----璋冪敤涓婃灦瀹屾垚鎺ュ彛锛屾棩蹇楄褰�
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakOut.getMatnr());
+ logInfo.setRequest("鑾峰彇cookie澶辫触");
+ logInfo.setResponse("璋冪敤鍑哄簱瀹屾垚鎺ュ彛锛実et璇锋眰鑾峰彇cookie澶辫触");
+ logInfo.setCreate_time(new Date());
+ logInfo.setType(2);
+// sapRequestLogService.addSapLog(logInfo);
+// e1.printStackTrace();
+ }finally{
+ if(connection1!=null){
+ connection1.disconnect();
+ }
}
try {
@@ -325,15 +412,18 @@
byte[] buff = jsObj.toString().getBytes();
int buffLen = buff.length;
//鍒涘缓杩炴帴
+ HttpURLConnection connection = null;
try {
// String input = "ZHANGX:654321";
// BASE64Encoder base = new BASE64Encoder();
// String encodedPassword = base.encode(input.getBytes("UTF-8"));
URL url = new URL(httpUrl);
- HttpURLConnection connection = (HttpURLConnection) url.openConnection();
+ connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
+ connection.setConnectTimeout(30000);
+ connection.setReadTimeout(30000);
connection.setRequestMethod("POST");
// connection.setUseCaches(false);
// connection.setInstanceFollowRedirects(true);
@@ -380,11 +470,29 @@
}catch(Exception em) {
}
if(zstatus.equals("s") || message.contains("宸茬粡瀹屽叏鎻愪緵") || message.contains("宸茬‘璁�")) {
+ // SAP INFO-----璋冪敤涓嬫灦瀹屾垚鎺ュ彛锛屾棩蹇楄褰�
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakOut.getMatnr());
+ logInfo.setRequest(jsObj.toString());
+ logInfo.setResponse(sb.toString());
+ logInfo.setCreate_time(new Date());
+ logInfo.setType(1);
+ logInfo.setRemark("鍑哄簱瀹屾垚鎺ュ彛:" + message);
+// sapRequestLogService.addSapLog(logInfo);
// if(zstatus.equals("s")) {//涓婃姤SAP鎴愬姛,杞巻鍙叉。
waitPakOut.setIo_status("Y");
waitPakOutService.upWaitPakOut(waitPakOut,0);
waitPakOutService.moveToLog(waitPakOut);
}else if(zstatus.equals("e")) {//涓婃姤SAP澶辫触,鏇存柊io_status=X
+ // SAP INFO-----璋冪敤涓嬫灦瀹屾垚鎺ュ彛锛屾棩蹇楄褰�
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakOut.getMatnr());
+ logInfo.setRequest(jsObj.toString());
+ logInfo.setResponse(sb.toString());
+ logInfo.setCreate_time(new Date());
+ logInfo.setType(2);
+ logInfo.setRemark("鍑哄簱瀹屾垚鎺ュ彛:" + message);
+// sapRequestLogService.addSapLog(logInfo);
waitPakOut.setIo_status("X");
waitPakOut.setMemo(message);
waitPakOutService.upWaitPakOut(waitPakOut,0);
@@ -401,6 +509,10 @@
waitPakOutService.upWaitPakOut(waitPakOut,0);
logger.error("鍑哄簱閫氱煡妗e洖鎶ュ紓甯�--"+waitPakOut.getMatnr() + "---" + e.getMessage());
// System.out.println(e.getMessage());
+ }finally{
+ if(connection!=null){
+ connection.disconnect();
+ }
}
}catch (Exception e) {
waitPakOut.setIo_status("X");
@@ -438,13 +550,17 @@
String encodedPassword;
String token="";
String session_value="";
+
+ HttpURLConnection connection1 = null;
try {
-// logger.error("TQS-----璋冪敤鎵撳嵃鎺ュ彛" + waitPakOut.getMaktx());
+// logger.error("sendPrinCommand-----璋冪敤鎵撳嵃鎺ュ彛" + waitPakOut.getMaktx());
encodedPassword = base.encode(input.getBytes("UTF-8"));
URL url1 = new URL(httpUrl);
- HttpURLConnection connection1 = (HttpURLConnection) url1.openConnection();
+ connection1 = (HttpURLConnection) url1.openConnection();
connection1.setDoOutput(true);
connection1.setDoInput(true);
+ connection1.setConnectTimeout(30000);
+ connection1.setReadTimeout(30000);
connection1.setRequestMethod("GET");
connection1.setRequestProperty("Authorization", "Basic " + encodedPassword);
connection1.setRequestProperty("x-csrf-token","Fetch");
@@ -452,6 +568,14 @@
if(sessionCookie==null || sessionCookie.length()<1)
{
logger.error("璋冪敤鎵撳嵃鎺ュ彛锛実et璇锋眰鑾峰彇cookie澶辫触");
+ // 璋冪敤sap鎵撳嵃鎺ュ彛,璁板綍鏃ュ織
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakOut.getMatnr());
+ logInfo.setRequest("璋冪敤鎵撳嵃鎺ュ彛锛実et璇锋眰鑾峰彇cookie澶辫触");
+ logInfo.setResponse(sessionCookie);
+ logInfo.setCreate_time(new Date());
+ logInfo.setType(2);
+ sapRequestLogService.addSapLog(logInfo);
return result;
}
String[] sessionId = sessionCookie.split(";");
@@ -460,12 +584,24 @@
// Map<String, List<String>> map = connection1.getHeaderFields();
// token = map.get("x-csrf-token").toString();
} catch (Exception e1) {
- logger.error("TQS1-----璋冪敤鎵撳嵃鎺ュ彛" + waitPakOut.getMaktx());
+ logger.error("sendPrinCommand1-----璋冪敤鎵撳嵃鎺ュ彛璇锋眰cookie澶辫触" + waitPakOut.getMaktx() + e1.getMessage());
+ // 璋冪敤sap鎵撳嵃鎺ュ彛,璁板綍鏃ュ織
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakOut.getMatnr());
+ logInfo.setRequest("sendPrinCommand1-----璋冪敤鎵撳嵃鎺ュ彛璇锋眰cookie澶辫触" + waitPakOut.getMaktx());
+ logInfo.setResponse(e1.getMessage());
+ logInfo.setCreate_time(new Date());
+ logInfo.setType(2);
+ sapRequestLogService.addSapLog(logInfo);
e1.printStackTrace();
+ }finally{
+ if(connection1!=null){
+ connection1.disconnect();
+ }
}
try {
- logger.error("TQS2-----璋冪敤鎵撳嵃鎺ュ彛" + waitPakOut.getMaktx());
+// logger.error("sendPrinCommand2-----寮�濮嬭皟鐢ㄦ墦鍗版帴鍙�" + waitPakOut.getMaktx());
JSONObject jsObj = new JSONObject();
JSONArray arr = new JSONArray();
for(int i=0;i<1;i++) {
@@ -493,15 +629,18 @@
byte[] buff = jsObj.toString().getBytes();
int buffLen = buff.length;
//鍒涘缓杩炴帴
+ HttpURLConnection connection = null;
try {
// String input = "ZHANGX:654321";
// BASE64Encoder base = new BASE64Encoder();
// String encodedPassword = base.encode(input.getBytes("UTF-8"));
URL url = new URL(httpUrl);
- HttpURLConnection connection = (HttpURLConnection) url.openConnection();
+ connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
+ connection.setConnectTimeout(30000);
+ connection.setReadTimeout(30000);
connection.setRequestMethod("POST");
// connection.setUseCaches(false);
// connection.setInstanceFollowRedirects(true);
@@ -518,7 +657,7 @@
OutputStream out = connection.getOutputStream();
out.write(buff);
out.close();
- logger.error("TQS3-----璋冪敤鎵撳嵃鎺ュ彛" + waitPakOut.getMaktx());
+// logger.error("sendPrinCommand3-----璋冪敤鎵撳嵃鎺ュ彛" + waitPakOut.getMaktx());
//璇诲彇鍝嶅簲
BufferedReader reader = new BufferedReader(new InputStreamReader(
connection.getInputStream()));
@@ -536,7 +675,7 @@
JSONObject jsonItem = JSONObject.fromObject(Item);
String results = jsonItem.get("results").toString();
JSONArray array = JSONArray.fromObject(results);
- logger.error("TQS4-----璋冪敤鎵撳嵃鎺ュ彛" + waitPakOut.getMaktx());
+ logger.error("sendPrinCommand4-----璋冪敤鎵撳嵃鎺ュ彛" + waitPakOut.getMaktx());
if(array.size()>0) {
for(int i=0;i<array.size();i++){
JSONObject job = array.getJSONObject(i);
@@ -552,11 +691,31 @@
waitPakOut.setAction(1); //妯″紡鍙樹负1鍗曠嫭纭
waitPakOut.setPrnstatus(2); //鎵撳嵃瀹屾垚
waitPakOutService.upWaitPakOut(waitPakOut,0);
-// logger.error("璋冪敤鎵撳嵃鎺ュ彛鎴愬姛锛岃姹俲son鏁版嵁--" + jsObj.toString());
+ logger.error("sendPrinCommand5---璋冪敤鎵撳嵃鎺ュ彛鎴愬姛锛岃姹俲son鏁版嵁--" + jsObj.toString());
+ logger.info("sendPrinCommand5---璋冪敤鎵撳嵃鎺ュ彛鎴愬姛锛岃繑鍥瀓son鏁版嵁--" + sb.toString());
+ // 璋冪敤sap鎵撳嵃鎺ュ彛,璁板綍鏃ュ織
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakOut.getMatnr());
+ logInfo.setRequest(jsObj.toString());
+ logInfo.setResponse(sb.toString());
+ logInfo.setCreate_time(new Date());
+ logInfo.setRemark(message);
+ logInfo.setType(1);
+ sapRequestLogService.addSapLog(logInfo);
}else if(zstatus.equals("e")) {//涓婃姤SAP澶辫触,鏇存柊io_status=X
waitPakOut.setPrnstatus(3); //鎵撳嵃澶辫触
waitPakOut.setMemo(message);
waitPakOutService.upWaitPakOut(waitPakOut,0);
+ logger.error("sendPrinCommand6---璋冪敤鎵撳嵃鎺ュ彛澶辫触锛岃姹俲son鏁版嵁--" + message);
+ // 璋冪敤sap鎵撳嵃鎺ュ彛,璁板綍鏃ュ織
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakOut.getMatnr());
+ logInfo.setRequest(jsObj.toString());
+ logInfo.setResponse(sb.toString());
+ logInfo.setCreate_time(new Date());
+ logInfo.setRemark(message);
+ logInfo.setType(2);
+ sapRequestLogService.addSapLog(logInfo);
}
}
}
@@ -565,14 +724,36 @@
waitPakOut.setPrnstatus(3); //鎵撳嵃澶辫触
waitPakOut.setMemo(e.getMessage());
waitPakOutService.upWaitPakOut(waitPakOut,0);
- logger.error("璋冪敤鎵撳嵃鎺ュ彛鍥炴姤寮傚父--"+waitPakOut.getMatnr() + "---" + e.getMessage());
+ logger.error("sendPrinCommand7---璋冪敤鎵撳嵃鎺ュ彛鍥炴姤寮傚父--"+waitPakOut.getMatnr() + "---" + e.getMessage());
+ // 璋冪敤sap鎵撳嵃鎺ュ彛,璁板綍鏃ュ織
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakOut.getMatnr());
+ logInfo.setRequest(jsObj.toString());
+ logInfo.setResponse("sendPrinCommand7---璋冪敤鎵撳嵃鎺ュ彛鍥炴姤寮傚父--"+waitPakOut.getMatnr() + "---");
+ logInfo.setCreate_time(new Date());
+ logInfo.setRemark(e.getMessage());
+ logInfo.setType(2);
+ sapRequestLogService.addSapLog(logInfo);
// System.out.println(e.getMessage());
+ }finally{
+ if(connection!=null){
+ connection.disconnect();
+ }
}
}catch (Exception e) {
waitPakOut.setPrnstatus(3); //鎵撳嵃澶辫触
waitPakOut.setMemo(e.getMessage());
waitPakOutService.upWaitPakOut(waitPakOut,0);
- logger.error("璋冪敤鎵撳嵃鎺ュ彛鍥炴姤寮傚父--"+waitPakOut.getMatnr() + "---" + e.getMessage());
+ logger.error("sendPrinCommand8---璋冪敤鎵撳嵃鎺ュ彛鍥炴姤寮傚父--"+waitPakOut.getMatnr() + "---" + e.getMessage());
+ // 璋冪敤sap鎵撳嵃鎺ュ彛,璁板綍鏃ュ織
+ SapRequestLogBean logInfo = new SapRequestLogBean();
+ logInfo.setMatnr(waitPakOut.getMatnr());
+ logInfo.setRequest("鎵撳嵃璇锋眰澶辫触");
+ logInfo.setResponse("sendPrinCommand8---璋冪敤鎵撳嵃鎺ュ彛鍥炴姤寮傚父--"+waitPakOut.getMatnr() + "---");
+ logInfo.setCreate_time(new Date());
+ logInfo.setRemark(e.getMessage());
+ logInfo.setType(2);
+ sapRequestLogService.addSapLog(logInfo);
// System.out.println(e.getMessage());
}
return result;
--
Gitblit v1.9.1