statistics.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. var wxCharts = require('../../../utils/wxcharts.js');
  2. var data = require('../../../utils/util.js');
  3. const api = require('../../../utils/api.js');
  4. var ringChart = null;
  5. Page({
  6. data: {
  7. },
  8. bindDateChange(e) {
  9. this.setData({
  10. startdata: e.detail.value
  11. })
  12. this.req(e.detail.value,this.data.enddata)
  13. },
  14. bindendDateChange(e){
  15. this.setData({
  16. enddata: e.detail.value
  17. })
  18. this.req(this.data.startdata, e.detail.value)
  19. },
  20. touchHandler: function (e) {
  21. console.log(ringChart.getCurrentDataIndex(e));
  22. },
  23. onLoad(options){
  24. let that=this
  25. this.data.startdata = data.getDateStr(data.formatDate(), -30)
  26. this.data.enddata = data.formatDate()
  27. this.req(this.data.startdata, this.data.enddata)
  28. this.setData({
  29. user:wx.getStorageSync('user')
  30. })
  31. },
  32. req: function (start,end){
  33. let that = this
  34. wx.request({
  35. url: api.selfInfo,
  36. data: {
  37. loginId: wx.getStorageSync('loginId'),
  38. start: start,
  39. end: end
  40. },
  41. success(res) {
  42. // res.data.data.nomalInTimes=130
  43. // res.data.data.nomalOutTimes = 40
  44. // res.data.data.laterTimes = 50
  45. // res.data.data.UnreturnedTimes = 20
  46. that.setData({
  47. data: res.data.data
  48. })
  49. ringChart.updateData({
  50. title: {
  51. name: '汇总'
  52. },
  53. subtitle: {
  54. color: '#333333'
  55. },
  56. series: [{
  57. name: '成交量1',
  58. data: res.data.data.nomalInTimes,
  59. stroke: false
  60. }, {
  61. name: '成交量2',
  62. data: res.data.data.nomalOutTimes,
  63. stroke: false
  64. }, {
  65. name: '成交量3',
  66. data: res.data.data.laterTimes,
  67. stroke: false
  68. }, {
  69. name: '成交量4',
  70. data: res.data.data.UnreturnedTimes,
  71. stroke: false
  72. }],
  73. });
  74. }
  75. })
  76. },
  77. onReady: function (e) {
  78. let that=this
  79. this.setData({
  80. enddata:data.formatDate(),
  81. startdata: data.getDateStr(data.formatDate(),-30)
  82. })
  83. var windowWidth = 320;
  84. try {
  85. var res = wx.getSystemInfoSync();
  86. windowWidth = res.windowWidth;
  87. } catch (e) {
  88. console.error('getSystemInfoSync failed!');
  89. }
  90. ringChart = new wxCharts({
  91. animation: true,
  92. canvasId: 'ringCanvas',
  93. type: 'ring',
  94. extra: {
  95. ringWidth: 25,
  96. pie: {
  97. offsetAngle: -45
  98. }
  99. },
  100. title: {
  101. name: '汇总',
  102. color: '#333',
  103. fontSize: 18
  104. },
  105. subtitle: {
  106. name: '',
  107. color: '#6282f4',
  108. fontSize: 15
  109. },
  110. series: [{
  111. name: '正常进入',
  112. data: 25,
  113. stroke: false,
  114. color:'#6282f4'
  115. }, {
  116. name: '正常外出',
  117. data: 35,
  118. stroke: false,
  119. color:'#ed5c68'
  120. }, {
  121. name: '晚归',
  122. data: 78,
  123. stroke: false,
  124. color:'#89c997'
  125. }, {
  126. name: '未归寝',
  127. data: 63,
  128. stroke: false,
  129. color:'#f29b76'
  130. }],
  131. disablePieStroke: true,
  132. width: 200,
  133. height: 200,
  134. dataLabel: false,
  135. legend: false,
  136. background: '#fff',
  137. padding: 0
  138. });
  139. ringChart.addEventListener('renderComplete', () => {
  140. console.log('renderComplete');
  141. });
  142. setTimeout(() => {
  143. ringChart.stopAnimation();
  144. }, 500);
  145. }
  146. });