index.js 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  1. var integral_catId = 0,
  2. integral_index = -1,
  3. page = 1;
  4. Page({
  5. data: {
  6. goods_list: []
  7. },
  8. onLoad: function (t) {
  9. getApp().page.onLoad(this, t), integral_catId = 0, integral_index = -1;
  10. page = 1, this.getGoodsList(integral_catId)
  11. },
  12. onReady: function (t) {
  13. getApp().page.onReady(this)
  14. },
  15. onShow: function (t) {
  16. getApp().page.onShow(this);
  17. var a = this;
  18. getApp().request({
  19. url: getApp().api.integral.index,
  20. data: {},
  21. success: function (t) {
  22. if (0 == t.code && (t.data.today && a.setData({
  23. register_day: 1
  24. }), a.setData({
  25. banner_list: t.data.banner_list,
  26. coupon_list: t.data.coupon_list,
  27. integral: t.data.user.integral,
  28. catList: t.data.cat_list
  29. }), -1 != integral_index)) {
  30. var e = [];
  31. e.index = integral_index, e.catId = integral_catId, a.catGoods({
  32. currentTarget: {
  33. dataset: e
  34. }
  35. })
  36. }
  37. },
  38. complete: function (t) {
  39. getApp().core.hideLoading()
  40. }
  41. })
  42. },
  43. exchangeCoupon: function (t) {
  44. var a = this,
  45. n = a.data.coupon_list,
  46. e = t.currentTarget.dataset.index,
  47. o = n[e],
  48. i = a.data.integral;
  49. if (parseInt(o.integral) > parseInt(i)) a.setData({
  50. showModel: !0,
  51. content: "当前积分不足",
  52. status: 1
  53. });
  54. else {
  55. if (0 < parseFloat(o.price)) var s = "需要" + o.integral + "积分+¥" + parseFloat(o.price);
  56. else s = "需要" + o.integral + "积分";
  57. if (parseInt(o.total_num) <= 0) return void a.setData({
  58. showModel: !0,
  59. content: "已领完,来晚一步",
  60. status: 1
  61. });
  62. if (parseInt(o.num) >= parseInt(o.user_num)) return o.type = 1, void a.setData({
  63. showModel: !0,
  64. content: "兑换次数已达上限",
  65. status: 1,
  66. coupon_list: n
  67. });
  68. getApp().core.showModal({
  69. title: "确认兑换",
  70. content: s,
  71. success: function (t) {
  72. t.confirm && (0 < parseFloat(o.price) ? (getApp().core.showLoading({
  73. title: "提交中"
  74. }), getApp().request({
  75. url: getApp().integral.exchange_coupon,
  76. data: {
  77. id: o.id,
  78. type: 2
  79. },
  80. success: function (e) {
  81. 0 == e.code && getApp().core.requestPayment({
  82. _res: e,
  83. timeStamp: e.data.timeStamp,
  84. nonceStr: e.data.nonceStr,
  85. package: e.data.package,
  86. signType: e.data.signType,
  87. paySign: e.data.paySign,
  88. complete: function (t) {
  89. "requestPayment:fail" != t.errMsg && "requestPayment:fail cancel" != t.errMsg ? "requestPayment:ok" == t.errMsg && (o.num = parseInt(o.num), o.num += 1, o.total_num = parseInt(o.total_num), o.total_num -= 1, i = parseInt(i), i -= parseInt(o.integral), a.setData({
  90. showModel: !0,
  91. status: 4,
  92. content: e.msg,
  93. coupon_list: n,
  94. integral: i
  95. })) : getApp().core.showModal({
  96. title: "提示",
  97. content: "订单尚未支付",
  98. showCancel: !1,
  99. confirmText: "确认"
  100. })
  101. }
  102. })
  103. },
  104. complete: function () {
  105. getApp().core.hideLoading()
  106. }
  107. })) : (getApp().core.showLoading({
  108. title: "提交中"
  109. }), getApp().request({
  110. url: getApp().api.integral.exchange_coupon,
  111. data: {
  112. id: o.id,
  113. type: 1
  114. },
  115. success: function (t) {
  116. 0 == t.code && (o.num = parseInt(o.num), o.num += 1, o.total_num = parseInt(o.total_num), o.total_num -= 1, i = parseInt(i), i -= parseInt(o.integral), a.setData({
  117. showModel: !0,
  118. status: 4,
  119. content: t.msg,
  120. coupon_list: n,
  121. integral: i
  122. }))
  123. },
  124. complete: function () {
  125. getApp().core.hideLoading()
  126. }
  127. })))
  128. }
  129. })
  130. }
  131. },
  132. hideModal: function () {
  133. this.setData({
  134. showModel: !1
  135. })
  136. },
  137. couponInfo: function (t) {
  138. var e = t.currentTarget.dataset;
  139. getApp().core.navigateTo({
  140. url: "/pages/integral-mall/coupon-info/index?coupon_id=" + e.id
  141. })
  142. },
  143. goodsAll: function () {
  144. var t = this.data.goods_list,
  145. e = [];
  146. for (var a in t) {
  147. var n = t[a].goods;
  148. for (var o in t[a].cat_checked = !1, n) e.push(n[o])
  149. }
  150. this.setData({
  151. index_goods: e,
  152. cat_checked: !0,
  153. goods_list: t
  154. })
  155. },
  156. catGoods: function (t) {
  157. var e = t.currentTarget.dataset,
  158. a = this,
  159. n = a.data.catList;
  160. integral_catId = e.catId, integral_index = e.index;
  161. var o = e.index;
  162. if (-1 === o) {
  163. var i = !0;
  164. for (var s in n) n[s].cat_checked = !1
  165. }
  166. if (0 <= o)
  167. for (var s in n) n[s].id == n[o].id ? i = !(n[s].cat_checked = !0) : n[s].cat_checked = !1;
  168. a.setData({
  169. cat_checked: i,
  170. catList: n,
  171. goods_list: []
  172. }), page = 1, a.getGoodsList(integral_catId)
  173. },
  174. getGoodsList: function (t) {
  175. var a = this; - 1 === integral_index && a.setData({
  176. cat_checked: !0
  177. }), getApp().core.showLoading({
  178. title: "加载中"
  179. }), getApp().request({
  180. url: getApp().api.integral.goods_list,
  181. data: {
  182. page: page,
  183. cat_id: t
  184. },
  185. success: function (t) {
  186. if (0 === t.code) {
  187. var e = a.data.goods_list;
  188. 0 < t.data.list.length && (0 < e.length && (e = e.concat(t.data.list)), 0 === e.length && (e = t.data.list), page += 1), 0 === t.data.list.length && getApp().core.showToast({
  189. title: "没有更多啦",
  190. icon: "none"
  191. }), a.setData({
  192. goods_list: e
  193. })
  194. }
  195. },
  196. complete: function () {
  197. getApp().core.hideLoading()
  198. }
  199. })
  200. },
  201. goodsInfo: function (t) {
  202. var e = t.currentTarget.dataset.goodsId;
  203. getApp().core.navigateTo({
  204. url: "/pages/integral-mall/goods-info/index?goods_id=" + e + "&integral=" + this.data.integral
  205. })
  206. },
  207. onHide: function (t) {
  208. getApp().page.onHide(this)
  209. },
  210. onUnload: function (t) {
  211. getApp().page.onUnload(this)
  212. },
  213. onPullDownRefresh: function (t) {
  214. getApp().page.onPullDownRefresh(this)
  215. },
  216. onShareAppMessage: function () {
  217. getApp().page.onShareAppMessage(this);
  218. var t = getApp().getUser(),
  219. e = "",
  220. a = getApp().core.getStorageSync(getApp().const.WX_BAR_TITLE);
  221. for (var n in a)
  222. if ("pages/integral-mall/index/index" === a[n].url) {
  223. e = a[n].title;
  224. break
  225. } return {
  226. path: "/pages/integral-mall/index/index?user_id=" + t.id,
  227. title: e || "积分商城"
  228. }
  229. },
  230. onReachBottom: function (t) {
  231. getApp().page.onReachBottom(this);
  232. this.getGoodsList(integral_catId)
  233. },
  234. shuoming: function () {
  235. getApp().core.navigateTo({
  236. url: "/pages/integral-mall/shuoming/index"
  237. })
  238. },
  239. detail: function () {
  240. getApp().core.navigateTo({
  241. url: "/pages/integral-mall/detail/index"
  242. })
  243. },
  244. exchange: function () {
  245. getApp().core.navigateTo({
  246. url: "/pages/integral-mall/exchange/index"
  247. })
  248. },
  249. register: function () {
  250. getApp().core.navigateTo({
  251. url: "/pages/integral-mall/register/index"
  252. })
  253. }
  254. });