wangzhibo
2025-10-23 cad64c1de2c45856b0774933c5801b05b64984e8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
 
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()