From 65fa066e222f6472badf7323c3b301417b674fdb Mon Sep 17 00:00:00 2001 From: 18516761980 <56479841@qq.com> Date: 星期四, 28 七月 2022 19:30:16 +0800 Subject: [PATCH] # --- src/main/java/com/slcf/filter/UpdateThread.java | 50 ++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 40 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/slcf/filter/UpdateThread.java b/src/main/java/com/slcf/filter/UpdateThread.java index 13dbf06..bca1b66 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,6 +344,23 @@ /** * 澶勭悊鍑哄簱閫氱煡妗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++); @@ -404,8 +434,6 @@ // connection1.disconnect(); // } // } - - logger.info("TEST===>>4"); JSONObject jsObj = new JSONObject(); try { @@ -632,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++) { @@ -700,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