index.js 1.64 KB
let express = require('express');
let router = express.Router();
let connection = require("../../utils/mongoDB")
var utils = require('../../utils/utils');
var stats = require('../../utils/stats');
var log = require('../../utils/log');



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) {
    var collection = req.params.collection;

    var query = req.body;
    var result = await connection.reqMongo(req,req.method,query,collection)
    res.status(200).json(result);
    next();
});

// router.put('/:collection',async function (req, res) {
//     var query = Object.assign(req.params, req.query);
//     var result = await connection.reqMongo(req, query)
//     res.status(200).json(result);
// });

// router.delete('/:collection',async function (req, res) {
//     var query = Object.assign(req.params, req.query);
//     var result = await connection.reqMongo(req, query)
//     res.status(200).json(result);
// });

function start(req) {   
    var cmd = req.params.collection;
    log.startlog(req,cmd,'session','identity');
    stats.receiveRequest(req.method,cmd);
    log.detailRequestFE(req);
};

function end(req) {   
    var collection = req.params.collection;
    stats.sendResponse(req.method,collection);
    log.detailResponseFE(req);
};
module.exports = router;