operation.js 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. let express = require('express');
  2. let config = require("./config/config.js");
  3. config.setToQaDb();
  4. //config.setupCache();
  5. let cfgCacheUtil = require("./config/cacheCfg");
  6. cfgCacheUtil.setupDftCache();
  7. let dbm = require("./config/db/db_manager");
  8. let path = require('path');
  9. let session = require('express-session');
  10. let DBStore = require('connect-mongo')(session);
  11. let fileUtils = require("./modules/common/fileUtils");
  12. let partials = require("express-partials");
  13. let URL = require('url');
  14. let fs = require('fs');
  15. let app = express();
  16. let _rootDir = __dirname;
  17. dbm.connect();
  18. app.use(express.static(_rootDir));
  19. app.set('views', path.join(__dirname, 'web'));
  20. app.engine('.html', require('ejs').__express);
  21. app.set('view engine', 'html');
  22. app.set('view options', {
  23. defaultLayout: 'users/views/layout/layout'
  24. });
  25. app.use(partials());
  26. let bodyParser = require('body-parser');
  27. app.use(bodyParser.urlencoded({extended: false}));
  28. app.use(bodyParser.json());
  29. app.use(session({
  30. name: 'usersSession',
  31. secret: 'session users secret',
  32. cookie: {maxAge: 1000*60*30},
  33. resave: false,
  34. rolling: true,
  35. saveUninitialized: true
  36. //*
  37. ,store: new DBStore({
  38. url: 'mongodb://' + config.current.server + ':' + config.current.port + '/usersManagesOpr'
  39. })
  40. //*/
  41. }));
  42. app.use(function (req, res, next) {
  43. // let url = req.originalUrl, referer;
  44. // if (!/^\/login/.test(req.originalUrl) && !req.session.userAccount) {
  45. // if (/\/api/.test(req.originalUrl)) {
  46. // referer = URL.parse(req.headers.referer);
  47. // return res.redirect('/login' + '?referer=' + referer.path);
  48. // } else {
  49. // return res.redirect("/login" + '?referer=' + req.originalUrl);
  50. // }
  51. // }
  52. next();
  53. });
  54. //加载路由文件
  55. fileUtils.getGlobbedFiles('./modules/**/routes/*.js').forEach(function(modelPath) {
  56. require(path.resolve(modelPath))(app);
  57. })
  58. app.use(function(req, res, next) {
  59. res.status(404).send('404 Error');
  60. });
  61. app.use(function(err, req, res, next) {
  62. console.error(err.stack);
  63. res.status(500).send('500 Error');
  64. });
  65. //设置Date Format函数
  66. fs.readFile(__dirname + '/public/web/date_util.js', 'utf8', 'r', function (err, data) {
  67. eval(data);
  68. // let dt = new Date();
  69. // console.log(dt.Format('yyyy-M-dd'));
  70. // console.log(dt.Format('yyyy 年 M 月 dd 日'));
  71. // console.log(dt.Format('yyyy 年 M 月 20 日'));
  72. });
  73. app.listen(6080, function(){
  74. console.log("server started!");
  75. });