Files
fastbee/wechat/API/request.js
2021-08-30 09:56:13 +08:00

226 lines
5.3 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
@file 微信请求封装
@using 使用方法参考 https://bypanghu.github.io/blog/2020/10/08/Extension/
*/
import {appLogin} from '../utils/login'
const API_BASE_URL = 'http://home.xxmfl.com:9160/';
var loginKey = false
const request = (url, method, data) => {
wx.showLoading({
title: '请求中,请稍等',
})
let _url = API_BASE_URL + url
return new Promise((resolve, reject) => {
wx.request({
url: _url,
method: method,
data: data,
header: {
'Content-Type': method == 'get'?'application/x-www-form-urlencoded' : 'application/json',
'Authorization': wx.getStorageSync('token') ? 'Bearer '+ wx.getStorageSync('token') : ''
},
success: requestData =>{
if(requestData.data.code == 401){
loginKey = true
try{
wx.showLoading({
title: '重新登录中……',
})
if(loginKey){
wx.login({
success:(res)=>{
if(res.errMsg == "login:ok"){
request('wxLogin','post',{
code : res.code
}).then(res=>{
wx.setStorageSync('token', res.data.token)
if(res.data.userInfo){
wx.setStorageSync('userInfo', res.data.userInfo)
}
var reData = request(url, method, data)
resolve(reData)
})
}
}
})
}
wx.hideLoading({
success: (res) => {
},
})
}catch (err){
console.log("出错了")
reject(err)
}
loginKey = false
}
else if(requestData.data.code == 500){
wx.showToast({
title: requestData.data.msg,
icon:'none',
duration:1000
})
resolve(requestData.data)
}
else{
resolve(requestData.data)
}
},
fail(error) {
console.log("访问出错")
reject(error)
},
complete(aaa) {
wx.hideLoading()
// 加载完成
}
})
})
}
/**
* 小程序的promise没有finally方法自己扩展下
*/
Promise.prototype.finally = function (callback) {
var Promise = this.constructor;
return this.then(
function (value) {
Promise.resolve(callback()).then(
function () {
return value;
}
);
},
function (reason) {
Promise.resolve(callback()).then(
function () {
throw reason;
}
);
}
);
}
module.exports = {
API_BASE_URL ,
request,
userLogin:(data)=>{
return request('wxLogin','post',data)
},
setUserInfo:(data)=>{
return request('user/getUserWxInfo','post',data)
},
getCoinList:(data)=>{
return request('user/coinListPage','get',data)
},
getToothbrushList:(data)=>{
return request("toothbrush/getToothbrushList",'get',data)
},
userSign:(data)=>{
return request("user/sign",'post',data)
},
addToothBrush:(data)=>{
return request("toothbrush/save","post",data)
},
getSignData:(data)=>{
return request("user/signList",'get',data)
},
getCoinListPage:(data)=>{
return request("user/coinListPage",'get',data)
},
updateBrush:(data)=>{
return request("toothbrush/update",'post',data)
},
/**
*
* 刷牙数据
*
*/
//保存刷牙数据
saveBrushRecord:(data)=>{
return request("brush/save",'post',data)
},
//保存历史刷牙数据
saveHistory:(data)=>{
return request("brush/saveHistory",'post',data)
},
//保存意见反馈
saveFeedback:(data)=>{
return request("feedback/save",'post',data)
},
/**
*
* 首页组
*/
getLastBrushData:(data)=>{
return request('home/lastBrushData','get',data)
},
getBrushRecordById:(data)=>{
return request('brush/getBrushRecordById','get',data)
},
updateToothBrushBattery:(data)=>{
return request('toothbrush/updateToothBrushBattery','post',data)
},
resetBrushHead:(data)=>{
return request("toothbrush/resetBrushHead",'post',data)
},
updateBrushScheme:(data)=>{
return request("toothbrush/updateBrushScheme",'post',data)
},
getAdInfo:(data)=>{
return request("systemParam/getAdInfo",'get',data)
},
/**
*
* 数据
*/
getDailyBrushList:(data)=>{
return request("data/dailyBrushList",'get',data)
},
getWeekBrushList:(data)=>{
return request('data/weeklyBrushList','get',data)
},
dailyBrushDayList:(data)=>{
return request("data/dailyBrushDayList",'get',data)
},
weeklyBrushWeekData:(data)=>{
return request('data/weeklyBrushWeekData','get',data)
},
monthlyBrushList :(data)=>{
return request("data/monthlyBrushList",'get',data)
},
monthlyBrushMonthData:(data)=>{
return request("data/monthlyBrushMonthData",'get',data)
},
/**
* 个人信息
*/
changeName:(data)=>{
return request("user/updateNickName",'post',data)
},
changePhone:(data)=>{
return request("user/updatePhone",'post',data)
},
changeAddress:(data)=>{
return request('user/updateAddress','post',data)
},
delBrush:(data)=>{
return request('toothbrush/delete','post',data)
},
uploadImg:(data)=>{
return request('upload/images','post',data)
}
}