Commit 479b9d986ddedc08a951223c1f8ebfca2b8d0df4
1 parent
4bcb9ffa
Exists in
master
and in
1 other branch
update use constants
Showing
4 changed files
with
161 additions
and
79 deletions
Show diff stats
ais-structure/src/config/express.js
| ... | ... | @@ -19,6 +19,7 @@ var memCache = require('memory-cache'); |
| 19 | 19 | var jwtDecode = require('jwt-decode'); |
| 20 | 20 | var uuid = require('uuid'); |
| 21 | 21 | var log = require('../modules/helper/log.js'); |
| 22 | +var responseMsg = require('../modules/helper/responseMsg.js'); | |
| 22 | 23 | |
| 23 | 24 | var expireTimeDef = 30 * 60 * 1000; //minutes * seconds * 1000 ==> ms |
| 24 | 25 | memCache.put('expires-ms-def', expireTimeDef); |
| ... | ... | @@ -271,7 +272,14 @@ module.exports = function () { |
| 271 | 272 | app.use( function( req, res, next ) { |
| 272 | 273 | // console.log("end"); |
| 273 | 274 | // console.log(req.res.resBody); |
| 274 | - log.logSummary(JSON.parse(req.res.resBody)); | |
| 275 | + if(req.res.resBody) | |
| 276 | + { | |
| 277 | + log.logSummary(JSON.parse(req.res.resBody)); | |
| 278 | + }else | |
| 279 | + { | |
| 280 | + res.status(200).json(responseMsg.error(req,cmd,40400)); | |
| 281 | + } | |
| 282 | + next(); | |
| 275 | 283 | } ); |
| 276 | 284 | |
| 277 | 285 | return app; | ... | ... |
ais-structure/src/modules/helper/connection.js
| ... | ... | @@ -4,6 +4,7 @@ var stats = require('../helper/stats.js'); |
| 4 | 4 | var request = require('request'); |
| 5 | 5 | var messageSOAP = require('../helper/messageSOAP.js'); |
| 6 | 6 | var log = require('../helper/log.js'); |
| 7 | +var constants = require('../helper/constants.js'); | |
| 7 | 8 | |
| 8 | 9 | var connection = []; |
| 9 | 10 | |
| ... | ... | @@ -28,41 +29,42 @@ connection.requestSoapToSACF = async function (soap,cmd,myMethod) { |
| 28 | 29 | curRetry : 1 |
| 29 | 30 | } |
| 30 | 31 | |
| 31 | - var funStats = function(){ | |
| 32 | + var funS = function(){ | |
| 32 | 33 | stats.sendSACFRequest(service.Name,cmd); |
| 33 | - log.logDetail.addOutput(service.Name,cmd,"Request",params,soap); | |
| 34 | + log.logDetail.addOutput(service.Name,cmd,constants.REQUEST,params,soap); | |
| 34 | 35 | }; |
| 35 | 36 | |
| 36 | 37 | var funStats = { |
| 37 | - start : funStats, | |
| 38 | + start : funS, | |
| 38 | 39 | error : function(response){log.addErrorSummary(service.Name,cmd,response);} |
| 39 | 40 | }; |
| 40 | 41 | |
| 41 | 42 | |
| 42 | 43 | var result = await asyncRequest(params,objectData,funStats); |
| 43 | 44 | |
| 44 | - if(result.err) | |
| 45 | - { | |
| 46 | - result.response = {}; | |
| 47 | - result.response.resultCode = "50000"; | |
| 48 | - | |
| 49 | - //ETIMEDOUT = timeout | |
| 50 | - //ECONNREFUSED = servercode | |
| 51 | - | |
| 52 | - if(result.err.code == 'ETIMEDOUT'){ | |
| 53 | - result.response.resultCode = "50003"; | |
| 54 | - result.response.resultDescription = "Timeout"; | |
| 55 | - } else if(result.err.code == 'ECONNREFUSED'){ | |
| 56 | - result.response.resultCode = "50002"; | |
| 57 | - result.response.resultDescription = "Reject"; | |
| 58 | - } else { | |
| 59 | - result.response.resultCode = "50000"; | |
| 60 | - result.response.resultDescription = "System error"; | |
| 61 | - } | |
| 62 | - stats.receiveResponse(cfg.service.SACF.Name,cmd,"Error"); | |
| 63 | - } | |
| 45 | + // if(result.err) | |
| 46 | + // { | |
| 47 | + // // result.response = {}; | |
| 48 | + // // result.response.resultCode = constants.RESPONSERESULT.ERROR; | |
| 64 | 49 | |
| 65 | - return result; | |
| 50 | + | |
| 51 | + // if(result.err.code == constants.RESPONSECONN.STATS.ETIMEDOUT){ | |
| 52 | + // result.response = constants.RESPONSECONN.MESSAGE.ETIMEDOUT; | |
| 53 | + // // result.response.resultCode = "50003"; | |
| 54 | + // // result.response.resultDescription = "Timeout"; | |
| 55 | + // } else if(result.err.code == constants.RESPONSECONN.STATS.ECONNREFUSED){ | |
| 56 | + // result.response = constants.RESPONSECONN.MESSAGE.ECONNREFUSED; | |
| 57 | + // // result.response.resultCode = "50002"; | |
| 58 | + // // result.response.resultDescription = "Reject"; | |
| 59 | + // } else { | |
| 60 | + // result.response = constants.RESPONSECONN.MESSAGE.ERROR; | |
| 61 | + // // result.response.resultCode = "50000"; | |
| 62 | + // // result.response.resultDescription = "System error"; | |
| 63 | + // } | |
| 64 | + // stats.receiveResponse(service.Name,cmd,constants.ERROR); | |
| 65 | + // } | |
| 66 | + | |
| 67 | + return checkResponse(result);; | |
| 66 | 68 | }; |
| 67 | 69 | |
| 68 | 70 | connection.requestJsonToD01 = async function (obj,cmd,myMethod) { |
| ... | ... | @@ -87,7 +89,7 @@ connection.requestJsonToD01 = async function (obj,cmd,myMethod) { |
| 87 | 89 | |
| 88 | 90 | var funStats = function(){ |
| 89 | 91 | stats.sendRestRequest(service.Name,myMethod,cmd); |
| 90 | - log.logDetail.addOutput(service.Name,cmd,"Request",params,obj); | |
| 92 | + log.logDetail.addOutput(service.Name,cmd,constants.Request,params,obj); | |
| 91 | 93 | }; |
| 92 | 94 | |
| 93 | 95 | var funStats = { |
| ... | ... | @@ -103,7 +105,7 @@ connection.requestJsonToD01 = async function (obj,cmd,myMethod) { |
| 103 | 105 | |
| 104 | 106 | |
| 105 | 107 | |
| 106 | - if(params.method == "GET") | |
| 108 | + if(params.method == constants.METHOD.GET) | |
| 107 | 109 | { |
| 108 | 110 | var genUrl = getUrl(params,service[myMethod+"_Limit"]); |
| 109 | 111 | // genUrl.push(genUrl[0].replace("8080","8081")); |
| ... | ... | @@ -149,8 +151,9 @@ connection.requestJsonToD01 = async function (obj,cmd,myMethod) { |
| 149 | 151 | |
| 150 | 152 | if(!result.err) |
| 151 | 153 | { |
| 152 | - result.response.resultCode = "20000"; | |
| 153 | - result.response.developerMessage = "Success"; | |
| 154 | + result.response = constants.RESPONSECONN.MESSAGE.SUCCESS; | |
| 155 | + // result.response.resultCode = "20000"; | |
| 156 | + // result.response.developerMessage = "Success"; | |
| 154 | 157 | } |
| 155 | 158 | |
| 156 | 159 | |
| ... | ... | @@ -172,7 +175,7 @@ connection.requestJsonToD01 = async function (obj,cmd,myMethod) { |
| 172 | 175 | } |
| 173 | 176 | |
| 174 | 177 | |
| 175 | - }else if(params.method == "POST") | |
| 178 | + }else if(params.method == constants.METHOD.POST) | |
| 176 | 179 | { |
| 177 | 180 | params.body = JSON.stringify(params.body); |
| 178 | 181 | |
| ... | ... | @@ -194,44 +197,43 @@ connection.requestJsonToD01 = async function (obj,cmd,myMethod) { |
| 194 | 197 | result.err = "Missing resultDescription"; |
| 195 | 198 | } |
| 196 | 199 | |
| 197 | - if(result.err) | |
| 198 | - { | |
| 199 | - result.response = {}; | |
| 200 | - result.response.resultCode = "50000"; | |
| 201 | - | |
| 202 | - //ETIMEDOUT = timeout | |
| 203 | - //ECONNREFUSED = servercode | |
| 204 | - | |
| 205 | - if(result.err.code == 'ETIMEDOUT'){ | |
| 206 | - result.response.resultCode = "50003"; | |
| 207 | - result.response.resultDescription = "Timeout"; | |
| 208 | - } else if(result.err.code == 'ECONNREFUSED'){ | |
| 209 | - result.response.resultCode = "50002"; | |
| 210 | - result.response.resultDescription = "Reject"; | |
| 211 | - } else { | |
| 212 | - if(result.err.indexOf("Missing") != -1){ | |
| 213 | - result.response.resultCode = "40300"; | |
| 214 | - result.response.resultDescription = result.err; | |
| 215 | - } else { | |
| 216 | - result.response.resultCode = "50000"; | |
| 217 | - result.response.resultDescription = "System error"; | |
| 218 | - } | |
| 219 | - } | |
| 220 | - | |
| 221 | - if(result.response.resultCode == "40300"){ | |
| 222 | - stats.receiveBadRestResponse(service.Name,params.method,cmd); | |
| 223 | - } else { | |
| 224 | - stats.receiveResponse(service.Name,cmd,"Error"); | |
| 225 | - } | |
| 200 | + | |
| 201 | + // if(result.err) | |
| 202 | + // { | |
| 203 | + // result.response = {}; | |
| 204 | + // result.response.resultCode = "50000"; | |
| 205 | + | |
| 206 | + // if(result.err.code == 'ETIMEDOUT'){ | |
| 207 | + // result.response.resultCode = "50003"; | |
| 208 | + // result.response.resultDescription = "Timeout"; | |
| 209 | + // } else if(result.err.code == 'ECONNREFUSED'){ | |
| 210 | + // result.response.resultCode = "50002"; | |
| 211 | + // result.response.resultDescription = "Reject"; | |
| 212 | + // } else { | |
| 213 | + // if(result.err.indexOf("Missing") != -1){ | |
| 214 | + // result.response.resultCode = "40300"; | |
| 215 | + // result.response.resultDescription = result.err; | |
| 216 | + // } else { | |
| 217 | + // result.response.resultCode = "50000"; | |
| 218 | + // result.response.resultDescription = "System error"; | |
| 219 | + // } | |
| 220 | + // } | |
| 221 | + | |
| 222 | + // if(result.response.resultCode == "40300"){ | |
| 223 | + // stats.receiveBadRestResponse(service.Name,params.method,cmd); | |
| 224 | + // } else { | |
| 225 | + // stats.receiveResponse(service.Name,cmd,"Error"); | |
| 226 | + // } | |
| 226 | 227 | |
| 227 | - } | |
| 228 | + // } | |
| 228 | 229 | |
| 229 | - return result; | |
| 230 | + return checkResponse(result); | |
| 230 | 231 | |
| 231 | 232 | |
| 232 | 233 | }; |
| 233 | 234 | |
| 234 | 235 | |
| 236 | + | |
| 235 | 237 | async function parallelRequest(multiParams,objectData,funStat) |
| 236 | 238 | { |
| 237 | 239 | |
| ... | ... | @@ -488,4 +490,37 @@ function arrayUrl(arrUrl,url,filter,fields,freeSpace,arrData) |
| 488 | 490 | return arrUrl; |
| 489 | 491 | } |
| 490 | 492 | |
| 493 | +function checkResponse(result) | |
| 494 | +{ | |
| 495 | + if(result.err) | |
| 496 | + { | |
| 497 | + if(result.err.code == constants.RESPONSECONN.STATS.ETIMEDOUT){ | |
| 498 | + result.response = constants.RESPONSECONN.MESSAGE.ETIMEDOUT; | |
| 499 | + // result.response.resultCode = "50003"; | |
| 500 | + // result.response.resultDescription = "Timeout"; | |
| 501 | + } else if(result.err.code == constants.RESPONSECONN.STATS.ECONNREFUSED){ | |
| 502 | + result.response = constants.RESPONSECONN.MESSAGE.ECONNREFUSED; | |
| 503 | + // result.response.resultCode = "50002"; | |
| 504 | + // result.response.resultDescription = "Reject"; | |
| 505 | + } else { | |
| 506 | + | |
| 507 | + if(result.err.indexOf(constants.RESPONSECONN.STATS.MISSING) != -1){ | |
| 508 | + result.response.resultCode = constants.RESPONSERESULT.MISSING_INVALID.resultCode; | |
| 509 | + result.response.resultDescription = result.err; | |
| 510 | + } else { | |
| 511 | + result.response = constants.RESPONSECONN.MESSAGE.ERROR; | |
| 512 | + } | |
| 513 | + } | |
| 514 | + | |
| 515 | + if(result.response.resultCode == constants.RESPONSERESULT.MISSING_INVALID.resultCode){ | |
| 516 | + stats.receiveBadRestResponse(service.Name,params.method,cmd); | |
| 517 | + } else { | |
| 518 | + stats.receiveResponse(service.Name,cmd,constants.ERROR); | |
| 519 | + } | |
| 520 | + | |
| 521 | + } | |
| 522 | + | |
| 523 | + return result; | |
| 524 | +} | |
| 525 | + | |
| 491 | 526 | module.exports = connection; |
| 492 | 527 | \ No newline at end of file | ... | ... |
ais-structure/src/modules/helper/constants.js
| 1 | 1 | module.exports = Object.freeze({ |
| 2 | 2 | REQUEST: 'Request', |
| 3 | 3 | RESPONSE: 'Response', |
| 4 | + SUCCESS: 'Success', | |
| 5 | + ERROR: 'Error', | |
| 4 | 6 | METHOD:{ |
| 5 | 7 | GET : 'GET', |
| 6 | 8 | POST : 'POST', |
| 7 | 9 | PUT : 'PUT', |
| 8 | 10 | DELETE : 'DELETE' |
| 9 | 11 | }, |
| 12 | + RESPONSECONN:{ | |
| 13 | + STATS:{ | |
| 14 | + ETIMEDOUT:'ETIMEDOUT', | |
| 15 | + ECONNREFUSED : 'ECONNREFUSED', | |
| 16 | + MISSING : 'Missing', | |
| 17 | + }, | |
| 18 | + MESSAGE:{ | |
| 19 | + ETIMEDOUT:{ | |
| 20 | + resultCode : '50003', | |
| 21 | + resultDescription : 'Timeout' | |
| 22 | + }, | |
| 23 | + ECONNREFUSED:{ | |
| 24 | + resultCode : '50002', | |
| 25 | + resultDescription : 'Reject' | |
| 26 | + }, | |
| 27 | + ERROR:{ | |
| 28 | + resultCode : '50000', | |
| 29 | + resultDescription : 'System error' | |
| 30 | + }, | |
| 31 | + SUCCESS:{ | |
| 32 | + resultCode : '20000', | |
| 33 | + resultDescription : 'Success' | |
| 34 | + } | |
| 35 | + } | |
| 36 | + }, | |
| 10 | 37 | RESPONSERESULT:{ |
| 11 | 38 | SUCCESS:{ |
| 12 | 39 | resultCode : '20000', |
| ... | ... | @@ -27,6 +54,10 @@ module.exports = Object.freeze({ |
| 27 | 54 | ERROR:{ |
| 28 | 55 | resultCode : '50000', |
| 29 | 56 | resultDescription : 'System error' |
| 57 | + }, | |
| 58 | + UNKNOW:{ | |
| 59 | + resultCode : '40400', | |
| 60 | + developerMessage : 'Unknown URL' | |
| 30 | 61 | } |
| 31 | 62 | } |
| 32 | 63 | }); |
| 33 | 64 | \ No newline at end of file | ... | ... |
ais-structure/src/modules/helper/responseMsg.js
| 1 | 1 | var stats = require('../helper/stats.js'); |
| 2 | +var constants = require('../helper/constants.js'); | |
| 2 | 3 | var responseMsg = []; |
| 3 | 4 | |
| 4 | 5 | |
| 5 | 6 | responseMsg.error = function (req,cmd,code){ |
| 6 | 7 | |
| 7 | - var devMsg = "System error"; | |
| 8 | - switch(code) { | |
| 8 | + // var devMsg = "System error"; | |
| 9 | + var response; | |
| 10 | + switch(code) { | |
| 11 | + case 40300: | |
| 12 | + response = constants.RESPONSERESULT.MISSING_INVALID | |
| 13 | + break; | |
| 14 | + case 40401: | |
| 15 | + response = constants.RESPONSERESULT.DATA_NOT_FOUND | |
| 16 | + break; | |
| 17 | + case 40301: | |
| 18 | + response = constants.RESPONSERESULT.DATA_EXIST | |
| 19 | + break; | |
| 9 | 20 | case 50000: |
| 10 | - devMsg = "System error"; | |
| 21 | + response = constants.RESPONSERESULT.ERROR; | |
| 11 | 22 | break; |
| 12 | - case 40300: | |
| 13 | - devMsg = "Missing or invalid parameter"; | |
| 23 | + case 40400: | |
| 24 | + response = constants.RESPONSERESULT.UNKNOW; | |
| 14 | 25 | break; |
| 15 | 26 | default: |
| 16 | - code = 50000; | |
| 17 | - devMsg = "System error"; | |
| 27 | + response = constants.RESPONSERESULT.ERROR; | |
| 18 | 28 | } |
| 19 | 29 | |
| 20 | - var response = { | |
| 21 | - resultCode : code.toString(), | |
| 22 | - developerMessage : devMsg | |
| 23 | - }; | |
| 24 | 30 | |
| 25 | - stats.sendResponse(req.method,cmd,"Error"); | |
| 31 | + stats.sendResponse(req.method,cmd,constants.ERROR); | |
| 26 | 32 | return response; |
| 27 | 33 | }; |
| 28 | 34 | |
| 29 | 35 | responseMsg.success = function (req,cmd,data){ |
| 30 | 36 | |
| 31 | 37 | var response = { |
| 32 | - resultCode : "20000", | |
| 33 | - developerMessage : "Success", | |
| 38 | + resultCode : constants.RESPONSERESULT.SUCCESS.resultCode, | |
| 39 | + developerMessage : constants.RESPONSERESULT.SUCCESS.resultDescription, | |
| 34 | 40 | resultData : data.resultData, |
| 35 | 41 | rowCount : data.resultData.length |
| 36 | 42 | }; |
| 37 | 43 | |
| 38 | - stats.sendResponse(req.method,cmd,"Success"); | |
| 44 | + stats.sendResponse(req.method,cmd,constants.SUCCESS); | |
| 39 | 45 | return response; |
| 40 | 46 | }; |
| 41 | 47 | |
| ... | ... | @@ -48,16 +54,18 @@ responseMsg.direct = function (req,cmd,result,data) |
| 48 | 54 | |
| 49 | 55 | |
| 50 | 56 | |
| 51 | - if(result.resultCode == "20000") | |
| 57 | + if(result.resultCode == constants.RESPONSERESULT.SUCCESS.resultCode) | |
| 52 | 58 | { |
| 53 | - stats.sendResponse(req.method,cmd,"Success"); | |
| 59 | + stats.sendResponse(req.method,cmd,constants.SUCCESS); | |
| 54 | 60 | if(data) |
| 55 | 61 | response = Object.assign(response,data); |
| 56 | 62 | } |
| 57 | 63 | else |
| 58 | - stats.sendResponse(req.method,cmd,"Error"); | |
| 64 | + stats.sendResponse(req.method,cmd,constants.ERROR); | |
| 59 | 65 | |
| 60 | 66 | return response; |
| 61 | 67 | }; |
| 62 | 68 | |
| 69 | + | |
| 70 | + | |
| 63 | 71 | module.exports = responseMsg; |
| 64 | 72 | \ No newline at end of file | ... | ... |