rank.js 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256
  1. var _request = require('../../../../../utils/request.js')
  2. var date = new Date()
  3. Page({
  4. data: {
  5. now: true,
  6. year: 0,
  7. month: 0,
  8. upMonth: 0,
  9. downMonth: 0,
  10. config: [],
  11. list: [],
  12. sale: 0,
  13. reward: null,
  14. loading: false,
  15. start: true,
  16. check: false,
  17. rid: '',
  18. orderInfo: {}
  19. },
  20. onLoad: function (options) {
  21. if (options.year && options.month) {
  22. this.setData({
  23. year: Number(options.year),
  24. month: Number(options.month)
  25. })
  26. } else {
  27. let y = date.getFullYear()
  28. let m = date.getMonth() + 1
  29. this.setData({
  30. year: y,
  31. month: m
  32. })
  33. }
  34. this.updateMonth()
  35. // this.getInfo()
  36. },
  37. toProject: function () {
  38. if (this.data.config.length > 0) {
  39. if (this.data.config[0].url_type === 'inner_url') {
  40. if (this.data.config[0].guide_url === 'pages/projects/projects') {
  41. wx.switchTab({
  42. url: '/pages/projects/projects'
  43. })
  44. } else {
  45. wx.redirectTo({
  46. url: '/' + this.data.config[0].guide_url
  47. })
  48. }
  49. } else if (this.data.config[0].url_type === 'outer_url') {
  50. wx.navigateTo({
  51. url: '/pages/web/web?id=' + this.data.config[0].guide_url
  52. })
  53. }
  54. } else {
  55. wx.switchTab({
  56. url: '/pages/projects/projects'
  57. })
  58. }
  59. },
  60. getUp: function () {
  61. if (this.data.start) {
  62. let y = this.data.year
  63. let m = this.data.month
  64. if (m <= 1) {
  65. this.setData({
  66. month: 12,
  67. year: y - 1
  68. })
  69. } else {
  70. this.setData({
  71. month: m - 1
  72. })
  73. }
  74. this.updateMonth()
  75. this.getInfo()
  76. }
  77. },
  78. getDown: function () {
  79. if (!this.data.now) {
  80. let y = this.data.year
  81. let m = this.data.month
  82. if (y * 100 + m < date.getFullYear() * 100 + date.getMonth() + 1) {
  83. if (m >= 12) {
  84. this.setData({
  85. month: 1,
  86. year: y + 1
  87. })
  88. } else {
  89. this.setData({
  90. month: m + 1
  91. })
  92. }
  93. this.updateMonth()
  94. this.getInfo()
  95. }
  96. }
  97. },
  98. updateMonth: function () {
  99. let y = this.data.year
  100. let m = this.data.month
  101. if (y * 100 + m < date.getFullYear() * 100 + date.getMonth() + 1) {
  102. this.setData({
  103. now: false
  104. })
  105. } else {
  106. this.setData({
  107. now: true
  108. })
  109. }
  110. if (y * 100 + m - 1 >= 201808) {
  111. this.setData({
  112. start: true
  113. })
  114. } else {
  115. this.setData({
  116. start: false
  117. })
  118. }
  119. if (m <= 1) {
  120. this.setData ({
  121. upMonth: 12,
  122. downMonth: m + 1
  123. })
  124. } else if (m >= 12) {
  125. this.setData ({
  126. upMonth: m - 1,
  127. downMonth: 1
  128. })
  129. } else {
  130. this.setData ({
  131. upMonth: m - 1,
  132. downMonth: m + 1
  133. })
  134. }
  135. },
  136. getInfo: function () {
  137. this.setData({
  138. loading: false
  139. })
  140. if (this.data.month < 10) {
  141. var str = this.data.year + '-0' + this.data.month + '-01'
  142. } else {
  143. var str = this.data.year + '-' + this.data.month + '-01'
  144. }
  145. var that = this
  146. var url = 'v1/user/sale_rank/list'
  147. var params = {
  148. choose_time: str,
  149. cache: false
  150. }
  151. var success = function (res) {
  152. // console.log(lparams)
  153. if (res.data.reward_config_list.length > 0 && res.data.reward_config_list[0].url_type === 'inner_url') {
  154. var lparams = res.data.reward_config_list[0].guide_url
  155. var cid1
  156. if (lparams.indexOf("?") != -1) {
  157. var cid = lparams.split("?")[1]
  158. cid1 = cid.split("=")[1]
  159. that.setData({
  160. rid: cid1
  161. })
  162. }
  163. that.getOrderInfo()
  164. }
  165. that.setData({
  166. loading: true,
  167. config: res.data.reward_config_list,
  168. list: res.data.list,
  169. sale: res.data.self_sale,
  170. reward: res.data.reward_wx_user,
  171. })
  172. }
  173. _request.$get(url, params, success)
  174. },
  175. getOrderInfo () {
  176. var that = this
  177. var url = "v1/product/" + that.data.rid
  178. var params = {
  179. }
  180. var success = function (val) {
  181. console.log(val)
  182. that.setData({
  183. orderInfo: val.data
  184. })
  185. }
  186. _request.$get(url, params, success)
  187. },
  188. shareInfo () {
  189. var that = this
  190. var url = "v1/share/info"
  191. var params = {
  192. sc: 'xcx_rank',
  193. ri: 0,
  194. rp: 0,
  195. to: 'group'
  196. }
  197. var success = function (val) {
  198. console.log(val)
  199. }
  200. _request.$post(url, params, success)
  201. },
  202. onShareAppMessage: function (val) {
  203. var that = this
  204. if (val.from === 'button') {
  205. that.data.cheack = true
  206. }
  207. if (val.from === 'menu') {
  208. that.data.cheack = false
  209. }
  210. if (that.data.cheack) {
  211. if (this.data.config.length > 0) {
  212. var shareTitle
  213. if (this.data.orderInfo.share_content) {
  214. shareTitle = this.data.orderInfo.share_content
  215. } else {
  216. shareTitle = this.data.orderInfo.name
  217. }
  218. return {
  219. title: shareTitle,
  220. path: '/pages/start/start?url=pages/projects/project-detail/project-detail&id=' + this.data.orderInfo.id + '&invite=' + getApp().globalData.wx_id,
  221. imageUrl: this.data.orderInfo.cover,
  222. success: function(res) {
  223. that.shareInfo()
  224. },
  225. fail: function(res) {
  226. }
  227. }
  228. }
  229. } else {
  230. if (this.data.config.length > 0) {
  231. return {
  232. title: 'FOHOW玖玖' + this.data.month + '月销售冠军,悬赏' + this.data.config[0].reward_amount / 100 + '元',
  233. path: '/pages/start/start?url=packageUser/pages/user/invite/rank/rank&year=' + this.data.year + '&month=' + this.data.month +'&invite=' + getApp().globalData.wx_id,
  234. imageUrl: this.data.config[0].s_img,
  235. success: function(res) {
  236. that.shareInfo()
  237. },
  238. fail: function(res) {
  239. }
  240. }
  241. } else {
  242. let m = date.getMonth() + 1
  243. return {
  244. title: 'FOHOW玖玖' + m + '月销售冠军,悬赏xxx元',
  245. path: '/pages/start/start?url=packageUser/pages/user/invite/rank/rank&invite=' + getApp().globalData.wx_id,
  246. imageUrl: 'https://fohow.oss-cn-shenzhen.aliyuncs.com/xcx/share/rank.jpg',
  247. success: function(res) {
  248. },
  249. fail: function(res) {
  250. }
  251. }
  252. }
  253. }
  254. },
  255. })