login.js 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. //const app = require('../../js/api');
  2. import api from '../../js/api'
  3. // pages/login/login.js
  4. Page({
  5. /**
  6. * 页面的初始数据
  7. */
  8. data: {
  9. userInfo: {}
  10. },
  11. /**
  12. * 生命周期函数--监听页面加载
  13. */
  14. onLoad(options) {
  15. },
  16. /**
  17. * 生命周期函数--监听页面初次渲染完成
  18. */
  19. onReady() {
  20. },
  21. /**
  22. * 生命周期函数--监听页面显示
  23. */
  24. onShow() {
  25. },
  26. /**
  27. * 生命周期函数--监听页面隐藏
  28. */
  29. onHide() {
  30. },
  31. /**
  32. * 生命周期函数--监听页面卸载
  33. */
  34. onUnload() {
  35. },
  36. /**
  37. * 页面相关事件处理函数--监听用户下拉动作
  38. */
  39. onPullDownRefresh() {
  40. },
  41. /**
  42. * 页面上拉触底事件的处理函数
  43. */
  44. onReachBottom() {
  45. },
  46. /**
  47. * 用户点击右上角分享
  48. */
  49. onShareAppMessage() {
  50. },
  51. pay() {
  52. api.request_wechatPay(1)
  53. .then(res => {
  54. wx.requestPayment({
  55. timeStamp: res.data.data.unifiedOrderResult.timeStamp,
  56. nonceStr: res.data.data.unifiedOrderResult.nonceStr,
  57. package: res.data.data.unifiedOrderResult.package,
  58. signType: res.data.data.unifiedOrderResult.signType,
  59. paySign: res.data.data.unifiedOrderResult.paySign,
  60. success: res => {
  61. wx.hideLoading()
  62. wx.showToast({
  63. title: '支付成功!',
  64. })
  65. setTimeout(function () {
  66. wx.redirectTo({
  67. url: '../scan/scan',
  68. })
  69. }, 2000)
  70. },
  71. fail: res => {
  72. wx.hideLoading()
  73. wx.showModal({
  74. title: '支付失败',
  75. content: res.errMsg + '请稍后再试',
  76. showCancel: false,
  77. success(res) {
  78. if (res.confirm) {
  79. wx.switchTab({
  80. url: '../home/home',
  81. })
  82. }
  83. }
  84. })
  85. }
  86. })
  87. });
  88. },
  89. handleAuthLogin(e) {
  90. console.log('一键授权登录按钮被点击');
  91. wx.showLoading({
  92. title: '正在登录中...',
  93. })
  94. // if(e.detail.userInfo) {
  95. // wx.getUserProfile({
  96. // desc: '用于完善用户信息',
  97. // success:(res) => {
  98. // console.log(res.userInfo)
  99. // },
  100. // fail:(err) => {
  101. // console.log("获取用户信息失败",err)
  102. // }
  103. // })
  104. // }
  105. // 获取用户信息授权
  106. const that = this;
  107. wx.getUserProfile({
  108. desc: '用于完善用户资料', // 声明获取用户信息的目的
  109. success(res) {
  110. console.log('用户信息:', res.userInfo);
  111. var user = {
  112. UserName: res.userInfo.nickName,
  113. UserAvatarUrl: res.userInfo.avatarUrl,
  114. UserPhoneNumber: '',
  115. Address: ''
  116. };
  117. that.setData({
  118. userInfo:user
  119. })
  120. that.toLogin()
  121. // 将用户信息发送到服务器
  122. // 例如:wx.request({ url: 'https://example.com/userInfo', data: res.userInfo })
  123. },
  124. fail(err) {
  125. console.error('获取用户信息失败:', err);
  126. wx.hideLoading()
  127. },
  128. });
  129. },
  130. toLogin(){
  131. // 调用微信登录接口
  132. var that = this;
  133. wx.login({
  134. success(res) {
  135. if (res.code) {
  136. console.log('登录成功,code:', res.code);
  137. api.request_Wechatlogin(res.code)
  138. .then(res => {
  139. console.log("获取wid",res.data.data)
  140. wx.setStorageSync('WachatID', res.data.data)
  141. return api.request_AddMiniprogramUser(that.data.userInfo)
  142. }).then(res => {
  143. debugger
  144. console.log("添加user",res)
  145. wx.hideLoading()
  146. wx.redirectTo({
  147. url: '../scan/scan',
  148. })
  149. }).catch(err => {
  150. console.log("报错",res)
  151. wx.hideLoading()
  152. });
  153. } else {
  154. wx.hideLoading()
  155. console.log('登录失败:', res.errMsg);
  156. }
  157. },
  158. fail(err) {
  159. wx.hideLoading()
  160. console.error('登录接口调用失败:', err);
  161. },
  162. });
  163. }
  164. })