C端小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

183 lines
4.3 KiB

  1. const Promise = require('../utils/es6-promise.min').Promise
  2. let config = require("../config/config.js");
  3. var app = getApp();
  4. const func = {
  5. wxLogin: function (scene) {
  6. return new Promise((resolve, reject) => {
  7. wx.login({
  8. success: function (res) {
  9. resolve(res)
  10. },
  11. fail: function (err) {
  12. reject(err)
  13. },
  14. complete: function (res) {
  15. //console.log("wxLogin complete:" + res)
  16. }
  17. })
  18. })
  19. },
  20. userLogin: function (code, source) {
  21. return new Promise((resolve, reject) => {
  22. wx.request({
  23. url: config.api.login,
  24. data: {
  25. appId: app.globalData.appId,
  26. code: code,
  27. scene: scene,
  28. sceneAddress: sceneAddress
  29. },
  30. method: "POST",
  31. success: function (res) {
  32. resolve(res)
  33. },
  34. fail: function (err) {
  35. reject(err)
  36. },
  37. complete: function (res) {
  38. //console.log("userLogin complete:" + res)
  39. }
  40. })
  41. })
  42. },
  43. /**
  44. * 授权后获取用户的昵称,unionId等信息
  45. */
  46. getUserInfo: function (encryptedData, iv) {
  47. console.log(app.globalData.openId)
  48. return new Promise((resolve, reject) => {
  49. wx.request({
  50. url: config.api.getUserInfo,
  51. header: {
  52. "content-type": "application/json;charset=UTF-8",
  53. "token": app.globalData.token
  54. },
  55. data: {
  56. encryptedData: encryptedData,
  57. iv: iv,
  58. },
  59. method: "POST",
  60. success: function (res) {
  61. resolve(res)
  62. },
  63. fail: function (err) {
  64. reject(err)
  65. },
  66. complete: function (res) {
  67. //console.log("getUserInfo complete:" + res)
  68. }
  69. })
  70. })
  71. },
  72. /**
  73. * 授权后获取用户的手机号
  74. */
  75. getUserPhone: function (encryptedData, iv) {
  76. return new Promise((resolve, reject) => {
  77. wx.request({
  78. url: config.api.getUserPhone + "?token=" + app.globalData.token,
  79. data: {
  80. encryptedData: encryptedData,
  81. iv: iv,
  82. },
  83. header: {
  84. "content-type": "application/json;charset=UTF-8",
  85. "token": app.globalData.token
  86. },
  87. method: "POST",
  88. success: function (res) {
  89. resolve(res)
  90. },
  91. fail: function (err) {
  92. reject(err)
  93. },
  94. complete: function (res) {
  95. //console.log("getUserInfo complete:" + res)
  96. }
  97. })
  98. })
  99. },
  100. /**
  101. * 优惠券查询
  102. */
  103. getCouponList: function (pageNum, pageSize) {
  104. return new Promise((resolve, reject) => {
  105. wx.request({
  106. url: config.api.couponList,
  107. header: {
  108. "content-type": "application/json;charset=UTF-8",
  109. "token": app.globalData.token
  110. },
  111. method: "Get",
  112. data: {
  113. pageNum: pageNum,
  114. pageSize: pageSize
  115. },
  116. success: function (res) {
  117. resolve(res)
  118. },
  119. fail: function (err) {
  120. reject(err)
  121. },
  122. complete: function (res) {
  123. console.log(res)
  124. }
  125. })
  126. })
  127. },
  128. /**
  129. * 优惠券详情
  130. */
  131. getCouponDetail: function (couponId) {
  132. return new Promise((resolve, reject) => {
  133. wx.request({
  134. url: config.api.couponDetail,
  135. header: {
  136. "content-type": "application/json;charset=UTF-8",
  137. "token": app.globalData.token
  138. },
  139. method: "Get",
  140. data: {
  141. id: couponId
  142. },
  143. success: function (res) {
  144. resolve(res)
  145. },
  146. fail: function (err) {
  147. reject(err)
  148. },
  149. complete: function (res) {
  150. console.log(res)
  151. }
  152. })
  153. })
  154. },
  155. /**
  156. * 订单下单
  157. */
  158. orderSave: function (couponId) {
  159. return new Promise((resolve, reject) => {
  160. wx.request({
  161. url: config.api.orderSave,
  162. header: {
  163. "token": app.globalData.token
  164. },
  165. method: "Post",
  166. data: {
  167. couponId: couponId,
  168. token: app.globalData.token
  169. },
  170. success: function (res) {
  171. resolve(res)
  172. },
  173. fail: function (err) {
  174. reject(err)
  175. },
  176. complete: function (res) {
  177. console.log(res)
  178. }
  179. })
  180. })
  181. },
  182. }
  183. module.exports = func;