repository_views_controller.js 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. /**
  2. * Created by Zhong on 2017/8/3.
  3. */
  4. import BaseController from "../../common/base/base_controller";
  5. let config = require("../../../config/config.js");
  6. import mongoose from 'mongoose';
  7. const compilationModel = mongoose.model('compilation');
  8. const rationLibModel = mongoose.model('std_ration_lib_map');
  9. const fs = require('fs');
  10. class ViewsController extends BaseController{
  11. async redirectMain(req, res){
  12. res.render('maintain/ration_repository/main.html',
  13. {
  14. userAccount: req.session.managerData.username,
  15. userID: req.session.managerData.userID,
  16. LicenseKey:config.getLicenseKey(process.env.NODE_ENV)
  17. });
  18. }
  19. async redirectRation(req, res){
  20. const repId = req.query.repository;
  21. const redirectGlj = `/rationRepository/lmm?repository=${repId}`;
  22. const redirectCoe = `/rationRepository/coeList?repository=${repId}`;
  23. const redirectInstallation = `/rationRepository/installation?repository=${repId}`;
  24. let overWriteUrl = null;
  25. let priceProperties = [];
  26. let stdRationLib = await rationLibModel.findOne({ID: repId});
  27. if(stdRationLib){
  28. let compilation = await compilationModel.findOne({_id: mongoose.Types.ObjectId(stdRationLib.compilationId)});
  29. priceProperties = compilation.priceProperties ? compilation.priceProperties : [];
  30. let absoluteUrl = compilation.overWriteUrl ? req.app.locals.rootDir + compilation.overWriteUrl : req.app.locals.rootDir;
  31. overWriteUrl = fs.existsSync(absoluteUrl) && fs.statSync(absoluteUrl).isFile()? compilation.overWriteUrl : null;
  32. }
  33. res.render('maintain/ration_repository/dinge.html',
  34. {
  35. userAccount: req.session.managerData.username,
  36. userID: req.session.managerData.userID,
  37. redirectGlj: redirectGlj,
  38. redirectCoe: redirectCoe,
  39. redirectInstallation: redirectInstallation,
  40. LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
  41. priceProperties: JSON.stringify(priceProperties)
  42. });
  43. }
  44. async redirectGlj(req, res){
  45. const repId = req.query.repository;
  46. const redirectRation = `/rationRepository/ration?repository=${repId}`;
  47. const redirectCoe = `/rationRepository/coeList?repository=${repId}`;
  48. const redirectInstallation = `/rationRepository/installation?repository=${repId}`;
  49. let overWriteUrl = null;
  50. let priceProperties = [];
  51. let stdRationLib = await rationLibModel.findOne({ID: repId});
  52. if(stdRationLib){
  53. let compilation = await compilationModel.findOne({_id: mongoose.Types.ObjectId(stdRationLib.compilationId)});
  54. priceProperties = compilation.priceProperties ? compilation.priceProperties : [];
  55. let absoluteUrl = compilation.overWriteUrl ? req.app.locals.rootDir + compilation.overWriteUrl : req.app.locals.rootDir;
  56. overWriteUrl = fs.existsSync(absoluteUrl) && fs.statSync(absoluteUrl).isFile()? compilation.overWriteUrl : null;
  57. }
  58. res.render('maintain/ration_repository/gongliao.html',
  59. {
  60. userAccount: req.session.managerData.username,
  61. userID: req.session.managerData.userID,
  62. redirectRation: redirectRation,
  63. redirectCoe: redirectCoe,
  64. redirectInstallation: redirectInstallation,
  65. LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
  66. priceProperties: JSON.stringify(priceProperties)
  67. });
  68. }
  69. redirectCoeList(req, res){
  70. const repId = req.query.repository;
  71. const redirectGlj = `/rationRepository/lmm?repository=${repId}`;
  72. const redirectRation = `/rationRepository/ration?repository=${repId}`;
  73. const redirectInstallation = `/rationRepository/installation?repository=${repId}`;
  74. res.render('maintain/ration_repository/fuzhu.html',
  75. {
  76. userAccount: req.session.managerData.username,
  77. userID: req.session.managerData.userID,
  78. redirectGlj: redirectGlj,
  79. redirectRation: redirectRation,
  80. redirectInstallation: redirectInstallation,
  81. LicenseKey:config.getLicenseKey(process.env.NODE_ENV)
  82. });
  83. }
  84. redirectInstallation(req, res){
  85. const repId = req.query.repository;
  86. const redirectGlj = `/rationRepository/lmm?repository=${repId}`;
  87. const redirectCoe = `/rationRepository/coeList?repository=${repId}`;
  88. const redirectRation = `/rationRepository/ration?repository=${repId}`;
  89. res.render('maintain/ration_repository/anzhuang.html',
  90. {
  91. userAccount: req.session.managerData.username,
  92. userID: req.session.managerData.userID,
  93. redirectGlj: redirectGlj,
  94. redirectCoe: redirectCoe,
  95. redirectRation: redirectRation,
  96. LicenseKey:config.getLicenseKey(process.env.NODE_ENV)
  97. });
  98. }
  99. }
  100. export default ViewsController;