api.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. import axios from 'axios'
  2. import { Message } from 'element-ui'
  3. const service = axios.create({
  4. baseURL: 'http://localhost:8080',
  5. timeout: 10000
  6. })
  7. service.interceptors.request.use(
  8. config => {
  9. const token = localStorage.getItem('token')
  10. if (token) {
  11. config.headers['Authorization'] = `Bearer ${token}`
  12. }
  13. return config
  14. },
  15. error => {
  16. console.error('Request error:', error)
  17. return Promise.reject(error)
  18. }
  19. )
  20. service.interceptors.response.use(
  21. response => {
  22. const res = response.data
  23. if (res.code === 200) {
  24. return res
  25. } else {
  26. Message.error(res.message || '请求失败')
  27. return Promise.reject(new Error(res.message || '请求失败'))
  28. }
  29. },
  30. error => {
  31. Message.error(error.message || '网络请求失败')
  32. return Promise.reject(error)
  33. }
  34. )
  35. export default service
  36. // 用户API
  37. export const getUserList = (params) => service.get('/admin/users', { params })
  38. export const getUserInfo = (id) => service.get(`/admin/users/${id}`)
  39. export const updateUser = (id, data) => service.put(`/admin/users/${id}`, data)
  40. export const deleteUser = (id) => service.delete(`/admin/users/${id}`)
  41. // 孩子API
  42. export const getChildList = (params) => service.get('/admin/children', { params })
  43. export const getChildInfo = (id) => service.get(`/admin/children/${id}`)
  44. export const updateChild = (id, data) => service.put(`/admin/children/${id}`, data)
  45. export const adjustChildPoints = (id, data) => service.post(`/admin/children/${id}/adjust-points`, data)
  46. // 任务API
  47. export const getTaskList = (params) => service.get('/admin/tasks', { params })
  48. export const getTaskInfo = (id) => service.get(`/admin/tasks/${id}`)
  49. export const updateTask = (id, data) => service.put(`/admin/tasks/${id}`, data)
  50. export const deleteTask = (id) => service.delete(`/admin/tasks/${id}`)
  51. export const getTaskStats = () => service.get('/admin/tasks/stats')
  52. // 奖励API
  53. export const getRewardList = (params) => service.get('/admin/rewards', { params })
  54. export const getRewardTemplates = () => service.get('/admin/rewards/templates')
  55. export const createRewardTemplate = (data) => service.post('/admin/rewards/templates', data)
  56. export const approveReward = (id, approved) => service.post(`/admin/rewards/${id}/approve`, { approved })
  57. // 积分API
  58. export const getPointsLogs = (params) => service.get('/admin/points/logs', { params })
  59. export const getPointsStats = () => service.get('/admin/points/stats')
  60. // 登录API
  61. export const adminLogin = (data) => service.post('/api/auth/admin-login', data)