vizCard.ctrl.js
4.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
var parseJson = require('xml-js');
var stats = require('../helper/stats.js');
var messageSOAP = require('../helper/messageSOAP.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.vizcard = async function (req, res, next) {
var getCmd = "VIZCard";
var sendCmd = "SearchCustomer";
var sacf = "SACF";
var method = constant.METHOD.GET;
if(req.query.clientName && req.query.commandId){
var customerId = req.query.clientName+"@"+req.query.commandId;
}
log.startlog(req,method+"_"+getCmd,req.query.commandId,customerId);
log.logDetail.addInput(req,req.query.clientName,method+"_"+getCmd,constant.REQUEST,req,req.body);
var err = validator(req,getCmd);
if(err.length > 0)
{
log.addErrorSummary(req,req.query.clientName,method+"_"+getCmd,"null","Fail");
// log.log(err,'error');
var response = responseMsg.error(req,getCmd,40300);
// res.status(200).json(response);
}else
{
log.addSuccessSummary(req,req.query.clientName,method+"_"+getCmd,"null","Success");
var objectData = {
Username : "axviz",
Password : "1234",
SystemName : "30",
QueryType : "1",
CardId : req.query.commandId,
firstName : req.query.firstName,
lastName : req.query.lastName,
emailAddress : req.query.emailAddress,
moblieNo : req.query.moblieNo
};
const result = await connection.requestSoapToSACF(objectData,sendCmd,constant.METHOD.POST);
// console.log(result.err)
if(typeof result.err === 'undefined'){
try {
var resultSoap = parseJson.xml2json(result.body, {compact: true, spaces: 4})
resultSoap = JSON.parse(resultSoap)
resultSoap = resultSoap['soap:Envelope']['soap:Body']['tem:SearchCustomerResponse']['tem:SearchCustomerResult']['tem:CustomerSearchResult'];
var resultSet = messageSOAP.soapToArray(req,resultSoap);
stats.receiveSACFResponse(sacf,sendCmd,"Success");
var response = responseMsg.success(req,getCmd,{resultData:resultSet.returnData,rowCount:resultSet.returnData.length});
log.addSuccessSummary(req,sacf,method+"_"+sendCmd,response.resultCode,response.developerMessage);
}
catch(error) {
log.log(error,'error')
stats.receiveSACFBadResponse(sacf,sendCmd);
response = responseMsg.error(req,getCmd,50000);
log.addErrorSummary(req,sacf,method+"_"+sendCmd,response.resultCode,response.developerMessage);
var resultSet = {rawDataJson : ""}
}
} else {
stats.receiveSACFResponse(sacf,sendCmd,"Error");
response = responseMsg.error(req,getCmd,50000);
// log.addErrorSummary(sacf,method+"_"+sendCmd,response.resultCode,response.developerMessage);
var resultSet = {rawDataJson : ""}
}
log.logDetail.addInput(req,sacf,method+"_"+sendCmd,constant.RESPONSE,result,resultSet.rawDataJson);
}
// console.log(response);
log.logDetail.addOutput(req,sacf,method+"_"+getCmd,constant.RESPONSE,response,response);
res.status(200).json(response);
next();
};
function validator(req,cmd)
{
var list = [];
list.push([true,"queryStr","commandId","string"]);
list.push([true,"queryStr","clientName","string"]);
// list.push([true,"queryStr","lastName","string"]);
// list.push([true,"queryStr","emailAddress","string"]);
// list.push([true,"queryStr","mobileNo","string"]);
// list.push([false,"queryStr","mobileNo","string"]);
var err = validatorHelper(req,list);
if(err.length > 0)
stats.receiveBadRequest(req.method,cmd);
else
stats.receiveRequest(req.method,cmd);
return err;
}