index.js 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. /*
  2. * queryStringify
  3. * 将k-v的对象序列化转成 url?k=v&k1=v1;
  4. */
  5. const queryStringify = function (search = {}) {
  6. return Object.entries(search)
  7. .reduce(
  8. (t, v) => `${t}${v[0]}=${encodeURIComponent(v[1])}&`,
  9. Object.keys(search).length ? '?' : ''
  10. )
  11. .replace(/&$/, '')
  12. }
  13. export default ($axios) => {
  14. // 订阅号用户登录
  15. const customLogin = (data) =>
  16. $axios.post('/wx/user/login/subscribe/verify/code', data)
  17. // 订阅号用户绑定邀请码登录
  18. const customLoginWithCode = (data) =>
  19. $axios.post('/wx/user/login/subscribe/invitation/code', data)
  20. // 服务号微信授权登录
  21. const wechatLogin = (data) =>
  22. $axios.post('/wx/user/login/authorization', data)
  23. // 服务号微信授权绑定邀请码登录
  24. const wechatLoginWithCode = (data) =>
  25. $axios.post('/wx/user/login/service/invitation/code', data)
  26. // 获取jssdk配置参数
  27. const initWxConfig = (params = {}) =>
  28. $axios.get('/wx/sdk/config/data', { params })
  29. // 发送验证码
  30. const sendVerifyCode = (data = {}) =>
  31. $axios.post('/wx/user/login/verify/code/send', data)
  32. // 获取文章列表
  33. const getArticleList = (params = {}) =>
  34. $axios.get('/wx/data/article/list', { params })
  35. // 获取图片列表
  36. const getImageList = (params = {}) =>
  37. $axios.get('/wx/data/image/list', { params })
  38. // 获取视频列表
  39. const getVideoList = (params = {}) =>
  40. $axios.get('/wx/data/video/list', { params })
  41. // 获取文件列表
  42. const getFileList = (params = {}) =>
  43. $axios.get('/wx/data/file/list', { params })
  44. // 获取文章详情
  45. const getArticleDetail = (params = {}) =>
  46. $axios.get('/wx/data/article/form/data', { params })
  47. // 用户反馈
  48. const feedback = (data = {}) => $axios.post('/wx/data/feedback/submit', data)
  49. // 获取已认证机构列表
  50. const getAuthClubList = (params = {}) =>
  51. $axios.get('/wx/auth/club/list', { params })
  52. // 获取已认证机构详情
  53. const getAuthClubDetail = (params = {}) =>
  54. $axios.get('/wx/auth/club/details', { params })
  55. // 获取已认证商品分类
  56. const getAuthProductCateList = (params = {}) =>
  57. $axios.get('/wx/auth/product/type/list', { params })
  58. // 获取已认证商品列表
  59. const getAuthProductList = (params = {}) =>
  60. $axios.get('/wx/auth/product/list', { params })
  61. // 验证token是否到期
  62. const checkToken = (data = {}) =>
  63. $axios.post('/wx/user/login/token/check', data)
  64. // 下载文件
  65. const downFile = (params = {}) => $axios.get('/wx/download/file', { params })
  66. // 获取城市列表
  67. const fetchCityList = (params = {}) =>
  68. $axios.get('/wx/address/select', { params })
  69. // 获取城市列表
  70. const fetchAllCityList = () => $axios.get('/wx/address/select/all')
  71. // 获取供应商信息
  72. const fetchSupplierInfo = (params = {}) =>
  73. $axios.get('/wx/auth/shop/info', { params })
  74. // 获取医师列表
  75. const fetchDoctorList = (params = {}) =>
  76. $axios.get('/wx/auth/doctor/list', { params })
  77. // 获取医师详情
  78. const fetchDoctorDetail = (params = {}) =>
  79. $axios.get('/wx/auth/doctor/details', { params })
  80. // 公众号类型
  81. const checkAccountType = (params = {}) =>
  82. $axios.get('/wx/sdk/account/type', { params })
  83. // 判断用户手机号是否绑定了机构信息
  84. const fetchClubAuthInfo = (params = {}) =>
  85. $axios.get('/wx/user/info', { params })
  86. // 获取品牌列表
  87. const fetchBrandList = (params = {}) =>
  88. $axios.get('/wx/auth/brand/list', { params })
  89. // 获取设备分类列表
  90. const fetchProductSelectList = (params = {}) =>
  91. $axios.get('/wx/auth/product/type/select', { params })
  92. // 机构注册(全部信息注册)
  93. const clubUserRegisterAll = (data = {}) =>
  94. $axios.post('/wx/user/register/all', data)
  95. // 机构账号注册
  96. const clubUserRegister = (data = {}) =>
  97. $axios.post('/wx/user/register/simple', data)
  98. // 机构账号密码找回
  99. const clubUserReset = (data = {}) =>
  100. $axios.post('/wx/user/password/update', data)
  101. // 机构账号登录
  102. const clubUserLogin = (data = {}) =>
  103. $axios.post('/wx/user/login/password', data)
  104. // 机构账号验证码
  105. const clubUserCodeSend = (data = {}) =>
  106. $axios.post('/wx/user/login/code/send', data)
  107. // 查询机构认证信息
  108. const fetchClubAuthInfoData = (params = {}) =>
  109. $axios.get('/wx/auth/form/data', { params })
  110. // 查询机构认证信息
  111. const authClubSave = (data = {}) => $axios.post('/wx/auth/save', data)
  112. // 查询授权商品列表
  113. const getClubAuthProductList = (params = {}) =>
  114. $axios.get('/wx/auth/product/list', { params })
  115. // 查询授权商品列表
  116. const getProductDetails = (params = {}) =>
  117. $axios.get('/wx/auth/product/form/data', { params })
  118. // 编辑保存授权商品
  119. const authProducSave = (data = {}) =>
  120. $axios.post('/wx/auth/product/save', data)
  121. // 高德地图api : 将坐标转化为高德地图坐标
  122. const assistant = (params = {}) =>
  123. fetch(
  124. 'https://restapi.amap.com/v3/assistant/coordinate/convert' +
  125. queryStringify(params)
  126. )
  127. return {
  128. customLogin,
  129. customLoginWithCode,
  130. wechatLogin,
  131. wechatLoginWithCode,
  132. initWxConfig,
  133. sendVerifyCode,
  134. getArticleList,
  135. getImageList,
  136. getVideoList,
  137. getFileList,
  138. getArticleDetail,
  139. feedback,
  140. getAuthClubList,
  141. getAuthProductCateList,
  142. getAuthProductList,
  143. checkToken,
  144. downFile,
  145. fetchCityList,
  146. fetchAllCityList,
  147. fetchSupplierInfo,
  148. getAuthClubDetail,
  149. fetchDoctorList,
  150. fetchDoctorDetail,
  151. checkAccountType,
  152. assistant,
  153. fetchClubAuthInfo,
  154. fetchBrandList,
  155. fetchProductSelectList,
  156. clubUserRegisterAll,
  157. clubUserRegister,
  158. clubUserReset,
  159. clubUserLogin,
  160. clubUserCodeSend,
  161. fetchClubAuthInfoData,
  162. authClubSave,
  163. getClubAuthProductList,
  164. getProductDetails,
  165. authProducSave,
  166. }
  167. }