/**
 * API接口封装
 * 统一管理所有API接口
 */

import httpService from './http.js'

// 认证接口
export const authApi = {
  // 登录
  login(data) {
    // 约定字段：username、password
    return httpService.post('/api/auth/login', data)
  }
}

// 数据历史接口
export const dataHistoryApi = {
  // 获取历史数据
  getHistory(params) {
    return httpService.post('/api/data/history', params)
  }
}

// 空调目标温湿度数据接口
export const thDataApi = {
  // 获取最新空调温度
  getLatest() {
    return httpService.get('/api/ac/data/latest')
  },

  // 提交温湿度数据
  submit(data) {
    return httpService.post('/api/ac/data', data)
  }
}

// 告警相关接口
export const alertApi = {
  // 创建告警
  create(data) {
    return httpService.post('/api/alerts', data)
  },

  // 分页获取告警
  getList(params = {}) {
    return httpService.get('/api/alerts', params)
  },

  // 根据创建时间获取告警
  // http://110.40.171.179:7999/api/alerts/byCreateTime
  // startTime endTime page size
  getListByCreateTime(params = {}) {
    return httpService.get('/api/alerts/byCreateTime', params)
  },
}

// 事件相关接口
export const eventApi = {
  // 创建事件
  create(data) {
    return httpService.post('/api/events', data)
  },

  // 分页获取事件
  getList(params = {}) {
    return httpService.get('/api/events', params)
  },

  // 根据创建时间获取事件
  getListByCreateTime(params = {}) {
    return httpService.get('/api/events/byCreateTime', params)
  }
}

// 温湿度区间设置接口
export const wsdApi = {
  // 更新温湿度区间设置
  update(data) {
    return httpService.post('/api/wsd', data)
  },

  // 获取温湿度区间设置
  getById(id) {
    return httpService.get(`/api/wsd/${id}`)
  },

  getLatest() {
    return httpService.get('/api/data/latest')
  }
}

export const statusApi = {
  // connected 判断设备端是否连接
  getStatus() {
    return httpService.get('/api/emqx/clients/HDYDCJ_01')
  },

  getConnectionStatus() {
    // 空调、温湿度、pm 是否在线
    // http://110.40.171.179:7999/api/health/latest
    return httpService.get('/api/health/latest')
  }
}

export default {}