index.ts 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. namespace zhouzoushi {
  2. const { line, upLine } = require("./F2");
  3. let { getLastWeekTrend } = require('../../../../utils/api')
  4. let first = true;
  5. Component({
  6. /**
  7. * 组件的属性列表
  8. */
  9. properties: {
  10. array: {
  11. type: Object
  12. },
  13. channel: {
  14. type: Object
  15. },
  16. },
  17. observers: {
  18. 'array': function () {
  19. !first && this.upData()
  20. },
  21. 'channel': function () {
  22. !first && this.upData()
  23. },
  24. },
  25. ready() {
  26. this.init();
  27. first = false;
  28. },
  29. /**
  30. * 组件的初始数据
  31. */
  32. data: {
  33. onInitChart: undefined,
  34. DayList: {},
  35. select_act: 0,
  36. select: [
  37. {
  38. text: "时长",
  39. proportionType: "timeSize",
  40. type: 2,
  41. unit: "分",
  42. },
  43. {
  44. text: "频次",
  45. proportionType: "pinci",
  46. type: 1,
  47. unit: "次",
  48. },
  49. {
  50. text: "客户数",
  51. proportionType: "custom",
  52. type: 4,
  53. unit: "个",
  54. },
  55. ],
  56. },
  57. /**
  58. * 组件的方法列表
  59. */
  60. methods: {
  61. init() {
  62. let channelItem = this.data.channel;
  63. Promise.all([
  64. getLastWeekTrend({
  65. type: this.data.select[this.data.select_act].type,
  66. industryId: channelItem.channelId,
  67. dataType: this.data.array.index
  68. }),
  69. ]).then((res: any[]) => {
  70. console.log(res[0])
  71. let li = res[0] ? res[0] : { hardData: [], softData: [] } ;
  72. this.setData({
  73. DayList: li,
  74. onInitChart: line.bind(this),
  75. })
  76. })
  77. },
  78. upData() {
  79. let channelItem = this.data.channel;
  80. Promise.all([
  81. getLastWeekTrend({
  82. type: this.data.select[this.data.select_act].type,
  83. industryId: channelItem.channelId,
  84. dataType: this.data.array.index
  85. }),
  86. ]).then((res: any[]) => {
  87. let li = res[0] ? res[0] : { hardData: [], softData: [] } ;
  88. this.setData({
  89. DayList: li,
  90. },()=>{
  91. upLine.bind(this)()
  92. })
  93. })
  94. },
  95. channelChange(event: wxPicker) {
  96. this.setData({
  97. select_act: Number(event.detail.value)
  98. }, () => this.upData())
  99. },
  100. }
  101. })
  102. }