| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385 |
- import axios from 'axios'
- import { useUserStore } from '@/stores/user'
- const api = axios.create({
- baseURL: import.meta.env.VITE_API_URL,
- headers: {
- 'Content-Type': 'application/json'
- }
- })
- // 请求拦截器
- api.interceptors.request.use(
- (config) => {
- const userStore = useUserStore()
- if (userStore.token) {
- config.headers.Authorization = `Bearer ${userStore.token}`
- }
- return config
- },
- (error) => {
- return Promise.reject(error)
- }
- )
- // 响应拦截器
- api.interceptors.response.use(
- (response) => response,
- (error) => {
- if (error.response?.status === 401) {
- const userStore = useUserStore()
- userStore.logout()
- }
- console.log('errorxxx', error.response?.data || error)
- return Promise.reject(error.response?.data || error)
- }
- )
- export const login = async (name, password) => {
- const response = await api.post('/users/admin-login', {
- name,
- password
- })
- return response.data
- }
- export const profile = async () => {
- const response = await api.get('/users/profile')
- return response.data
- }
- export const resetPasswordApi = async (password) => {
- const response = await api.post('/users/reset-password', {
- password
- })
- return response.data
- }
- export const listUsersApi = async (page, size) => {
- const response = await api.get('/users', {
- params: {
- page,
- size
- }
- })
- return response.data
- }
- export const allUsersApi = async () => {
- const response = await api.get('/users/all')
- return response.data
- }
- export const createUserApi = async (userData) => {
- const response = await api.post('/users/create', userData)
- return response.data
- }
- export const updateUserApi = async (userData) => {
- const response = await api.post('/users/update', userData)
- return response.data
- }
- // 系统配置相关API
- export const listSysConfig = async (page = 0, size = 20, type) => {
- const params = { page, size }
- if (type) params.type = type
- const response = await api.get('/sys-config', { params })
- return response.data
- }
- export const createSysConfig = async (configData) => {
- const response = await api.post('/sys-config', configData)
- return response.data
- }
- export const updateSysConfig = async (name, configData) => {
- const response = await api.post(`/sys-config/update/${name}`, configData)
- return response.data
- }
- export const deleteSysConfig = async (name) => {
- const response = await api.post(`/sys-config/delete/${name}`)
- return response.data
- }
- export const getSysConfigByName = async (name) => {
- const response = await api.get(`/sys-config/${name}`)
- return response.data
- }
- // 文件上传API
- export const uploadFile = async (file) => {
- const formData = new FormData()
- formData.append('file', file)
- const response = await api.post('/files/upload', formData, {
- headers: {
- 'Content-Type': 'multipart/form-data'
- }
- })
- return response.data
- }
- // 文件下载API
- export const downloadFile = async (key) => {
- const response = await api.post(
- '/files/download',
- { key },
- {
- responseType: 'blob'
- }
- )
- return response.data
- }
- // ==================== 二维码管理相关API ====================
- // 生成二维码
- export const generateQrCodes = async (qrType, quantity) => {
- const response = await api.post('/qr/generate', {
- qrType,
- quantity
- })
- return response.data
- }
- // 查询二维码列表
- export const queryQrCodes = async (params) => {
- const response = await api.get('/qr/list', { params })
- return response.data
- }
- // 获取二维码信息
- export const getQrCodeInfo = async (id) => {
- const response = await api.get('/qr/admin/info', {
- params: { id }
- })
- return response.data
- }
- // 获取二维码扫描记录
- export const getQrCodeScanRecords = async (qrCode, limit = 10) => {
- const response = await api.get('/qr/scan', {
- params: { qrCode, limit }
- })
- return response.data
- }
- // 按日期下载二维码
- export const downloadQrCodesByDate = async (date) => {
- const response = await api.get('/qr/download', {
- params: { date },
- responseType: 'blob'
- })
- return response.data
- }
- // 验证维护码
- export const verifyMaintenanceCode = async (qrCode, maintenanceCode) => {
- const response = await api.post('/qr/verify', {
- qrCode,
- maintenanceCode
- })
- return response.data
- }
- // 重置维护码
- export const resetMaintenanceCode = async (qrCode, maintenanceCode) => {
- const response = await api.post('/qr/reset', {
- qrCode,
- maintenanceCode
- })
- return response.data
- }
- // ==================== 人员信息相关API ====================
- // 创建人员信息
- export const createPersonInfo = async (data) => {
- const response = await api.post('/person/create', data)
- return response.data
- }
- // 获取人员信息
- export const getPersonInfo = async (qrCode) => {
- const response = await api.get('/person/get', {
- params: { qrCode }
- })
- return response.data
- }
- // 更新人员信息(前台,需要维护码)
- export const updatePersonInfo = async (data) => {
- const response = await api.put('/person/update', data)
- return response.data
- }
- // 管理员更新人员信息
- export const adminUpdatePersonInfo = async (data) => {
- const response = await api.post('/person/admin/update', data)
- return response.data
- }
- // 查询人员信息列表(管理员)
- export const queryPersonInfo = async (params) => {
- const response = await api.get('/person/admin/list', { params })
- return response.data
- }
- // 管理员查询人员详情
- export const getPersonAdminDetail = async (qrCodeId) => {
- const response = await api.get('/person/admin/detail', {
- params: { qrCodeId }
- })
- return response.data
- }
- // ==================== 宠物信息相关API ====================
- // 创建宠物信息
- export const createPetInfo = async (data) => {
- const response = await api.post('/pet/create', data)
- return response.data
- }
- // 获取宠物信息
- export const getPetInfo = async (qrCode) => {
- const response = await api.get('/pet/get', {
- params: { qrCode }
- })
- return response.data
- }
- // 更新宠物信息(前台,需要维护码)
- export const updatePetInfo = async (data) => {
- const response = await api.put('/pet/update', data)
- return response.data
- }
- // 管理员更新宠物信息
- export const adminUpdatePetInfo = async (data) => {
- const response = await api.post('/pet/admin/update', data)
- return response.data
- }
- // 查询宠物信息列表(管理员)
- export const queryPetInfo = async (params) => {
- const response = await api.get('/pet/admin/list', { params })
- return response.data
- }
- // 管理员查询宠物详情
- export const getPetAdminDetail = async (qrCodeId) => {
- const response = await api.get('/pet/admin/detail', {
- params: { qrCodeId }
- })
- return response.data
- }
- // ==================== 物品信息相关API ====================
- // 创建物品信息
- export const createGoodsInfo = async (data) => {
- const response = await api.post('/goods/create', data)
- return response.data
- }
- // 获取物品信息
- export const getGoodsInfo = async (qrCode) => {
- const response = await api.get('/goods/get', {
- params: { qrCode }
- })
- return response.data
- }
- // 更新物品信息(前台,需要维护码)
- export const updateGoodsInfo = async (data) => {
- const response = await api.put('/goods/update', data)
- return response.data
- }
- // 管理员更新物品信息
- export const adminUpdateGoodsInfo = async (data) => {
- const response = await api.post('/goods/admin/update', data)
- return response.data
- }
- // 查询物品信息列表(管理员)
- export const queryGoodsInfo = async (params) => {
- const response = await api.get('/goods/admin/list', { params })
- return response.data
- }
- // 管理员查询物品详情
- export const getGoodsAdminDetail = async (qrCodeId) => {
- const response = await api.get('/goods/admin/detail', {
- params: { qrCodeId }
- })
- return response.data
- }
- // ==================== 扫描记录相关API ====================
- // 创建扫描记录
- export const createScanRecord = async (data) => {
- const response = await api.post('/scan/create', data)
- return response.data
- }
- // 获取最近扫描记录
- export const getRecentScanRecords = async (qrCode, limit = 10) => {
- const response = await api.get('/scan/recent', {
- params: { qrCode, limit }
- })
- return response.data
- }
- // 查询扫描记录
- export const queryScanRecords = async (params) => {
- const response = await api.get('/scan/list', { params })
- return response.data
- }
- // ==================== 链接信息相关API ====================
- // 创建链接信息
- export const createLinkInfo = async (data) => {
- const response = await api.post('/link/create', data)
- return response.data
- }
- // 获取链接信息
- export const getLinkInfo = async (qrCode) => {
- const response = await api.get('/link/get', {
- params: { qrCode }
- })
- return response.data
- }
- // 更新链接信息(前台,需要维护码)
- export const updateLinkInfo = async (data) => {
- const response = await api.put('/link/update', data)
- return response.data
- }
- // 管理员更新链接信息
- export const adminUpdateLinkInfo = async (data) => {
- const response = await api.post('/link/admin/update', data)
- return response.data
- }
- // 查询链接信息列表(管理员)
- export const queryLinkInfo = async (params) => {
- const response = await api.get('/link/admin/list', { params })
- return response.data
- }
- // 管理员查询链接详情
- export const getLinkAdminDetail = async (qrCodeId) => {
- const response = await api.get('/link/admin/detail', {
- params: { qrCodeId }
- })
- return response.data
- }
|