Example #1
0
/**  Written By : Amitesh Rai */
'use strict';
import fs = require('fs');
import mongoose = require('mongoose');
let cors = require('koa-cors'), compress = require('koa-compress'), router = require('koa-router'),
  wbshared = require('wb-shared'), logger = wbshared.logger.child({ 'module': __filename.substring(__dirname.length + 1, __filename.length - 3) }),
  /** child logger concept says that we can create a sub logger for a specific module adding functionality for that
      specific module like adding koa as the module name in each of the logger feeds*/
  parse = require('koa-better-body'), config = wbshared.config, koajwt = require('koa-jwt'), User = mongoose.model('User'),
  constants = wbshared.utils.constants;

module.exports = function(app) {
  app.use(
    cors(
      {
        maxAge: 3600, //default value is null, 3600 seconds is too big for a request and response result to be cached
        credentials: true,
        headers: 'Access-Control-Allow-Origin, Access-Control-Expose-Headers, Origin, X-Requested-With, Content-Type, Accept, Authorization',
        methods: 'GET, HEAD, OPTIONS, PUT, POST, DELETE'
      }
    )
  );

  app.use(
    function* (next) {
      this.req.connection.setTimeout(0);  //removes the default timeout of connection i.e. 2 minutes
      this.req.connection.setNoDelay(true); /**will set delay to false and data would be fired
                                          immediately after calling socket.write
                                            */
      yield next;
    }
Example #2
0
'use strict'
import mongoose = require('mongoose');
let Item = mongoose.model('Item'),
  wbshared = require('wb-shared'),
  log = wbshared.logger.child({ 'module': __filename.substring(__dirname.length + 1, __filename.length - 3) }),
  constants = wbshared.utils.constants,
  User = mongoose.model('User'),
  Transaction = mongoose.model('Transaction');

exports.initSecured = (app) => {
  app.get('/w1/bill/:tid', getBill);
}

exports.initAdmin = (app) => {

}

function* getBill(next) {
  try {
    let wbuser = this.document.wbuser;
    let tid = this.params.tid;


  } catch (error) {
    log.error('Exception caught in Generate bill : ', error);
    this.body = "Error in processing Generate bill request";
    this.status = 404;
  }
}
Example #3
0
'use strict';
const mongoose = require('mongoose');
let Hospital = mongoose.model('Hospital'), wbshared = require('wb-shared'), log = wbshared.logger.child({ 'module': __filename.substring(__dirname.length + 1, __filename.length - 3) }), constants = wbshared.utils.constants;
exports.initSecured = (app) => {
    //<all : 4/men : 0/women : 1/kidb : 2/kidg : 3>
    app.get('/w1/hospital', getListHospital);
    app.get('/w1/hospital/:id', getHospital);
    app.get('/w1/hospitalquery', getQueryList);
};
exports.initAdmin = (app) => {
    app.post('/w1/hospital', addHospital);
    app.put('/w1/hospital', updateHospital);
    app.del('/w1/hospital/:id', deleteHospital);
    app.put('/w1/discount');
};
function* getQueryList(next) {
    try {
        let wbuser = this.document.wbuser;
        let query = this.query.lquery;
        log.info("Query Hospital : ", query);
        let hospitalQueryList = yield Hospital.find({ iName: { '$regex': query.toString() } }).select('iName clothType').exec();
        this.body = hospitalQueryList;
        this.status = 200;
        yield next;
    }
    catch (error) {
        log.error('Exception caught in Hospital query : ', error);
        this.body = "Error in processing Hospital Query request";
        this.status = 404;
    }
}