api.js 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. //引入配置文件
  2. import config from './config.js'
  3. import * as comon from './common.js' //引入common
  4. import * as db from './db.js'
  5. //需要token验证接口
  6. let retryRequests=[];
  7. const send = (url,method,data,callback, complete) => {
  8. let token = db.get("token");
  9. let header={}
  10. if(token){
  11. header={
  12. 'Accept': 'application/json',
  13. 'Content-Type': 'application/json',
  14. 'Authorization':db.get('token')
  15. }
  16. }else{
  17. header={
  18. 'Accept': 'application/json',
  19. 'Content-Type': 'application/json',
  20. }
  21. }
  22. uni.request({
  23. url:config.apiBaseUrl+url,
  24. data:data,
  25. header: header,
  26. method: method,
  27. success: (response) => {
  28. if (response.data.code === 40000) {
  29. uni.showToast({
  30. icon: 'loading',
  31. title: response.data.msg ? response.data.msg : "请登录!",
  32. success: () => {
  33. setTimeout(() => {
  34. uni.redirectTo({
  35. url: '/pages/my/login'
  36. })
  37. }, 1500)
  38. }
  39. });
  40. return false;
  41. }
  42. const result = response.data
  43. callback(result);
  44. },
  45. complete: (response) => {
  46. setTimeout(function() {
  47. uni.hideLoading();
  48. }, 1000)
  49. complete ? complete() : "";
  50. },
  51. fail: (error) => {
  52. console.log('2222222',error)
  53. uni.showLoading({
  54. title: '网络开小差了'
  55. });
  56. setTimeout(function() {
  57. uni.hideLoading();
  58. }, 1000)
  59. if (error && error.response) {
  60. showError(error.response);
  61. } else {}
  62. },
  63. });
  64. }
  65. const showError = error => {
  66. let errorMsg = ''
  67. switch (error.status) {
  68. case 400:
  69. errorMsg = '请求参数错误'
  70. break
  71. case 401:
  72. errorMsg = '未授权,请登录'
  73. break
  74. case 403:
  75. errorMsg = '跨域拒绝访问'
  76. break
  77. case 404:
  78. errorMsg = `请求地址出错: ${error.config.url}`
  79. break
  80. case 408:
  81. errorMsg = '请求超时'
  82. break
  83. case 500:
  84. errorMsg = '服务器内部错误'
  85. break
  86. case 501:
  87. errorMsg = '服务未实现'
  88. break
  89. case 502:
  90. errorMsg = '网关错误'
  91. break
  92. case 503:
  93. errorMsg = '服务不可用'
  94. break
  95. case 504:
  96. errorMsg = '网关超时'
  97. break
  98. case 505:
  99. errorMsg = 'HTTP版本不受支持'
  100. break
  101. default:
  102. errorMsg = error.msg
  103. break
  104. }
  105. uni.showToast({
  106. title: errorMsg,
  107. icon: 'none',
  108. duration: 1000,
  109. complete: function() {
  110. setTimeout(function() {
  111. uni.hideToast();
  112. }, 1000);
  113. }
  114. });
  115. }
  116. // 登录
  117. export const loginApi=(data,callback)=>send('/wechat/code2Session/',"POST",data,callback)
  118. // 绑定
  119. export const loginBind=(data,callback)=>send('/wechat/wxbind/','POST',data,callback)
  120. // 轮播图
  121. export const getSwiper=(callback)=>send('/wechat/activity/list/','GET','',callback)
  122. // 轮播图
  123. export const getNewCar=(is_hot,CarName,callback)=>send(`/wechat/vehicle/list/?is_hot=${is_hot}&name=${CarName}`,'GET','',callback)
  124. // 买车详情
  125. export const getBuyCar=(series_id,callback)=>send(`/wechat/vehicle/models/?series_id=${series_id}`,'GET','',callback)
  126. //买车详情列表
  127. export const getBuyCarDetial=(id,callback)=>send(`/wechat/vehicle/model/detail/?id=${id}`,'GET','',callback)
  128. // 二手车
  129. export const getUsedCarList=(name,brand,gearbox,color,displacement,emission,seat_count,oil_type,price_range,mileage__range,years_range,callback)=>send(`/wechat/usedvehicle/list/?name=${name}&brand=${brand}&gearbox=${gearbox}&color=${color}&displacement=${displacement}&emission=${emission}&seat_count=${seat_count}&oil_type=${oil_type}&price_range=${price_range}&mileage__range=${mileage__range}&years_range=${years_range}`,'GET','',callback)
  130. // 二手车详情
  131. export const getUsedCarDetial=(id,callback)=>send(`/wechat/usedvehicle/detail/?id=${id}`,'GET','',callback)
  132. // 门店
  133. export const getStoreList=(name,callback)=>send(`/wechat/store/list/?name=${name}`,'GET','',callback)
  134. // 商品列表
  135. export const getProductList=(name,id,callback)=>send(`/wechat/product/list/?name=${name}&category=${id}`,'GET','',callback)
  136. // 商品类别
  137. export const getProductType=(callback)=>send(`/wechat/product/types/`,'GET','',callback)
  138. // 商品详情
  139. export const getProductDetial=(id,callback)=>send(`/wechat/product/detail/?id=${id}`,'GET','',callback)
  140. // 搜索类型
  141. export const getSearchType=(callback)=>send(`/wechat/usedvehicle/options/`,'GET','',callback)
  142. // 询问底价
  143. export const postAskPrice=(data,callback)=>send(`/wechat/customer/inquiry/`,'POST',data,callback)
  144. // 添加地址
  145. export const postAddress=(data,callback)=>send(`/wechat/customer/address/`,'POST',data,callback)
  146. // 获取地址列表
  147. export const getAddress=(callback)=>send(`/wechat/customer/address/`,'GET','',callback)
  148. // 修改地址
  149. export const postEdimtAddress=(id,data,callback)=>send(`/wechat/customer/address/${id}/addr_update/`,'POST',data,callback)
  150. // 删除地址
  151. export const getdeleteAddress=(id,callback)=>send(`/wechat/customer/address/${id}/addr_destroy/`,'GET','',callback)
  152. // 修改默认选项
  153. export const getRadio=(id,status,callback)=>send(`/wechat/customer/address/${id}/set_default/?status=${status}`,'GET','',callback)
  154. // 卖车
  155. export const postUserdCar=(data,callback)=>send(`/wechat/customer/usedvehicle_estimate/`,'POST', data,callback)
  156. // 意向门店列表
  157. export const getBrands=(callback)=>send(`/wechat/customer/usedvehicle/brands/`,'GET','',callback)
  158. // 预约试驾
  159. export const postDriveReserve=(data,callback)=>send(`/wechat/customer/drive_reserve/`,'POST',data,callback)
  160. // 服务类型
  161. export const getServeType=(callback)=>send(`/wechat/customer/maint_reserve/options/`,'GET','',callback)
  162. // 预约服务
  163. export const postreserve=(data,callback)=>send(`/wechat/customer/maint_reserve/`,'POST',data,callback)
  164. // 下单页面
  165. export const postshopdetial=(id,callback)=>send(`/wechat/customer/plan_product_order/?id=${id}`,'GET','',callback)
  166. // 下单
  167. export const postPlaceOrder=(data,callback)=>send(`/wechat/customer/product_order/add/`,'POST',data,callback)
  168. // 上传头像
  169. export const postupUserInfo=(data,callback)=>send(`/wechat/setUserInfo/`,'POST',data,callback)
  170. // 获取头像信息
  171. export const getUserInfo=(callback)=>send(`/wechat/info/`,'GET','',callback)
  172. // 车辆绑定
  173. export const postBindCar=(data,callback)=>send(`/wechat/customer/vehicle/`,'POST',data,callback)
  174. // 询价单列表
  175. export const getInquiry=(callback)=>send(`/wechat/customer/inquiry/`,'GET','',callback)
  176. // 预约试驾列表
  177. export const getdriveReserve=(callback)=>send(`/wechat/customer/drive_reserve/`,'GET','',callback)
  178. // 保养
  179. export const getmaintReserve=(callback)=>send(`/wechat/customer/maint_reserve/`,'GET','',callback)
  180. // 活动
  181. export const getAction=(id,callback)=>send(`/wechat/activity/detail/?id=${id}`,'GET','',callback)
  182. // 订单列表
  183. export const getorderlist=(callback)=>send(`/wechat/customer/product_order/`,'GET','',callback)
  184. // 置换列表
  185. export const getUsedvehicleEstimate=(callback)=>send(`/wechat/customer/usedvehicle_estimate/`,'GET', '',callback)
  186. // 车辆列表
  187. export const getBindCar=(callback)=>send(`/wechat/customer/vehicle/`,'GET','',callback)
  188. // 续保咨询
  189. export const postConsultation=(data,callback)=>send(`/wechat/customer/insur_consultation/`,'POST',data,callback)
  190. // 维修记录
  191. export const getMaintenanceLog=(id,callback)=>send(`/wechat/customer/get_maint_order/?id=${id}`,'GET','',callback)