|
const BASE_URL = 'https://farm.evcc.top/seningserver/app/datareport'
|
|
export class ApiService {
|
constructor(baseURL = BASE_URL) {
|
this.baseURL = baseURL
|
}
|
|
async request({ url, method = 'GET', data = {}, headers = {} }) {
|
|
return new Promise((resolve, reject) => {
|
uni.request({
|
url: this.baseURL + url,
|
method,
|
data,
|
header: {
|
'Content-Type': 'application/json',
|
...headers
|
},
|
success: (res) => {
|
if (res.statusCode >= 200 && res.statusCode < 300) {
|
resolve(res.data)
|
} else {
|
console.error(`[API ERROR] ${method} ${url}`, res)
|
reject(res.data)
|
}
|
},
|
fail: (err) => {
|
console.error(`[NETWORK ERROR] ${method} ${url}`, err)
|
reject(err)
|
}
|
})
|
})
|
}
|
|
get(url, params = {}) {
|
return this.request({ url, method: 'GET', data: params })
|
}
|
|
post(url, data = {}) {
|
return this.request({ url, method: 'POST', data })
|
}
|
|
// --------------------------
|
// 以下是业务接口封装
|
// --------------------------
|
touristAdd(jsonData) {
|
return this.post('/tourist/add', jsonData)
|
}
|
|
touristUpdate(jsonData) {
|
return this.post('/tourist/update', jsonData)
|
}
|
|
// 获取用户投诉建议列表
|
advicesAdd(jsonData) {
|
return this.post(`/advices/add`, jsonData)
|
}
|
// 获取用户投诉建议列表
|
advicesListByUuid(uuid) {
|
return this.get(`/advices/getAllByUuid`, { uuid })
|
}
|
|
// 检查是否已有预约
|
bookingAvailableCount(jsonData) {
|
return this.get(`/booking/availableCount`, jsonData)
|
}
|
|
// 获取用预约列表
|
bookingCheck(jsonData) {
|
return this.get(`/booking/checkAlreadyBooked`, jsonData)
|
}
|
|
bookingAdd(jsonData) {
|
return this.post(`/booking/add`, jsonData)
|
}
|
// 获取用户所有预约列表
|
bookingListByUuid(uuid) {
|
return this.get(`/booking/getAllByUuid`, { uuid })
|
}
|
|
// 取消用户预约
|
bookingCancel(jsonData) {
|
return this.post(`/booking/update`, jsonData)
|
}
|
|
// 用户预约核销
|
bookingUse(jsonData) {
|
return this.post(`/booking/update`, jsonData)
|
}
|
|
// 景区咨询列表
|
noticeList() {
|
return this.get(`/notices/getAllNotices`,{})
|
}
|
|
}
|
|
export const apiService = new ApiService()
|