rechargee.js 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. define(['$', 'template', 'IScroll', 'recharge', 'native', 'config', 'user'], function ($, template, IScroll, recharge, native, config, user) {
  2. var backHash;
  3. function back(event) {
  4. event.preventDefault();
  5. $(document).trigger('spa:navigate', {
  6. hash: backHash,
  7. pushData: {
  8. dontNeedReload: true
  9. }
  10. });
  11. }
  12. function fixScroll(pageData) {
  13. if (pageData.scroll) {
  14. pageData.scroll.destroy();
  15. pageData.scroll = null;
  16. }
  17. setTimeout(function () {
  18. pageData.scroll = new IScroll('#myCouponScroll');
  19. }, 50);
  20. }
  21. return {
  22. title: '充值规则',
  23. body: '',
  24. init: function (pageData, dtd) {
  25. /* this是什么? */
  26. var $view = this;
  27. var $doc = $(document);
  28. /* 定义按钮事件。
  29. * 为什么不是$(selector).onclick(function)呢?
  30. */
  31. // 返回
  32. $view.on('swipeRight', function (event) {
  33. back.call(this, event);
  34. });
  35. $.newTouch('.back-button', function (event) {
  36. back.call(this, event);
  37. }, $view);
  38. $view.on('tapBackButton', function (event) {
  39. back.call(this, event);
  40. });
  41. //点击展示协议 vactivity-text
  42. $.newTouch('.pay-agreement', function (event) {
  43. event.preventDefault();
  44. $doc.trigger('spa:navigate', {
  45. hash: 'activity-text',
  46. pushData: {
  47. needReload: true
  48. }
  49. });
  50. }, $view);
  51. // //规则 pay-rule
  52. // $.newTouch('.pay-rule', function (event) {
  53. // event.preventDefault();
  54. // $doc.trigger('spa:navigate', {
  55. // hash: 'activity-rule',
  56. // pushData: {
  57. // needReload: true
  58. // }
  59. // });
  60. // }, $view);
  61. // 点击充值
  62. $.newTouch('.btn-add-recharge', function (event) {
  63. event.preventDefault();
  64. $doc.trigger('spa:openloader');
  65. var value = $(this).attr('data-value');
  66. recharge.addRechargeorder({
  67. user_id: user.id,
  68. recharge_id: $(this).attr('data-id')
  69. }, function (res) {
  70. $doc.trigger('spa:closeloader');
  71. if (res.success) {
  72. // 更新user的订单
  73. user.orders[1].data.push({
  74. id: res.data._id.$id,
  75. products: [{product: {name: '充值' + value + '元'}}],
  76. final_price: res.data.price
  77. });
  78. // 只能用现金支付,跳转到pay页面
  79. $doc.trigger('spa:navigate', {
  80. hash: 'pay',
  81. pushData: {
  82. isRecharge: true,
  83. orderID: res.data._id.$id,
  84. backHash: 'recharge'
  85. }
  86. });
  87. }
  88. });
  89. }, $view);
  90. dtd.resolve();
  91. },
  92. beforeopen: function (pageData, dtd) {
  93. /*设置底部功能区*/
  94. setTimeout(function () {
  95. $('.coupon-items').css("margin-bottom", "15%");
  96. }, 500);
  97. /*获取上一页跳转的路由名称*/
  98. var pushData = pageData.pushData;
  99. backHash = pushData.backHash ? pushData.backHash : '';
  100. dtd.resolve();
  101. },
  102. afteropen: function (pageData, dtd) {
  103. var $view = this;
  104. var $doc = $(document);
  105. if (!pageData.pushData.dontNeedReload) {
  106. $doc.trigger('spa:openloader');
  107. recharge.getRechargeList(function (res) {
  108. $doc.trigger('spa:closeloader');
  109. if (res.success) {
  110. var tpl = template('recharge/index', {
  111. showNavBar: !config.isWX,
  112. recharges: res.data
  113. });
  114. $('.spa-page-body', $view).html(tpl);
  115. fixScroll(pageData);
  116. //var value = $(this).attr('data-value');
  117. var value = $('.btn-add-recharge').attr('data-index');
  118. for (var i = value; i < 2; i++) {
  119. }
  120. /*设置返现协议居中*/
  121. setTimeout(function () {
  122. var rechargeRule = $(".rechargeRule");
  123. var window = $("#rechargeScroll").width();
  124. rechargeRule.css("left", (window - rechargeRule.width()) / 2);
  125. }, 10);
  126. setTimeout(function () {
  127. pageData.scroll = new IScroll('#rechargeScroll');
  128. }, 500);
  129. }
  130. });
  131. }
  132. dtd.resolve();
  133. },
  134. beforeclose: function (pageData, dtd) {
  135. dtd.resolve();
  136. }
  137. }
  138. })