home.js 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. const { api_index_info } = require("../../utils/api.js");
  2. const { net } = require("../../utils/net.js");
  3. const util = require("../../utils/util.js");
  4. Page({
  5. data: {
  6. isShowPrivacyModal: false, // 是否显示隐私协议弹窗
  7. firstLoaidngFlag: true,
  8. showState: "1", // 当前登录状态 1未登录 2已登录
  9. userInfo: {},
  10. cardsArr: [
  11. {
  12. id: "1",
  13. icon: "icon-hooli-money",
  14. title: "客户",
  15. etitle: "Manage",
  16. },
  17. {
  18. id: "3",
  19. icon: "icon-hooli-orderx",
  20. title: "订单",
  21. etitle: "OrderManage",
  22. },
  23. {
  24. id: "4",
  25. icon: "icon-hooli-channelx",
  26. title: "团队",
  27. etitle: "Invitation",
  28. },
  29. ],
  30. pickerIndex: 4,
  31. list: [
  32. {
  33. name: "上周",
  34. value: "1",
  35. },
  36. {
  37. name: "本周",
  38. value: "2",
  39. },
  40. {
  41. name: "上月",
  42. value: "3",
  43. },
  44. {
  45. name: "本月",
  46. value: "4",
  47. },
  48. {
  49. name: "全部",
  50. value: "",
  51. },
  52. ],
  53. data: null,
  54. },
  55. onLoad: function (options) {
  56. let userInfo = util.getStorageSync("userInfo");
  57. if (userInfo && userInfo.token) {
  58. this.setData({
  59. showState: "2",
  60. userInfo: userInfo,
  61. });
  62. } else {
  63. // wx.reLaunch({
  64. // url: '/pages/loginways/loginways',
  65. // });
  66. }
  67. },
  68. goLoginTap() {
  69. wx.reLaunch({
  70. url: "/pages/loginways/loginways",
  71. });
  72. },
  73. onShow: function () {
  74. if (this.data.showState == 2) {
  75. this.getWithData();
  76. }
  77. // 检测是否需要隐私协议授权
  78. this.isNeedPrivacyAuthorization();
  79. },
  80. // 检测是否需要隐私协议授权
  81. isNeedPrivacyAuthorization() {
  82. util
  83. .isNeedWxPrivacyAuthorization()
  84. .then((val) => {
  85. const isNeedStatus = val;
  86. if (isNeedStatus) {
  87. // 需要隐私协议授权
  88. // 显示弹窗
  89. this.setData({
  90. isShowPrivacyModal: true,
  91. });
  92. } else {
  93. // 不需要隐私协议授权
  94. // 不显示弹窗
  95. this.setData({
  96. isShowPrivacyModal: false,
  97. });
  98. }
  99. })
  100. .catch(() => {
  101. // 请求出错,不显示弹窗
  102. this.setData({
  103. isShowPrivacyModal: false,
  104. });
  105. });
  106. },
  107. // 隐私协议弹窗 - 点击同意后触发
  108. tapConfirmAction() {
  109. this.setData({
  110. isShowPrivacyModal: false,
  111. });
  112. },
  113. // 隐私协议弹窗 - 点击拒绝后触发
  114. tapRefuseAction() {
  115. this.setData({
  116. isShowPrivacyModal: false,
  117. });
  118. },
  119. // 获取数据简报数据
  120. getWithData() {
  121. this.setData({
  122. firstLoaidngFlag: true,
  123. });
  124. const { list, pickerIndex } = this.data;
  125. let params = {};
  126. params.url = api_index_info;
  127. params.data = {
  128. searchTimeType: list[pickerIndex].value,
  129. };
  130. net.req(params).then((res) => {
  131. this.setData({
  132. data: res.data,
  133. firstLoaidngFlag: false,
  134. });
  135. });
  136. },
  137. bindPickerChange(e) {
  138. this.setData({
  139. pickerIndex: parseInt(e.detail.value),
  140. });
  141. this.getWithData();
  142. },
  143. handleItemTap(e) {
  144. let { currentId } = e.currentTarget.dataset;
  145. switch (currentId) {
  146. case "1":
  147. wx.navigateTo({
  148. url: "/pages/leadslist/leadslist",
  149. });
  150. break;
  151. case "3":
  152. wx.navigateTo({
  153. url: "/pages/orderlist/orderlist",
  154. });
  155. break;
  156. case "4":
  157. wx.navigateTo({
  158. url: "/pages/myteam/myteam",
  159. });
  160. break;
  161. default:
  162. break;
  163. }
  164. },
  165. // 用于阻断事件传递
  166. interdictEventsAction() {},
  167. bindGoList(e) {
  168. const { page } = e.currentTarget.dataset;
  169. let time = "";
  170. const { list, pickerIndex } = this.data;
  171. if (pickerIndex !== 4) {
  172. time = list[pickerIndex].value;
  173. }
  174. wx.navigateTo({
  175. url: `/pages/${page}/${page}?time=${time}`,
  176. });
  177. },
  178. /**
  179. * 页面相关事件处理函数--监听用户下拉动作
  180. */
  181. onPullDownRefresh: function () {
  182. if (this.data.showState == 2) {
  183. this.getWithData();
  184. }
  185. wx.stopPullDownRefresh();
  186. },
  187. });