From c5588f43f8d7ebd8a982f95c8d265a520d5e0628 Mon Sep 17 00:00:00 2001
From: mrzhssss <pro6@qq.com>
Date: 星期二, 30 八月 2022 08:24:45 +0800
Subject: [PATCH] #
---
src/main/java/com/slcf/filter/UpdateThread.java | 59 +++++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 43 insertions(+), 16 deletions(-)
diff --git a/src/main/java/com/slcf/filter/UpdateThread.java b/src/main/java/com/slcf/filter/UpdateThread.java
index bd0626b..30be057 100644
--- a/src/main/java/com/slcf/filter/UpdateThread.java
+++ b/src/main/java/com/slcf/filter/UpdateThread.java
@@ -8,6 +8,7 @@
import java.net.URL;
import java.util.Date;
import java.util.HashMap;
+import java.util.concurrent.TimeUnit;
import javax.annotation.Resource;
@@ -71,13 +72,18 @@
public void setWaitPakOutService(WaitPakOutService waitPakOutService) {
this.waitPakOutService = waitPakOutService;
}
+ public static boolean updateFlag = true;
public void run() {
waitPakInService = getWaitPakInService();
waitPakOutService = getWaitPakOutService();
while(true) {
try {
+ if(!updateFlag) return;
+ updateFlag = false;
+
updateWaitPakInData(); // 鍏ュ簱
+ updateWaitPakOutData1(); // 鍑哄簱
sendPickPrintCmd(); // 鎵撳嵃
updateWaitPakOutData(); // 鍑哄簱
// 娓呯┖2澶╁墠鐨勬棩蹇�
@@ -86,28 +92,35 @@
Thread.sleep(15000);
} catch (InterruptedException e) {
e.printStackTrace();
+ } finally {
+ updateFlag = true;
}
}
}
+
public JSONObject requestSAP(JSONObject body, String url) {
logger.info(url);
JSONObject resp;
- HashMap<String, Object> requestHeader = new HashMap<>();
- requestHeader.put("Accept", "application/json");
- requestHeader.put("Content-Type", "application/json");
- requestHeader.put("X-Requested-With", "X");
- requestHeader.put("Authorization","Basic TElRSTpzdGFydDEu");
- requestHeader.put("sap-client","100");
+ HashMap<String, Object> requestHeader = new HashMap<>();
+ requestHeader.put("Accept", "application/json");
+ requestHeader.put("Content-Type", "application/json");
+ requestHeader.put("X-Requested-With", "X");
+ requestHeader.put("Authorization","Basic TElRSTpzdGFydDEu");
+ requestHeader.put("sap-client","100");
String s = null;
try {
s = new HttpHandler.Builder()
.setUri(url)
.setJson(body.toString())
+ .setTimeout(20, TimeUnit.SECONDS)
.setHeaders(requestHeader)
.build()
.doPost();
} catch (IOException e) {
+ logger.error("SAP璇锋眰鎺ュ彛澶辫触=URL==>>" + body.toString());
+ logger.error("SAP璇锋眰鎺ュ彛澶辫触=JSON==>>" + body.toString());
+ logger.error("SAP璇锋眰鎺ュ彛澶辫触=JSON==>>" + e.getMessage());
throw new RuntimeException(e);
}
resp = JSONObject.fromObject(s);
@@ -331,13 +344,28 @@
/**
* 澶勭悊鍑哄簱閫氱煡妗f暟鎹�
*/
+ private void updateWaitPakOutData1() {
+ try {
+// logger.info("waitOut:" + count++);
+ WaitPakOutBean waitPakOutBean = waitPakOutService.queryWaitPakOutFnh();
+ if(waitPakOutBean!=null) {
+ waitPakOutBean.setIo_status("Y");
+// waitPakOutService.upWaitPakOut(waitPakOutBean,0);
+ waitPakOutService.moveToLog(waitPakOutBean);
+ }
+ }catch(Exception e) {
+ logger.error("SAP Error updateWaitPakOutData---" + e.getMessage());
+ }
+ }
+
+ /**
+ * 澶勭悊鍑哄簱閫氱煡妗f暟鎹�
+ */
private void updateWaitPakOutData() {
try {
// logger.info("waitOut:" + count++);
WaitPakOutBean waitPakOutBean = waitPakOutService.queryWaitPakOutFnh();
- logger.info("TEST===>>1");
if(waitPakOutBean!=null) {
- logger.info("TEST===>>2");
String httpUrl = Constants.SAP_URL + "/sap/opu/odata/SAP/Z_WM_H5_DW_SRV/ToConHeadSet";
int result = sendPakOutStatus(httpUrl,waitPakOutBean);
}
@@ -351,7 +379,6 @@
*/
private int sendPakOutStatus(String httpUrl,WaitPakOutBean waitPakOut) {
int result = 0;
- logger.info("TEST===>>3");
// String token = getXCsrfToken(httpUrl);
String input = Constants.SAP_USER + ":" + Constants.SAP_PASSWORD;//"ZHANGX:654321";
BASE64Encoder base = new BASE64Encoder();
@@ -408,8 +435,6 @@
// }
// }
- logger.info("TEST===>>4");
-
JSONObject jsObj = new JSONObject();
try {
JSONArray arr = new JSONArray();
@@ -437,9 +462,9 @@
json.put("arbpl","A01-01");
arr.add(json);
}
- int action = 3;
- if(waitPakOut.getAction()==1 && waitPakOut.getPrnstatus()==2) {
- action = 1;
+ int action = 1;
+ if (waitPakOut.getAction() == 3){
+ action = waitPakOut.getAction();
}
jsObj.put("trart", Integer.toString(action));
jsObj.put("item", arr);
@@ -635,7 +660,7 @@
// }
try {
-// logger.error("sendPrinCommand2-----寮�濮嬭皟鐢ㄦ墦鍗版帴鍙�" + waitPakOut.getMaktx());
+ logger.error("sendPrinCommand2-----寮�濮嬭皟鐢ㄦ墦鍗版帴鍙�" + waitPakOut.getMatnr() + "--" + waitPakOut.getMaktx());
JSONObject jsObj = new JSONObject();
JSONArray arr = new JSONArray();
for(int i=0;i<1;i++) {
@@ -703,14 +728,16 @@
// }
//// System.out.println(sb.toString());
// JSONObject json = JSONObject.fromObject(sb.toString());
+ logger.error("sendPrinCommand4-----璋冪敤鎵撳嵃鎺ュ彛" + waitPakOut.getTanum() + "==" + waitPakOut.getMatnr() + "==" + waitPakOut.getMaktx());
JSONObject json = requestSAP(jsObj, httpUrl);
+ logger.error("sendPrinCommand44-----鎵撳嵃鎺ュ彛SAP杩斿洖鏁版嵁===>>" + json.toString());
String d = json.get("d").toString();
JSONObject jsonD = JSONObject.fromObject(d);
String Item = jsonD.get("item").toString();
JSONObject jsonItem = JSONObject.fromObject(Item);
String results = jsonItem.get("results").toString();
JSONArray array = JSONArray.fromObject(results);
- logger.error("sendPrinCommand4-----璋冪敤鎵撳嵃鎺ュ彛" + waitPakOut.getMaktx());
+
if(array.size()>0) {
for(int i=0;i<array.size();i++){
JSONObject job = array.getJSONObject(i);
--
Gitblit v1.9.1