Blame view

ais-structure/src/modules/customer/postCustomer.ctrl.js 4.04 KB
81e85e64   sumatek   update customer
1
2
3
4
var stats = require('../helper/stats.js'); 
var validatorHelper = require('../helper/validator.js');
var connection = require('../helper/connection.js');
var responseMsg = require('../helper/responseMsg.js');
a55a3d02   Nattapon Wongpaet   update post custo...
5
var log = require('../helper/log.js');
3d36a443   Nattapon Wongpaet   add constant
6
var constant = require('../helper/constants.js')
81e85e64   sumatek   update customer
7
8
9
10

exports.postCustomer = async function (req, res, next){
    var getCmd = "Customer";
    var sendCmd = "Customer";
a55a3d02   Nattapon Wongpaet   update post custo...
11
    var d01 = "D01";
79d9e534   Nattapon Wongpaet   update post customer
12
    var method = constant.METHOD.POST;
a55a3d02   Nattapon Wongpaet   update post custo...
13

d0a8d282   sumatek   fix bug customer
14
    if(req.body.user.userData && req.body.user.userType){
79d9e534   Nattapon Wongpaet   update post customer
15
16
17
        var customerId = req.body.user.userData+"@"+req.body.user.userType;
    }

1f123eb1   Nattapon Wongpaet   update post membe...
18
19
    log.startlog(method+"_"+getCmd,req.body.commandId,customerId);
    log.logDetail.addInput(req.body.clientName,method+"_"+getCmd,constant.REQUEST,req,req.body);
81e85e64   sumatek   update customer
20

b77690fa   Nattapon Wongpaet   update post custo...
21
    var err = validator(req,getCmd);
81e85e64   sumatek   update customer
22
   
81e85e64   sumatek   update customer
23
24
    if(err.length > 0)
    {
1f123eb1   Nattapon Wongpaet   update post membe...
25
        log.addErrorSummary(req.body.clientName,method+"_"+getCmd,"null",constant.FAIL);
81e85e64   sumatek   update customer
26
27
28
29
        console.log(err);
        var response = responseMsg.error(req,getCmd,40300);
    }else
    {
1f123eb1   Nattapon Wongpaet   update post membe...
30
        log.addSuccessSummary(req.body.clientName,method+"_"+getCmd,"null",constant.SUCCESS);
81e85e64   sumatek   update customer
31
        var objectData = {
79d9e534   Nattapon Wongpaet   update post customer
32
            customerId      : customerId,
81e85e64   sumatek   update customer
33
34
35
36
37
38
39
40
41
            userIdData      : req.body.user.userData,
            userIdType      : req.body.user.userType,
            firstName       : req.body.firstName,
            lastName        : req.body.lastName,
            mobile          : req.body.mobile,
            emailAddress    : req.body.emailAddress,
            dateCreated     : req.body.dateCreated
        };

1f123eb1   Nattapon Wongpaet   update post membe...
42
43
        const result = await connection.requestJsonToD01(objectData,sendCmd,method);
        log.logDetail.addInput(d01,method+"_"+sendCmd,constant.RESPONSE,result,result.response);
81e85e64   sumatek   update customer
44
        if(typeof result.err === 'undefined'){
9354f8c5   sumatek   fix bug
45
            // console.log(result.response.body);
3cac9636   Nattapon Wongpaet   update post customer
46
            var resultObj = result.response;
cf541103   Nattapon Wongpaet   update post custo...
47
            if(resultObj.resultCode.startsWith("2")){
584b2672   Nattapon Wongpaet   update handler er...
48
                stats.receiveRestResponse(d01,method,sendCmd,constant.SUCCESS);
a55a3d02   Nattapon Wongpaet   update post custo...
49
                var response = responseMsg.direct(req,getCmd,resultObj,{customerId:objectData.customerId});
1f123eb1   Nattapon Wongpaet   update post membe...
50
                log.addSuccessSummary(d01,method+"_"+sendCmd,response.resultCode,response.developerMessage);
14b2d0f1   Nattapon Wongpaet   update handler error
51
            } else if(resultObj.resultCode.startsWith("404")){
cf541103   Nattapon Wongpaet   update post custo...
52
                stats.receiveRestResponse(d01,method,sendCmd,constant.RESPONSERESULT.DATA_NOT_FOUND.developerMessage);
14b2d0f1   Nattapon Wongpaet   update handler error
53
                var response = responseMsg.direct(req,getCmd,resultObj);
a0638777   Nattapon Wongpaet   add try catch and...
54
                log.addErrorSummary(d01,method+"_"+sendCmd,resultObj.resultCode,resultObj.developerMessage);
14b2d0f1   Nattapon Wongpaet   update handler error
55
            } else if(resultObj.resultCode.startsWith("5")){
584b2672   Nattapon Wongpaet   update handler er...
56
                stats.receiveRestResponse(d01,method,sendCmd,constant.ERROR);
a55a3d02   Nattapon Wongpaet   update post custo...
57
                var response = responseMsg.direct(req,getCmd,resultObj);
a0638777   Nattapon Wongpaet   add try catch and...
58
                log.addErrorSummary(d01,method+"_"+sendCmd,resultObj.resultCode,resultObj.developerMessage);
14b2d0f1   Nattapon Wongpaet   update handler error
59
60
61
            } else {
                stats.receiveRestResponse(d01,method,sendCmd,constant.ERROR);
                var response = responseMsg.error(req,getCmd,50000);
81e85e64   sumatek   update customer
62
            }
53004544   Nattapon Wongpaet   update customer
63
        } else {
584b2672   Nattapon Wongpaet   update handler er...
64
65
            stats.receiveRestResponse(d01,method,sendCmd,constant.ERROR);
            var response = responseMsg.error(req,getCmd,50000);
81e85e64   sumatek   update customer
66
        }
81e85e64   sumatek   update customer
67
68
    }

1f123eb1   Nattapon Wongpaet   update post membe...
69
    log.logDetail.addOutput(req.body.clientName,method+"_"+getCmd,constant.RESPONSE,response,response); 
81e85e64   sumatek   update customer
70
    res.status(200).json(response);
a55a3d02   Nattapon Wongpaet   update post custo...
71
    next();
81e85e64   sumatek   update customer
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
};

function validator(req,api)
{
    // console.log(req.body);
    var list = [];
    list.push([true,"body","user.userType","string"]);
    list.push([true,"body","user.userData","string"]);
    list.push([true,"body","commandId","string"]);
    list.push([true,"body","clientName","string"]);
    list.push([true,"body","firstName","string"]);
    list.push([true,"body","lastName","string"]);
    list.push([true,"body","mobile","string"]);
    list.push([true,"body","emailAddress","string"]);
    var err = validatorHelper(req,list,api)

a55a3d02   Nattapon Wongpaet   update post custo...
88
89
    if(err.length > 0)
        stats.receiveBadRequest(req.method,api);    
81e85e64   sumatek   update customer
90
    else
a55a3d02   Nattapon Wongpaet   update post custo...
91
        stats.receiveRequest(req.method,api);
81e85e64   sumatek   update customer
92
93
94

    return err;
}