main_route.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /**
  2. * Created by chen on 2017/7/17.
  3. */
  4. import BaseController from "../../common/base/base_controller";
  5. const projectModel = require("../../pm/models/project_model");
  6. let config = require("../../../config/config.js");
  7. module.exports =function (app) {
  8. const baseController = new BaseController();
  9. app.get('/main', baseController.init, function(req, res) {
  10. let pm = require('../../pm/controllers/pm_controller');
  11. pm.checkProjectRight(req.session.sessionUser.id, req.query.project, async function (hasRight, projectData, shareInfo) {
  12. if (hasRight) {
  13. //分享的项目,只读、协作(允许编辑)
  14. let projectReadOnly = false,
  15. projectCooperate = false;
  16. if(req.session.sessionUser.id !== projectData.userID){
  17. projectData._doc.readOnly = true;
  18. projectCooperate = !!shareInfo.allowCooperate;
  19. //允许协作的项目允许编辑,非只读
  20. projectReadOnly = !projectCooperate;
  21. }
  22. res.render('building_saas/main/html/main.html',
  23. {
  24. userAccount: req.session.userAccount,
  25. userID: req.session.sessionUser.id,
  26. projectData: projectData,
  27. compilationName: req.session.sessionCompilation.name,
  28. versionName: `纵横建筑云计价(${req.session.compilationVersion})`,
  29. projectReadOnly: projectReadOnly,
  30. projectCooperate: projectCooperate,
  31. LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
  32. overWriteUrl:req.session.sessionCompilation.overWriteUrl
  33. });
  34. } else {
  35. res.redirect('/pm');
  36. }
  37. });
  38. });
  39. }