server.js 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. var express = require('express');
  2. var config = require("./config/config.js");
  3. //config.setToLocalDb();
  4. config.setToQaDb();
  5. //config.setupCache();
  6. var cfgCacheUtil = require("./config/cacheCfg");
  7. cfgCacheUtil.setupDftCache();
  8. var path = require('path');
  9. var session = require('express-session');
  10. var DBStore = require('connect-mongo')(session);
  11. var app = express();
  12. var _rootDir = __dirname;
  13. app.use(express.static(_rootDir));
  14. app.set('views', path.join(__dirname, 'web'));
  15. app.engine('.html', require('ejs').__express);
  16. app.set('view engine', 'html');
  17. var bodyParser = require('body-parser');
  18. app.use(bodyParser.urlencoded({extended: false}));
  19. app.use(bodyParser.json());
  20. app.use(session({
  21. name: 'usersSession',
  22. secret: 'session users secret',
  23. cookie: {maxAge: 1000*60*30},
  24. resave: false,
  25. saveUninitialized: true
  26. //*
  27. ,store: new DBStore({
  28. url: 'mongodb://' + config.current.server + ':' + config.current.port + '/usersManages'
  29. })
  30. //*/
  31. }));
  32. app.use(function (req, res, next) {
  33. var url = req.originalUrl;
  34. if (!/^\/login/.test(req.originalUrl) && !req.session.userAccount) {
  35. if (req.headers.referer) {
  36. return res.redirect('/login' + '?referer=' + req.headers.referer);
  37. } else {
  38. return res.redirect("/login" + '?referer=' + req.originalUrl);
  39. }
  40. }
  41. next();
  42. });
  43. app.use('/', require('./modules/users/routes/users_route'));
  44. app.use('/fees', require('./modules/fees/routes/fees_router'));
  45. app.get('/template/bills', function (req, res) {
  46. res.render('templates/html/bills.html',
  47. {userAccount: req.session.userAccount,
  48. userID: req.session.userID});
  49. });
  50. var billsTemplateRouter = require('./modules/templates/routes/bills_template_router');
  51. app.use('/template/bills', billsTemplateRouter);
  52. app.get('/pm', function(req, res){
  53. res.render('pm/html/project-management.html',
  54. {userAccount: req.session.userAccount,
  55. userID: req.session.userID});
  56. });
  57. var pmRouter = require('./modules/pm/routes/pm_route');
  58. app.use('/', pmRouter);
  59. app.get('/main', function(req, res) {
  60. if (!req.session.userAccount) {
  61. res.redirect('/login');
  62. }
  63. else {
  64. res.render('main/html/main.html',
  65. {
  66. userAccount: req.session.userAccount,
  67. userID: req.session.userID
  68. });
  69. }
  70. });
  71. var bills_Router = require('./modules/main/routes/bills_route');
  72. var rations_Router = require('./modules/main/routes/rations_route');
  73. app.use('/bills', bills_Router);
  74. app.use('/rations', rations_Router);
  75. var rpt_Router = require("./modules/reports/routes/report_router");
  76. app.get('/report', function(req, res) {
  77. if (!req.session.userAccount) {
  78. res.redirect('/login');
  79. }
  80. else {
  81. res.render('report/html/RptHome.html',
  82. {userAccount: req.session.userAccount,
  83. userID: req.session.userID});
  84. }
  85. });
  86. app.use("/report_api", rpt_Router);
  87. //zhangenping add 2017.0.13-----------------------------------------begin
  88. app.use(express.static(_rootDir+"/web"));
  89. app.use(express.static(_rootDir+"/lib"));
  90. var rations_Router = require("./modules/rationLibEditor/routes/rationLibEditor_route");
  91. app.use("/rationLibEditor",rations_Router);
  92. //-----------------------------------------------------------------end
  93. //----------------
  94. app.get("/stdBillsmain", function(req, res){
  95. res.render("billsLib/html/main.html");
  96. });
  97. app.get("/stdBills", function(req, res){
  98. res.render("billsLib/html/qingdan.html");
  99. });
  100. app.get('/stdJobs', function(req, res){
  101. res.render('billsLib/html/neirong.html');
  102. });
  103. var billsLibRouter = require("./modules/billsLib/billsLibRoutes/billsLibRoutes");
  104. app.use("/stdBillsEditor", billsLibRouter);
  105. //-----------------
  106. app.use(function(req, res, next) {
  107. res.status(404).send('404 Error');
  108. });
  109. app.use(function(err, req, res, next) {
  110. console.error(err.stack);
  111. res.status(500).send('500 Error');
  112. });
  113. app.listen(6060);