index.js 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. import axios from 'axios';
  2. import Vue from 'vue';
  3. import context from '../main';
  4. let loading;
  5. // axios.defaults.timeout = 3000000;
  6. // let loadinginstace;
  7. axios.interceptors.request.use(
  8. config => {
  9. config.headers = {
  10. "Content-Type": "application/json"
  11. }
  12. return config;
  13. }, error => {
  14. loading.close();
  15. if (error) {
  16. context.$alert('网络错误,请稍后再试!','提示',{
  17. confirmButtonText: '确定'
  18. });
  19. return Promise.reject(error);
  20. }
  21. }
  22. );
  23. axios.interceptors.response.use(
  24. res => {
  25. loading.close();
  26. if (res.data.code == 0) {
  27. return res.data;
  28. }
  29. else {
  30. context.$alert(res.data.msg,'提示',{
  31. confirmButtonText: '确定'
  32. }).then(()=>{
  33. if(res.data.code == '1005') {
  34. context.$router.replace({path:'/login'});
  35. }
  36. });
  37. }
  38. },
  39. err => {
  40. loading.close();
  41. if (err.message.includes('timeout')) {
  42. err.message = '请求超时';
  43. }
  44. else {
  45. if (err && err.response) {
  46. switch (err.response.status) {
  47. case 400: err.message = '请求错误(400)'; break;
  48. case 401: err.message = '未授权,请重新登录(401)'; break;
  49. case 403: err.message = '拒绝访问(403)'; break;
  50. case 404: err.message = '请求出错(404)'; break;
  51. case 408: err.message = '请求超时(408)'; break;
  52. case 500: err.message = '服务器错误(500)'; break;
  53. case 501: err.message = '服务未实现(501)'; break;
  54. case 502: err.message = '网络错误(502)'; break;
  55. case 503: err.message = '服务不可用(503)'; break;
  56. case 504: err.message = '网络超时(504)'; break;
  57. case 505: err.message = 'HTTP版本不受支持(505)'; break;
  58. default: err.message = `连接出错(${err.response.status})!`;
  59. }
  60. } else {
  61. err.message = '连接服务器失败!'
  62. }
  63. }
  64. context.$alert(err.message,'提示',{
  65. confirmButtonText: '确定'
  66. });
  67. return Promise.reject(err);
  68. });
  69. Vue.prototype.$axios = axios;
  70. let requestLoading = (url, method, params, showLoading = true) => {
  71. if (showLoading) {
  72. loading = context.$loading({
  73. lock: true,
  74. text: '加载中...',
  75. spinner: 'el-icon-loading',
  76. background: 'rgba(0, 0, 0, 0.2)'
  77. });
  78. }
  79. return axios({
  80. method: method,
  81. url: url,
  82. withCredentials: true,
  83. params,
  84. data: params,
  85. timeout: 120000
  86. })
  87. };
  88. // const TestSrv = process.env.NODE_ENV == 'production' ? 'http://39.97.239.116:8080' : '/api';
  89. const StanleyLocal = process.env.NODE_ENV == 'production' ? 'http://39.97.239.116:8080' : '/api';
  90. const Prefix = StanleyLocal;
  91. //测试请求
  92. export const testRequest = () => {
  93. return requestLoading(`${Prefix}/index.php?index/index/index`, 'get', {})
  94. }
  95. //登录
  96. export const login = (params) => {
  97. return requestLoading(`${Prefix}/login`, 'get', params)
  98. }
  99. //登出
  100. export const loginOut = () => {
  101. return requestLoading(`${Prefix}/LoginOut`, 'get', {})
  102. }
  103. //订单列表
  104. export const orderList = (params) => {
  105. return requestLoading(`${Prefix}/OrderList`, 'get', params)
  106. }
  107. //箱子操作记录列表
  108. export const boxActionList = (params) => {
  109. return requestLoading(`${Prefix}/BoxActionList`, 'get', params)
  110. }
  111. //柜子列表
  112. export const cabinetList = (params) => {
  113. return requestLoading(`${Prefix}/CabinetList`, 'get', params)
  114. }
  115. //箱子列表
  116. export const boxList = (params) => {
  117. return requestLoading(`${Prefix}/BoxList`, 'post', params)
  118. }
  119. //新增柜子
  120. export const addCabinet = (params) => {
  121. return requestLoading(`${Prefix}/AddCabinet`, 'post', params)
  122. }
  123. //日志记录
  124. export const actionLogList = (params) => {
  125. return requestLoading(`${Prefix}/ActionLogList`, 'post', params)
  126. }
  127. //消息记录
  128. export const msgList = (params) => {
  129. return requestLoading(`${Prefix}/MsgList`, 'post', params)
  130. }
  131. //柜子状态
  132. export const reboot = (params) => {
  133. return requestLoading(`${Prefix}/Reboot`, 'post', params)
  134. }
  135. // export const AddCabinet = (alias,url,count) => {
  136. // return requestLoading(`${Prefix}/index.php/api/AddCabinet?alias=${alias}&url=${url}&count=${count}`, 'get', {})
  137. // }