var stats = require('../helper/stats.js'); var validatorHelper = require('../helper/validator.js'); var connection = require('../helper/connection.js'); var responseMsg = require('../helper/responseMsg.js'); var log = require('../helper/log.js'); var constant = require('../helper/constants.js') exports.customer = async function (req, res, next) { var getCmd = "Customer"; var sendCmd = "Customer"; var d01 = "D01" var method = constant.METHOD.GET console.log(req.params); if(req.params.customerId){ var customerId = req.params.customerId } else if(req.params.userData && req.params.userType){ var customerId = req.params.userData+"@"+req.params.userType } else if(req.query.clientName && req.query.commandId){ var customerId = req.query.clientName+"@"+req.query.commandId; } log.startlog(method+"_"+getCmd,req.query.commandId,customerId); log.logDetail.addInput(req.query.clientName,method+"_"+getCmd,constant.REQUEST,req,req.body); var err = validator(req,getCmd); if(err.length > 0) { log.addErrorSummary(req.query.clientName,method+"_"+getCmd,"null",constant.FAIL); log.log(err,'error'); var response = responseMsg.error(req,getCmd,40300); // res.status(200).json(response); }else { log.addSuccessSummary(req.query.clientName,method+"_"+getCmd,"null",constant.SUCCESS); var objectData = Object.assign(req.query,req.params); const result = await connection.requestJsonToD01(objectData,sendCmd,method); // console.log(Object.keys(result)) log.logDetail.addInput(d01,method+"_"+sendCmd,constant.RESPONSE,result,result.response); if(typeof result.err === 'undefined'){ // console.log(result.response); var resultObj = result.response; if(resultObj.resultCode.startsWith("2")) { if(resultObj.resultData && resultObj.resultData.length>0) { stats.receiveRestResponse(d01,method,sendCmd,constant.SUCCESS); var response = responseMsg.success(req,getCmd,resultObj); log.addSuccessSummary(d01,method+"_"+sendCmd,response.resultCode,response.developerMessage); }else { stats.receiveRestResponse(d01,method,sendCmd,constant.RESPONSERESULT.DATA_NOT_FOUND.developerMessage); var response = responseMsg.error(req,getCmd,40300); log.addErrorSummary(d01,method+"_"+sendCmd,response.resultCode,response.developerMessage); } } else { stats.receiveRestResponse(d01,method,sendCmd,constant.ERROR); var response = responseMsg.direct(req,getCmd,resultObj); log.addErrorSummary(d01,method+"_"+sendCmd,resultObj.resultCode,resultObj.developerMessage); } } else { stats.receiveRestResponse(d01,method,sendCmd,constant.ERROR); var response = responseMsg.error(req,getCmd,50000); // log.addErrorSummary(d01,method+"_"+sendCmd,response.resultCode,response.developerMessage); } } log.logDetail.addOutput(req.query.clientName,method+"_"+getCmd,constant.RESPONSE,response,response); res.status(200).json(response); next(); }; function validator(req,api) { var list = []; list.push([true,"queryStr","commandId","String"]); list.push([true,"queryStr","clientName","String"]); var err = validatorHelper(req,list,api) // if((typeof req.query["userType"] !== 'undefined') && (typeof req.query["userData"] === 'undefined')) // { // var errDes = { // Param : "userData", // Reason : "Missing" // } // err.push(errDes); // } if(err.length > 0) stats.receiveBadRequest(req.method,api); else stats.receiveRequest(req.method,api); return err; }