SaleTrend.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. Ext.define('saas.view.home.charts.SaleTrend', {
  2. extend: 'saas.view.core.chart.ChartBase',
  3. xtype: 'sale-trend',
  4. id: 'sale_trend',
  5. initComponent: function() {
  6. var me = this;
  7. Ext.apply(me, {
  8. items: [{
  9. xtype: 'cartesian',
  10. insetPadding: '28 0 0 0',
  11. colors: [
  12. '#64B0E4',
  13. '#FF1038'
  14. ],
  15. bind: {
  16. captions: {
  17. title: {
  18. text: '销售趋势图',
  19. style: {
  20. 'font-size': '14px',
  21. 'color': '#485465',
  22. 'letter-spacing': '-0.07px'
  23. },
  24. align: 'left'
  25. }
  26. },
  27. store: '{sale_trend}',
  28. },
  29. // legend: {
  30. // type: 'dom',
  31. // docked: 'top',
  32. // },
  33. axes: [{
  34. // title: {
  35. // text: '月',
  36. // fontSize: 14,
  37. // },
  38. type: 'category',
  39. fields: ['x'],
  40. position: 'bottom',
  41. label: {
  42. fillStyle: '#485465',
  43. },
  44. style: {
  45. fill: '#F7F8FA',
  46. strokeStyle: 'transparent'
  47. },
  48. renderer: me.categoryRender
  49. },{
  50. type: 'numeric',
  51. fields: ['sale', 'saleback'],
  52. position: 'left',
  53. grid: {
  54. even: {
  55. stroke: '#F7F8FA',
  56. },
  57. odd: {
  58. stroke: '#F7F8FA',
  59. }
  60. },
  61. label: {
  62. fillStyle: '#485465',
  63. },
  64. style: {
  65. fill: '#fff',
  66. strokeStyle: 'transparent'
  67. },
  68. }],
  69. series: [{
  70. type: 'line',
  71. smooth: true,
  72. title: '销售额',
  73. xField: 'x',
  74. yField: ['sale'],
  75. tooltip: {
  76. trackMouse: true,
  77. renderer: me.onSeriesTooltipRender
  78. }
  79. }, {
  80. type: 'line',
  81. smooth: true,
  82. title: '销售回款',
  83. xField: 'x',
  84. yField: ['saleback'],
  85. tooltip: {
  86. trackMouse: true,
  87. renderer: me.onSeriesTooltipRender
  88. }
  89. }]
  90. }]
  91. });
  92. me.callParent(arguments);
  93. },
  94. onSeriesTooltipRender: function (tooltip, record, item) {
  95. var title = item.series.getTitle();
  96. tooltip.setHtml(record.get('x') + title + record.get(item.series.getYField()) + '万元');
  97. },
  98. categoryRender: function(axis, label, layoutContext, lastLabel) {
  99. return label + '月';
  100. }
  101. });