var env = process.env.NODE_ENV || 'development'; var cfg = require('../../config/config.js').get(env); var stats = require('../helper/stats.js'); var request = require('request'); var messageSOAP = require('../helper/messageSOAP.js'); var connection = []; connection.requestSoapToSPW = async function (soap,cmd,myMethod) { var params = { url : cfg.service.SPW[myMethod+"_"+cmd+"_URL"], body : messageSOAP.objectToSOAP(soap,cmd), method : myMethod } return asyncRequest(params,cmd,cfg.service.SPW.Name); }; connection.requestJsonToD01 = async function (obj,cmd,myMethod) { // JSON.stringify(json) var params = { url : cfg.service.D01[myMethod+"_"+cmd+"_URL"], body : obj, method : myMethod } var result = {}; result.response = {}; result.response.resultData = []; if(params.method == "GET") { var genUrl = getUrl(params); // genUrl.push(genUrl[0].replace("8080","8081")); if(genUrl.length > 1) { // console.log("multi Send"); var multiSend = []; for(var i=0;i { request(params, function (error, response, body) { stats.sendRequest(node,cmd); if (error) { stats.reciveResponse(node,cmd,"Error"); resolve({ 'body' : body, 'err' : error }); } else { // stats.reciveResponse(node,cmd,"Success"); resolve({ 'body' : body, 'response' : response }); } }); }); }; function getUrl(params) { var returnData = []; var url = params.url; var fields = ""; var filter = ""; params.body = {}; params.body.commandId = []; params.body.commandId.push("1"); params.body.commandId.push("2"); params.body.commandId.push("3"); params.body.commandId.push("4"); params.body.commandId.push("5"); params.body.commandId.push("6"); params.body.commandId.push("7"); params.body.commandId.push("8"); // console.log(params.body); if(params.body) { var first = true; for (key in params.body) { if(key == "fields") fields = getFields(params.body.fields,first); else filter = getfilter(filter,key,params.body[key]); first = false; } } if(filter != "") { var maxFilterLength = cfg.Uri_length - url.length - fields.length + "?filter=(&)".length; if(maxFilterLength > filter.length) { returnData.push(url+"?filter=(&"+filter+")"+fields); }else { // while(maxFilterLength < filter.length) // { // returnData.push(url+"?filter=(&"+filter+")"+fields); // } } } // console.log(url); console.log(filter); // console.log(fields); return returnData; } function getFields(fields,first) { var returnData; var prefix; if(first) prefix = "?fields="; else prefix = "&fields="; returnData = prefix+fields; return returnData; } function getfilter(filter,key,newfilter) { var returnData = ""; console.log(key); console.log(newfilter); if(!Array.isArray(newfilter)) { returnData += filter+"("+key+"="+newfilter+")"; }else { for(var i=0;i