import http from './http'
|
|
export const getAdminUsers = (params) => http.get('/users', { params })
|
export const getAdminRoleOptions = () => http.get('/users/role-options')
|
export const createAdminUser = (data) => http.post('/users', data)
|
export const updateAdminUser = (id, data) => http.put(`/users/${id}`, data)
|
export const updateAdminUserStatus = (id, status) => http.put(`/users/${id}/status`, { status })
|
export const resetAdminUserPassword = (id, data) => http.put(`/users/${id}/password`, data)
|
export const deleteAdminUser = (id) => http.delete(`/users/${id}`)
|
|
export const getMiniUsers = (params) => http.get('/mini-users', { params })
|
export const getMiniUserDetail = (id) => http.get(`/mini-users/${id}`)
|
export const updateMiniUserStatus = (id, status) => http.put(`/mini-users/${id}/status`, { status })
|
|
export const getGuideUsers = (params) => http.get('/guide-users', { params })
|
export const getGuideUserDetail = (id) => http.get(`/guide-users/${id}`)
|
export const updateGuideUserDetail = (id, data) => http.put(`/guide-users/${id}`, data)
|
export const uploadGuideUserAvatar = (id, file) => {
|
const data = new FormData()
|
data.append('file', file)
|
return http.post(`/guide-users/${id}/avatar`, data)
|
}
|
export const uploadGuideUserDocument = (id, documentType, file) => {
|
const data = new FormData()
|
data.append('file', file)
|
return http.post(`/guide-users/${id}/documents/${documentType}`, data)
|
}
|
export const getGuideUserDocumentBlob = async (documentUrl) => {
|
const apiUrl = new URL(http.defaults.baseURL)
|
const fileUrl = new URL(documentUrl, apiUrl.origin)
|
if (fileUrl.origin !== apiUrl.origin || !fileUrl.pathname.startsWith('/uploads/guide-applications/')) {
|
return null
|
}
|
const token = localStorage.getItem('admin_token')
|
const response = await fetch(fileUrl, {
|
headers: token ? { Authorization: `Bearer ${token}` } : {},
|
})
|
if (!response.ok) throw new Error('证件图片加载失败')
|
return response.blob()
|
}
|
export const addGuideScenicConfig = (id, scenicSpotId) => http.post(`/guide-users/${id}/scenic-configs`, { scenicSpotId })
|
export const deleteGuideScenicConfig = (id, configId) => http.delete(`/guide-users/${id}/scenic-configs/${configId}`)
|
export const createGuideUser = (data) => http.post('/guide-users', data)
|
export const updateGuideUserStatus = (id, status) => http.put(`/guide-users/${id}/status`, { status })
|
export const updateGuideWhitelist = (id, enabled) => http.put(`/guide-users/${id}/whitelist`, { enabled })
|
export const getGuideAutoDisableConfig = () => http.get('/guide-users/auto-disable/config')
|
export const updateGuideAutoDisableConfig = (data) => http.put('/guide-users/auto-disable/config', data)
|