Files
his/healthlink-his-mobile/src/api/index.js

59 lines
2.4 KiB
JavaScript

import axios from 'axios'
import { ElMessage } from 'element-plus'
const service = axios.create({
baseURL: import.meta.env.VITE_APP_BASE_API || '/dev-api',
timeout: 30000
})
service.interceptors.request.use(config => {
const token = localStorage.getItem('Admin-Token')
if (token && !(config.headers && config.headers.isToken === false)) {
config.headers.Authorization = 'Bearer ' + token
}
return config
})
service.interceptors.response.use(
response => {
const res = response.data
if (res.code === 401 && !window.location.pathname.includes('/login')) {
localStorage.removeItem('Admin-Token')
localStorage.removeItem('userInfo')
window.location.href = '/login'
return Promise.reject(new Error('登录已过期'))
}
return res
},
error => {
if (error.response?.status === 401 && !window.location.pathname.includes('/login')) {
localStorage.removeItem('Admin-Token')
localStorage.removeItem('userInfo')
window.location.href = '/login'
}
return Promise.reject(error)
}
)
export const authApi = {
login: (data) => service.post('/login', data, { headers: { isToken: false } }),
getTenants: () => service.get('/system/tenant/all-active', { headers: { isToken: false } }),
getUserTenants: (username) => service.get('/system/tenant/user-bind/' + username, { headers: { isToken: false } }),
getInfo: () => service.get('/getInfo')
}
export const nursingApi = {
getTasks: (params) => service.get('/nurse-station/advice-process/page', { params }),
completeTask: (id, data) => service.post(`/nurse-station/advice-process/execute`, data),
getPatientInfo: (id) => service.get('/inpatientmanage/inhospitalregister/' + id),
getPatientList: (params) => service.get('/administration/practitioner-patient/list', { params }),
getPatientsByPractitioner: (practitionerId) => service.get('/administration/practitioner-patient/practitioner/' + practitionerId + '/patients'),
getOrders: (encounterId) => service.get('/nurse-station/advice-process/page', { params: { encounterId } }),
getVitalSigns: (patientId) => service.get('/nursing/vital-signs/' + patientId),
submitVitalSign: (data) => service.post('/nursing/vital-sign', data),
getAssessments: (encounterId) => service.get('/nursing/assessment/encounter/' + encounterId),
submitAssessment: (data) => service.post('/nursing/assessment', data)
}
export default service