| | |
| | | import java.net.URL; |
| | | import java.util.Date; |
| | | import java.util.HashMap; |
| | | import java.util.concurrent.TimeUnit; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | |
| | | 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(); // 入库 |
| | | sendPickPrintCmd(); // 打印 |
| | | updateWaitPakOutData(); // 出库 |
| | | updateWaitPakOutData1(); // 出库 |
| | | // sendPickPrintCmd(); // 打印 |
| | | // updateWaitPakOutData(); // 出库 |
| | | // 清空2天前的日志 |
| | | sapRequestLogService.clearSapLog(); |
| | | // updateWaitCheckData(); |
| | | 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); |
| | |
| | | /** |
| | | * 处理出库通知档数据 |
| | | */ |
| | | 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()); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 处理出库通知档数据 |
| | | */ |
| | | private void updateWaitPakOutData() { |
| | | try { |
| | | // logger.info("waitOut:" + count++); |
| | |
| | | // connection1.disconnect(); |
| | | // } |
| | | // } |
| | | |
| | | logger.info("TEST===>>4"); |
| | | |
| | | JSONObject jsObj = new JSONObject(); |
| | | try { |
| | |
| | | // } |
| | | |
| | | 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++) { |
| | |
| | | // } |
| | | //// 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); |