rpt_tpl_helper.js 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. /**
  2. * Created by Tony on 2017/6/7.
  3. */
  4. let tplHelper = {
  5. createDftRptTpl: function(treeNode) {
  6. var me = this, rst = {GROUP_KEY: 'CONSTRUCT', ID_KEY: null};
  7. rst[JV.NODE_MAIN_INFO] = me.createDftRptMainInfo(treeNode.name);
  8. rst[JV.NODE_FIELD_MAP] = {};
  9. rst[JV.NODE_BAND_COLLECTION] = {};
  10. rst[JV.NODE_CROSS_INFO] = {};
  11. rst[JV.NODE_DISCRETE_PARAMS] = {};
  12. rst[JV.NODE_FORMULAS] = {};
  13. rst[JV.NODE_FLOW_INFO] = {};
  14. rst[JV.NODE_NO_MAPPING_FIELDS] = {};
  15. return rst;
  16. },
  17. createDftRptMainInfo: function(rptName) {
  18. let rst = {};
  19. rst[JV.NODE_MAIN_INFO_RPT_NAME] = rptName;
  20. rst[JV.PROP_UNITS] = JV.MEASUREMENT.CM[0];
  21. rst[JV.NODE_PAGE_INFO] = {};
  22. rst[JV.NODE_PAGE_INFO][JV.PROP_PAGE_SIZE] = "A4";
  23. rst[JV.NODE_PAGE_INFO][JV.PROP_ORIENTATION] = "LANDSCAPE";
  24. rst[JV.NODE_MARGINS] = {};
  25. rst[JV.NODE_MARGINS][JV.PROP_LEFT] = 0.8;
  26. rst[JV.NODE_MARGINS][JV.PROP_RIGHT] = 0.8;
  27. rst[JV.NODE_MARGINS][JV.PROP_TOP] = 0.8;
  28. rst[JV.NODE_MARGINS][JV.PROP_BOTTOM] = 0.8;
  29. return rst;
  30. },
  31. confirmAndCreateTpl: function(treeNode) {
  32. if (zTreeOprObj.currentNode && zTreeOprObj.currentNode.nodeType == RT.NodeType.TEMPLATE) {
  33. //
  34. }
  35. },
  36. refreshTplView: function (rptTpl) {
  37. if (rptTpl) {
  38. //1. 模板信息
  39. $("#rptTplName")[0].value = rptTpl[JV.NODE_MAIN_INFO][JV.NODE_MAIN_INFO_RPT_NAME];
  40. $("#rptTplPageSize")[0].selectedIndex = JV.PAGES_SIZE_STR.indexOf(rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_PAGE_SIZE]);
  41. if (rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_ORIENTATION] === JV.ORIENTATION_PORTRAIT ||
  42. rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_ORIENTATION] === JV.ORIENTATION_PORTRAIT_CHN) {
  43. $("#rptTplPageOrientation")[0].selectedIndex = 1;
  44. } else {
  45. $("#rptTplPageOrientation")[0].selectedIndex = 0;
  46. }
  47. if (rptTpl[JV.NODE_FLOW_INFO]) {
  48. $("#multiColCnt")[0].style.display = "";
  49. } else {
  50. $("#multiColCnt")[0].style.display = "none";
  51. }
  52. $("#rptTplMarginLeft")[0].value = rptTpl[JV.NODE_MAIN_INFO][JV.NODE_MARGINS][JV.PROP_LEFT];
  53. $("#rptTplMarginRight")[0].value = rptTpl[JV.NODE_MAIN_INFO][JV.NODE_MARGINS][JV.PROP_RIGHT];
  54. $("#rptTplMarginTop")[0].value = rptTpl[JV.NODE_MAIN_INFO][JV.NODE_MARGINS][JV.PROP_TOP];
  55. $("#rptTplMarginBottom")[0].value = rptTpl[JV.NODE_MAIN_INFO][JV.NODE_MARGINS][JV.PROP_BOTTOM];
  56. //2. 模板布局
  57. bandTreeOprObj.iniTree(rptTpl);
  58. //3. 指标映射
  59. fieldMapTreeOprObj.iniTree(rptTpl);
  60. //4. 指标摆放
  61. //5. 计算式
  62. }
  63. },
  64. reCombineRptTpl: function () {
  65. if (zTreeOprObj.currentNode && zTreeOprObj.currentNode.nodeType == RT.NodeType.TEMPLATE && zTreeOprObj.currentNode.rptTpl != null) {
  66. let rptTpl = zTreeOprObj.currentNode.rptTpl;
  67. //1. 模板信息
  68. zTreeOprObj.extractMainInfo(rptTpl);
  69. //2. 模板布局
  70. bandTreeOprObj.extractBands(rptTpl);
  71. //3. 指标映射
  72. fieldMapTreeOprObj.extractFieldMaps(rptTpl);
  73. //4. 指标摆放
  74. tabFieldCfgTreeOprObj.extractTabFields(rptTpl);
  75. //5. 计算式
  76. calculationTreeOprObj.extractCalculation(rptTpl);
  77. }
  78. }
  79. }