C端小程序
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

197 рядки
6.5 KiB

  1. const Http = require("../../utils/HttpBasics");
  2. const imgurl = require("../../utils/imgurl");
  3. const config = require("../../config/config");
  4. const QR = require("../../utils/memberqrcode.js");
  5. let app = getApp();
  6. Page({
  7. /**
  8. * 页面的初始数据
  9. */
  10. data: {
  11. },
  12. /**
  13. * 生命周期函数--监听页面加载
  14. */
  15. onLoad: function(options) {
  16. let that = this;
  17. if (decodeURIComponent(options.scene) == "undefined") {
  18. that.setData({
  19. scene: 0
  20. });
  21. } else {
  22. that.setData({
  23. scene: decodeURIComponent(options.scene)
  24. });
  25. that.setData({
  26. newArr: this.data.scene.split(':')
  27. })
  28. console.log(this.data.newArr)
  29. if (this.data.newArr[0]=='JC'){
  30. options.couponChannelId = this.data.newArr[1];
  31. }
  32. }
  33. console.log(options.couponChannelId)
  34. wx.showToast({
  35. title: '加载中',
  36. icon: "loading",
  37. duration: 2000
  38. })
  39. wx.setStorageSync('options', JSON.stringify(options))
  40. wx.setStorageSync('imgurl', imgurl)
  41. app.getLocation();
  42. if (options.couponChannelId || options.orderId) {
  43. that.userLogin(options);
  44. // if (options.cuserId){
  45. // /**
  46. // * 转赠判断
  47. // */
  48. // // that.userLogin(options.couponChannelId, null, options.cuserId, options.coverImg, options.userName, options.avatarUrl, options.couponOrderId, options.updateDate);
  49. // that.userLogin(options.couponChannelId, null, options.cuserId, options.coverImg, options.userName, options.avatarUrl, options.couponOrderId, options.updateDate);
  50. // } else if (options.orderGroupId){
  51. // // 来自于拼团
  52. // that.userLogin(options.couponChannelId, null, options.orderGroupId);
  53. // }else{
  54. // that.userLogin(options.couponChannelId, options.orderId);
  55. // }
  56. } else {
  57. that.userLogin()
  58. }
  59. },
  60. checkuerstatus(options) {
  61. let that = this;
  62. Http.post({
  63. url: config.api.checkUserStatus,
  64. data: {}
  65. })
  66. .then(res => {
  67. if (options && options.orderGroupId) {
  68. wx.redirectTo({
  69. url: `/pages/joinFrDpell/index?couponId=${options.couponId}&orderGroupId=${options.orderGroupId}&couponChannelId=${options.couponChannelId}&orderId=${options.orderId}`
  70. })
  71. return;
  72. }
  73. if (options&&options.couponChannelId && !options.cuserId) {
  74. wx.redirectTo({
  75. url: `/pages/coupon/detail/index?couponChannelId=${options.couponChannelId}`,
  76. })
  77. } else if (options &&options.couponChannelId && options.cuserId){
  78. /**
  79. * 转赠判断
  80. */
  81. wx.redirectTo({
  82. url: `/pages/coupon/detail/index?couponChannelId=${options.couponChannelId}&cuserId=${options.cuserId}&coverImg=${options.coverImg}&userName=${options.userName}&avatarUrl=${options.avatarUrl}&couponOrderId=${options.couponOrderId}&updateDate=${options.updateDate}`,
  83. })
  84. } else if (options &&options.orderId) {
  85. wx.redirectTo({
  86. url: `/pages/bargain/bargainDatail/bargainDatail?orderId=${options.orderId}&from='${"discount"}`,
  87. })
  88. }else{
  89. wx.switchTab({
  90. url: '/pages/main/index'
  91. });
  92. }
  93. })
  94. .catch(err => {
  95. if (err.code == 11004) {
  96. // 用户昵称未授权
  97. if (options && options.orderGroupId) {
  98. wx.redirectTo({
  99. url: `/pages/getuserinfo/index?couponId=${options.couponId}&orderGroupId=${options.orderGroupId}&couponChannelId=${options.couponChannelId}&orderId=${options.orderId}`
  100. })
  101. return;
  102. }
  103. if (options && options.couponChannelId && !options.cuserId) {
  104. wx.redirectTo({
  105. url: `/pages/getuserinfo/index?couponChannelId=${options.couponChannelId}`
  106. });
  107. } else if (options &&options.couponChannelId && options.cuserId){
  108. /**
  109. * 转赠判断
  110. */
  111. wx.redirectTo({
  112. url: `/pages/getuserinfo/index?couponChannelId=${options.couponChannelId}&cuserId=${options.cuserId}&coverImg=${options.coverImg}&userName=${options.userName}&avatarUrl=${options.avatarUrl}&couponOrderId=${options.couponOrderId}&updateDate=${options.updateDate}`
  113. });
  114. } else if (options && options.orderId) {
  115. wx.redirectTo({
  116. url: `/pages/getuserinfo/index?orderId=${options.orderId}&from='${"discount"}`
  117. });
  118. } else {
  119. wx.redirectTo({
  120. url: `/pages/getuserinfo/index`
  121. });
  122. }
  123. }
  124. });
  125. },
  126. /**
  127. * 用户登录
  128. */
  129. userLogin: function (options) {
  130. var that = this;
  131. // 登录
  132. wx.login({
  133. success: ({
  134. code
  135. }) => {
  136. wx.getSystemInfo({
  137. success: function(res) {
  138. that.setData({
  139. systemInfo: JSON.stringify(res)
  140. })
  141. }
  142. })
  143. var usrdata = {
  144. appId: config.weapp.AppId,
  145. code: code,
  146. sceneAddress: app.globalData.sceneAddress,
  147. scene: that.data.scene,
  148. systemInfo: that.data.systemInfo
  149. };
  150. if (app.globalData.locationInfo) {
  151. usrdata = {
  152. appId: config.weapp.AppId,
  153. code: code,
  154. sceneAddress: app.globalData.sceneAddress,
  155. latitude: "" + app.globalData.locationInfo.latitude,
  156. longitude: "" + app.globalData.locationInfo.longitude,
  157. scene: that.data.scene,
  158. systemInfo: that.data.systemInfo
  159. };
  160. }
  161. Http.post({
  162. url: config.api.login,
  163. data: usrdata
  164. })
  165. .then(res => {
  166. that.setData({
  167. showPages: true
  168. })
  169. app.globalData.token = res.data.token;
  170. Http.setToken(res.data.token);
  171. if (options&&(options.couponChannelId || options.orderId)){
  172. that.checkuerstatus(options);
  173. }else{
  174. that.checkuerstatus();
  175. }
  176. })
  177. .catch(err => {
  178. wx.showModal({
  179. title: '提示',
  180. showCancel: false,
  181. content: '登录失败,请重新尝试',
  182. success:function(res){
  183. if (res.cancel) {
  184. //点击取消,默认隐藏弹框
  185. } else {
  186. //点击确定
  187. wx.reLaunch({
  188. url: '/pages/index/index',
  189. })
  190. }
  191. }
  192. })
  193. });
  194. }
  195. });
  196. },
  197. })