rpt_tpl_data_facade.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /**
  2. * Created by Tony on 2017/8/9.
  3. */
  4. // import mongoose from "mongoose";
  5. // let consts = require('../../../modules/main/models/project_consts');
  6. // let projectConst = consts.projectConst;
  7. let prjMdl = require('../../../modules/pm/models/project_model');
  8. let projectDataMdl = require('../../../modules/main/models/project');
  9. let projectFacade = require('../../../modules/main/facade/project_facade');
  10. module.exports = {
  11. prepareProjectData: prepareProjectData,
  12. getBudgetSummayDatas: getBudgetSummayDatas
  13. };
  14. function prepareProjectData(userId, prjId, filter, callback) {
  15. let rawDataObj = null;
  16. let basicInformation = prjMdl.project.getBasicInfo(prjId);
  17. prjMdl.project.getUserProject(userId, prjId, function(err, msg, rst){
  18. if (!err) {
  19. rawDataObj = {};
  20. rawDataObj.prj = rst;
  21. projectDataMdl.getFilterData(prjId, filter, function (results) {
  22. if (results) {
  23. rawDataObj.prjData = results;
  24. basicInformation.then(function(basicRst) {
  25. if (basicRst !== null && basicRst !== undefined) {
  26. let doc = (rawDataObj.prj._doc)?rawDataObj.prj._doc:rawDataObj.prj;
  27. doc.property.basicInformation = basicRst;
  28. }
  29. callback(false, 'Succeeded!', rawDataObj);
  30. });
  31. // callback(false, 'Succeeded!', rawDataObj);
  32. } else {
  33. callback(true, 'No data were found!', null);
  34. }
  35. });
  36. } else {
  37. callback(err, msg, null);
  38. }
  39. });
  40. }
  41. async function getBudgetSummayDatas(prjIds) {
  42. return await projectFacade.getBudgetSummayDatas(prjIds);
  43. }