diff --git a/app.js b/app.js index 768fca8..9c5689b 100644 --- a/app.js +++ b/app.js @@ -4,6 +4,7 @@ const app = express(); const conf = require('utils/config'); const utils = require('utils/utils'); var log = require('./utils/log'); +var constants = require('./utils/constants'); var logg = require('commonlog-kb').init(conf.get("configlog"),app); @@ -143,7 +144,7 @@ app.use(function( req, res, next ) { }); app.use( function( req, res, next ) { - // log.startEC(req); + log.startEC(req); req = utils.findQueryString(req); next(); }); @@ -174,6 +175,17 @@ app.use( function( req, res, next ) { }else { + var response = constants.RESPONSERESULT.UNKNOW; + + log.startlog(req,cmd,'session','identity'); + log.detailRequestFE(req); + stat.receiveUnknow(); + log.addErrorSummary(req,"Unknow",req.method+"_"+"Unknow",result) + res.status(200).json(response); + log.logSummary(req,response); + + + // var response = responseMsg.unknow(req); // log.startlog(req,req.method+"_"+"Unknow","Unknow","Unknow"); @@ -185,7 +197,7 @@ app.use( function( req, res, next ) { // log.logSummary(req,response); } - // log.endEC(req,res); + log.endEC(req,res); next(); } ); diff --git a/controllers/preference/index.js b/controllers/preference/index.js index 487dfae..8ba779f 100644 --- a/controllers/preference/index.js +++ b/controllers/preference/index.js @@ -4,28 +4,43 @@ let connection = require("../../utils/mongoDB") var utils = require('../../utils/utils'); var stats = require('../../utils/stats'); var log = require('../../utils/log'); +var constants = require('../../utils/constants'); +var allow = ['general','holiday','shift','service','job','specialist','room']; + +router.get('/:collection',async function (req, res,next) { + var cmd = req.params.collection; + + var checkStart = start(req,cmd); + if(checkStart.err) + { + var result = checkStart.err; + end(req,"Unknow"); + + }else + { + var collection = req.params.collection; + + var query = Object.assign(req.params, req.query); + var filter = await utils.getQueryFilter(query.filter); + var result = await connection.reqMongo(req,req.method,filter,collection) + end(req,cmd); + } -router.get('/:collection',async function (req, res,next) -{ - start(req) - var collection = req.params.collection; - - var query = Object.assign(req.params, req.query); - var filter = await utils.getQueryFilter(query.filter); - var result = await connection.reqMongo(req,req.method,filter,collection) - end(req); res.status(200).json(result); next(); }); router.post('/:collection',async function (req, res,next) { + start(req) var collection = req.params.collection; var query = req.body; var result = await connection.reqMongo(req,req.method,query,collection) + + end(req); res.status(200).json(result); next(); }); @@ -42,16 +57,25 @@ router.post('/:collection',async function (req, res,next) { // res.status(200).json(result); // }); -function start(req) { - var cmd = req.params.collection; +function start(req,cmd) { log.startlog(req,cmd,'session','identity'); - stats.receiveRequest(req.method,cmd); - log.detailRequestFE(req); + + if(allow.indexOf(cmd) != -1) + { + stats.receiveRequest(req.method,cmd); + log.detailRequestFE(req); + return {}; + }else + { + stats.receiveUnknow(); + log.detailRequestFE(req); + return {err:constants.RESPONSERESULT.UNKNOW}; + + } }; -function end(req) { - var collection = req.params.collection; - stats.sendResponse(req.method,collection); +function end(req,cmd) { + stats.sendResponse(req.method,cmd); log.detailResponseFE(req); }; module.exports = router; \ No newline at end of file diff --git a/utils/constants.js b/utils/constants.js index dca4d41..39963bc 100644 --- a/utils/constants.js +++ b/utils/constants.js @@ -60,31 +60,31 @@ module.exports = Object.freeze({ RESPONSERESULT:{ SUCCESS:{ resultCode : '20000', - developerMessage : 'Success' + resultDescription : 'Success' }, MISSING_INVALID:{ resultCode : '40300', - developerMessage : 'Missing or invalid parameter' + resultDescription : 'Missing or invalid parameter' }, DATA_NOT_FOUND:{ resultCode : '40401', - developerMessage : 'Data Not Found' + resultDescription : 'Data Not Found' }, DATA_EXIST:{ resultCode : '40301', - developerMessage : 'Data Exist' + resultDescription : 'Data Exist' }, ERROR:{ resultCode : '50000', - developerMessage : 'System error' + resultDescription : 'System error' }, DENIED:{ resultCode : '40100', - developerMessage : 'Access Denied' + resultDescription : 'Access Denied' }, UNKNOW:{ - resultCode : '40400', - developerMessage : 'Unknown URL' + resultCode : '50060', + resultDescription : 'Unknown URL' } } }); \ No newline at end of file diff --git a/utils/log.js b/utils/log.js index fe8e02b..133b574 100644 --- a/utils/log.js +++ b/utils/log.js @@ -17,7 +17,7 @@ log4js.configure({ var logger4jDetail = log4js.getLogger(conf.projectName); var logger = []; -var mapLog = {}; +const mapLog = {}; logger.startlog = function (req,cmdData,session,identity) { @@ -28,7 +28,7 @@ logger.startlog = function (req,cmdData,session,identity) cmd : cmdData, identity : utils.undefinedToNull(identity) }; - + mapLog[req.id].start = start; } @@ -156,7 +156,7 @@ logger.startEC = function(req) messageRes += newLine+"Time in : "+startTime.toISOString(); messageRes += newLine - logg.debug(messageRes); + // logg.debug(messageRes); } logger.endEC = function(req,res) @@ -195,7 +195,7 @@ logger.endEC = function(req,res) - logg.debug(messageRes); + // logg.debug(messageRes); messageRes += newLine } @@ -220,14 +220,14 @@ logger.detailResponseFE = function(req) logger4jDetail.info(logPrefix(req)+protocal+" "+method+" "+url+" Response to FE - body: "+body); } -logger.detailSqlQuery = function(req,method,data) +logger.detailSqlQuery = function(req,collection,data) { - logger4jDetail.info(logPrefix(req)+method+": "+JSON.stringify(data)); + logger4jDetail.info(logPrefix(req)+"BE Send Mongo Collection: \""+collection+"\" Query: "+JSON.stringify(data)); } -logger.detailSqlResult = function(req,method,data) +logger.detailSqlResult = function(req,collection,data) { - logger4jDetail.info(logPrefix(req)+method+": "+JSON.stringify(data)); + logger4jDetail.info(logPrefix(req)+"BE Receive Mongo Collection: \""+collection+"\" Result: "+JSON.stringify(data)); } logger.detailRequestBE = function(req,data) diff --git a/utils/mongoDB.js b/utils/mongoDB.js index 3ef503a..967cc31 100644 --- a/utils/mongoDB.js +++ b/utils/mongoDB.js @@ -20,8 +20,8 @@ function mongoReq(req,url,database,method, query, collection){ var nodeName = "MongoDB"; var funStats = { - detailSqlQuery : function(query){log.detailSqlQuery(req,method,query);}, - detailSqlResult : function(result, err){log.detailSqlResult(req,method,result || err);}, + detailSqlQuery : function(query){log.detailSqlQuery(req,collection,query);}, + detailSqlResult : function(result, err){log.detailSqlResult(req,collection,result || err);}, addSuccessSummary : function(result){log.addSuccessSummary(req,nodeName,collection,result);}, addErrorSummary : function(result){log.addErrorSummary(req,nodeName,collection,result);} }; @@ -90,9 +90,16 @@ function checkResponse(result,err,funStats) } else { - var returnData = constants.RESPONSECONN.MESSAGE.SUCCESS; - returnData.resultData = result; - funStats.addSuccessSummary(returnData); + if(result.length > 1) + { + var returnData = constants.RESPONSERESULT.SUCCESS; + returnData.resultData = result; + funStats.addSuccessSummary(returnData); + }else + { + var returnData = constants.RESPONSERESULT.DATA_NOT_FOUND; + funStats.addErrorSummary(returnData); + } } return returnData diff --git a/utils/stats.js b/utils/stats.js index d3b13ae..04d2a8d 100644 --- a/utils/stats.js +++ b/utils/stats.js @@ -7,30 +7,38 @@ var stat = []; //client and Node -stat.receiveRequest = function (method,cmd,from){ - writeStats(nodeName+" receive "+method+" "+cmd+" request from "+(from?from:"Client")); +stat.receiveRequest = function (method,cmd){ + writeStats(nodeName+" Receive "+method+" "+cmd+" Request"); }; -stat.sendResponse = function (method,cmd,to){ - writeStats(nodeName+" send "+method+" "+cmd+" response to "+(to?to:"Client")); +stat.receiveBadRequest = function (method,cmd){ + writeStats(nodeName+" Receive Bad "+method+" "+cmd+" Request"); +}; + +stat.sendResponse = function (method,cmd,result){ + writeStats(nodeName+" Send "+method+" "+cmd+" Response "+(result?result:"Success")); }; //node and mongo -stat.sendQuery = function (cmd,to){ - writeStats(nodeName+" send QUERY "+cmd+" request to "+(to?to:"MongoDB")); +stat.sendQuery = function (collection){ + writeStats(nodeName+" Send QUERY "+collection+" Request"); +}; + +stat.receiveBadQuery = function (collection){ + writeStats(nodeName+" Receive Bad QUERY "+collection+" Response"); }; -stat.receiveQuery = function (cmd,from){ - writeStats(nodeName+" receive QUERY "+cmd+" response from "+(from?from:"MongoDB")); +stat.receiveQuery = function (collection){ + writeStats(nodeName+" Receive QUERY "+collection+" Response"); }; //unknow -stat.receiveUnknow = function(message){ - writeStats(nodeName+" Receive "+message+" "+constants.REQUEST); +stat.receiveUnknow = function(){ + writeStats(nodeName+" Receive Unknown Error Request"); }; -stat.sendUnknow = function(message){ - writeStats(nodeName+" Send "+message); +stat.sendUnknow = function(){ + writeStats(nodeName+" Send Unknown Error Response"); }; function writeStats(string) { -- libgit2 0.21.2