Blame view

ais-structure/src/modules/membercard/getMembership.ctrl.js 4.01 KB
8221da7a   Nattapon Wongpaet   update flow membe...
1
2
3
4
5
6
7
8
9
10
11
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.getMembership = async function (req, res, next) {
818cf50b   Nattapon Wongpaet   update get custom...
12
13
14
15
    var getCmd = "VIZCard";
    var sendCmd = "SearchCustomer";
    var sacf = "SACF";
    var method = constant.METHOD.GET;
8221da7a   Nattapon Wongpaet   update flow membe...
16
17

    var customerId = req.query.clientName+"@"+req.query.commandId;
818cf50b   Nattapon Wongpaet   update get custom...
18
19
20
21
22
23
24

    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)
8221da7a   Nattapon Wongpaet   update flow membe...
25
    {
1f123eb1   Nattapon Wongpaet   update post membe...
26
27
        log.addErrorSummary(req.query.clientName,method+"_"+getCmd,"null","Fail");
        log.log(err,'error'); 
8221da7a   Nattapon Wongpaet   update flow membe...
28
        var response = responseMsg.error(req,getCmd,40300);
b77690fa   Nattapon Wongpaet   update post custo...
29
        // res.status(200).json(response);
8221da7a   Nattapon Wongpaet   update flow membe...
30
31
32
    }else
    {        
        log.addSuccessSummary(req.query.clientName,method+"_"+getCmd,"null","Success");
1f123eb1   Nattapon Wongpaet   update post membe...
33
        var objectData = {
8221da7a   Nattapon Wongpaet   update flow membe...
34
35
            Username : "axviz",
            Password : "1234",
8221da7a   Nattapon Wongpaet   update flow membe...
36
37
            SystemName : "30",
            QueryType : "1",
1f123eb1   Nattapon Wongpaet   update post membe...
38
            CardId : req.query.commandId,
818cf50b   Nattapon Wongpaet   update get custom...
39
            firstName : req.query.firstName,
03f3be38   Nattapon Wongpaet   fix bugs
40
            lastName : req.query.lastName,
1f123eb1   Nattapon Wongpaet   update post membe...
41
            emailAddress : req.query.emailAddress,
887b2ec5   Nattapon Wongpaet   update put customer
42
            moblieNo : req.query.moblieNo
9a512329   Nattapon Wongpaet   no flow membership
43
44
        };

8221da7a   Nattapon Wongpaet   update flow membe...
45
        const result = await connection.requestSoapToSACF(objectData,sendCmd,constant.METHOD.POST);
818cf50b   Nattapon Wongpaet   update get custom...
46
47
48
49
50
        // console.log(result.err)

        if(typeof result.err === 'undefined'){  

            try {
887b2ec5   Nattapon Wongpaet   update put customer
51
                var resultSoap = parseJson.xml2json(result.body, {compact: true, spaces: 4})
818cf50b   Nattapon Wongpaet   update get custom...
52
                resultSoap = JSON.parse(resultSoap)
887b2ec5   Nattapon Wongpaet   update put customer
53
                resultSoap = resultSoap['soap:Envelope']['soap:Body']['tem:SearchCustomerResponse']['tem:SearchCustomerResult']['tem:CustomerSearchResult'];
818cf50b   Nattapon Wongpaet   update get custom...
54
55
56

                var resultSet = messageSOAP.soapToArray(req,resultSoap);
                stats.receiveSACFResponse(sacf,sendCmd,"Success");
03f3be38   Nattapon Wongpaet   fix bugs
57
58
                var response = responseMsg.success(req,getCmd,{resultData:resultSet.returnData,rowCount:resultSet.returnData.length});

818cf50b   Nattapon Wongpaet   update get custom...
59
                log.addSuccessSummary(sacf,method+"_"+sendCmd,response.resultCode,response.developerMessage);
9a512329   Nattapon Wongpaet   no flow membership
60
61
            }
            catch(error) {
b77690fa   Nattapon Wongpaet   update post custo...
62
63
64
                result.response = constant.RESPONSERESULT.ERROR

                stats.receiveSACFBadResponse(sacf,sendCmd);
887b2ec5   Nattapon Wongpaet   update put customer
65
66
67
                response = responseMsg.direct(req,getCmd,result.response);
                log.addErrorSummary(sacf,method+"_"+sendCmd,response.resultCode,response.developerMessage);

a0638777   Nattapon Wongpaet   add try catch and...
68
69
70
71
72
73
74
                var resultSet = {rawDataJson : ""}
            }
            
        } else {
            stats.receiveSACFResponse(sacf,sendCmd,"Error");
            response = responseMsg.direct(req,getCmd,result.response);
            log.addErrorSummary(sacf,method+"_"+sendCmd,response.resultCode,response.developerMessage);
9a512329   Nattapon Wongpaet   no flow membership
75
76
            var resultSet = {rawDataJson : ""}
        }
a0638777   Nattapon Wongpaet   add try catch and...
77

9a512329   Nattapon Wongpaet   no flow membership
78
        log.logDetail.addInput(sacf,method+"_"+sendCmd,constant.RESPONSE,result,resultSet.rawDataJson);
a0638777   Nattapon Wongpaet   add try catch and...
79
80
81
82
    }

    // console.log(response);
    log.logDetail.addOutput(sacf,method+"_"+getCmd,constant.RESPONSE,response,response); 
887b2ec5   Nattapon Wongpaet   update put customer
83
    res.status(200).json(response);
a0638777   Nattapon Wongpaet   add try catch and...
84
85
86
87
    next();
};


9a512329   Nattapon Wongpaet   no flow membership
88
function validator(req,cmd)
887b2ec5   Nattapon Wongpaet   update put customer
89
{
cf541103   Nattapon Wongpaet   update post custo...
90
    var list = [];
887b2ec5   Nattapon Wongpaet   update put customer
91
    list.push([true,"queryStr","commandId","int"]);
818cf50b   Nattapon Wongpaet   update get custom...
92
    list.push([true,"queryStr","clientName","string"]);
9a512329   Nattapon Wongpaet   no flow membership
93
    // list.push([true,"queryStr","lastName","string"]);
887b2ec5   Nattapon Wongpaet   update put customer
94
    // list.push([true,"queryStr","emailAddress","string"]);
9a512329   Nattapon Wongpaet   no flow membership
95
    // list.push([true,"queryStr","mobileNo","string"]);
887b2ec5   Nattapon Wongpaet   update put customer
96
    // list.push([false,"queryStr","mobileNo","string"]);
9a512329   Nattapon Wongpaet   no flow membership
97

887b2ec5   Nattapon Wongpaet   update put customer
98
    var err = validatorHelper(req,list);
9a512329   Nattapon Wongpaet   no flow membership
99
    if(err.length > 0)    
887b2ec5   Nattapon Wongpaet   update put customer
100
        stats.receiveBadRequest(req.method,cmd);    
9a512329   Nattapon Wongpaet   no flow membership
101
    else
887b2ec5   Nattapon Wongpaet   update put customer
102
        stats.receiveRequest(req.method,cmd);
9a512329   Nattapon Wongpaet   no flow membership
103

818cf50b   Nattapon Wongpaet   update get custom...
104
    return err;
9a512329   Nattapon Wongpaet   no flow membership
105
}
887b2ec5   Nattapon Wongpaet   update put customer

27aed231   Nattapon Wongpaet   update post membe...

9a512329   Nattapon Wongpaet   no flow membership

27aed231   Nattapon Wongpaet   update post membe...

887b2ec5   Nattapon Wongpaet   update put customer

818cf50b   Nattapon Wongpaet   update get custom...

887b2ec5   Nattapon Wongpaet   update put customer

818cf50b   Nattapon Wongpaet   update get custom...

9a512329   Nattapon Wongpaet   no flow membership

887b2ec5   Nattapon Wongpaet   update put customer

818cf50b   Nattapon Wongpaet   update get custom...

887b2ec5   Nattapon Wongpaet   update put customer

9a512329   Nattapon Wongpaet   no flow membership

887b2ec5   Nattapon Wongpaet   update put customer

9a512329   Nattapon Wongpaet   no flow membership

887b2ec5   Nattapon Wongpaet   update put customer

9a512329   Nattapon Wongpaet   no flow membership

887b2ec5   Nattapon Wongpaet   update put customer

9a512329   Nattapon Wongpaet   no flow membership

8221da7a   Nattapon Wongpaet   update flow membe...

8221da7a   Nattapon Wongpaet   update flow membe...

887b2ec5   Nattapon Wongpaet   update put customer

818cf50b   Nattapon Wongpaet   update get custom...

8221da7a   Nattapon Wongpaet   update flow membe...

8221da7a   Nattapon Wongpaet   update flow membe...

1f123eb1   Nattapon Wongpaet   update post membe...

8221da7a   Nattapon Wongpaet   update flow membe...