暂无描述

index.js 5.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. /**
  2. * Created by TT on 2017/4/6.
  3. */
  4. ;
  5. spa_define(function () {
  6. return $.use(["spa", "code", "form", "util", "dict"], function (spa, code, form, util, dict) {
  7. return {
  8. main: function () {
  9. var root = spa.findInMain(".sys_usercount_index");
  10. var cr = code.parseCode(root.find(".dt-tpl"));
  11. var myChart = echarts.init(document.getElementById('type'));
  12. var tableData = {data: []},
  13. allData = [];
  14. cr.shell("count", function (env) {
  15. var v = env.cd[this.k];
  16. if (v === 0) {
  17. return 0;
  18. }
  19. return v;
  20. });
  21. var query = function () {
  22. if(allData != null) {
  23. var td = tableData.data = [];
  24. for(var i = allData.length-7; i < allData.length; ++i) {
  25. var item = allData[i];
  26. if(item) {
  27. td.push(item);
  28. }
  29. }
  30. } else {
  31. tableData.data = allData;
  32. }
  33. cr.val(tableData.data);
  34. };
  35. /*
  36. 用户流量统计表格 时间倒序
  37. */
  38. // var query = function () {
  39. // if(allData != null) {
  40. // var td = tableData.data = [];
  41. // for(var i = allData.length; i >= allData.length-7; --i) {
  42. // var item = allData[i];
  43. // if(item) {
  44. // td.push(item);
  45. // }
  46. // }
  47. // } else {
  48. // tableData.data = allData;
  49. // }
  50. // cr.val(tableData.data);
  51. // };
  52. var load = function () {
  53. util.get("../ajax/operation/statist/userCount", null, function (data) {
  54. allData = data || [];
  55. query();
  56. var colors = ['#c23531', '#82C8FA'];
  57. var option = {
  58. color: colors,
  59. title: {
  60. text: '用户流量统计',
  61. subtext: '最近7天'
  62. },
  63. tooltip: {
  64. trigger: 'axis'
  65. },
  66. legend: {
  67. data: ['新增用户', '新增激活用户']
  68. },
  69. xAxis: {
  70. data: allData.map(function (item) {
  71. return item.createTime;
  72. }),
  73. boundaryGap: false
  74. },
  75. yAxis: {
  76. splitLine: {
  77. show: false
  78. },
  79. boundaryGap: false,
  80. type: "value",
  81. // interval: 1,
  82. min: 0
  83. },
  84. toolbox: {
  85. show: true,
  86. feature: {
  87. dataZoom: {
  88. yAxisIndex: 'none'
  89. },
  90. dataView: {readOnly: false},
  91. magicType: {type: ['line', 'bar']},
  92. restore: {},
  93. saveAsImage: {}
  94. }
  95. },
  96. dataZoom: [{
  97. startValue: allData[allData.length-7].createTime
  98. }, {
  99. type: 'inside'
  100. }],
  101. visualMap: {
  102. top: 10,
  103. right: 10,
  104. },
  105. series: [{
  106. name: '新增用户',
  107. type: 'line',
  108. data: allData.map(function (item) {
  109. return item.znum;
  110. }),
  111. }, {
  112. name: '新增激活用户',
  113. type: 'line',
  114. data: allData.map(function (item) {
  115. return item.jnum;
  116. })
  117. }
  118. ]
  119. };
  120. myChart.setOption(option);
  121. }, {});
  122. };
  123. cr.listen(dict.doTransfer);
  124. load();
  125. },
  126. mainDestory: function () {
  127. }
  128. };
  129. });
  130. });