2022-06-08 14:51:11 +08:00
|
|
|
|
import Vue from 'vue'
|
|
|
|
|
|
import axios from 'axios'
|
|
|
|
|
|
// import QS from 'qs'
|
|
|
|
|
|
import store from '@/store'
|
|
|
|
|
|
// import router from '../../router'
|
|
|
|
|
|
import {
|
|
|
|
|
|
Loading,
|
|
|
|
|
|
Message
|
|
|
|
|
|
} from 'element-ui'
|
|
|
|
|
|
|
|
|
|
|
|
Vue.prototype.$http = axios
|
|
|
|
|
|
// Vue.prototype.qs = QS;
|
|
|
|
|
|
// Vue.use(ElementUI)
|
|
|
|
|
|
var loading;
|
|
|
|
|
|
let needLoadingRequestCount = 0;
|
|
|
|
|
|
let showLoadingConfig = '';
|
|
|
|
|
|
|
|
|
|
|
|
function getLang() {
|
|
|
|
|
|
let currentLanguage = store.state.currentLanguage
|
|
|
|
|
|
let langParam = ''
|
|
|
|
|
|
switch (currentLanguage) {
|
|
|
|
|
|
case 'zh':
|
|
|
|
|
|
langParam = 'zh_CN'
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 'en':
|
|
|
|
|
|
langParam = 'en_US'
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
return langParam
|
|
|
|
|
|
}
|
|
|
|
|
|
// 环境的切换
|
|
|
|
|
|
if (process.env.NODE_ENV == 'development') {
|
2022-06-21 15:26:23 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://8.142.139.165:7080' // 湖里区
|
2022-06-08 14:51:11 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://124.71.87.250/'
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://139.9.66.234:30/'
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://14.29.220.211:6023/'
|
|
|
|
|
|
// axios.defaults.baseURL = 'https://zhgd.loganwy.com/' //龙光
|
|
|
|
|
|
// axios.defaults.baseURL = 'https://zhgd-uat.logan.com.cn/'
|
2022-06-15 14:18:32 +08:00
|
|
|
|
|
2022-06-15 14:40:05 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://36.137.53.203:9090/'; // 南昌地铁 17512009894 123456789 gdjt 123456789
|
2022-06-08 14:51:11 +08:00
|
|
|
|
|
2022-07-14 16:22:11 +08:00
|
|
|
|
axios.defaults.baseURL = 'http://192.168.34.125:6023/'
|
2022-07-15 09:47:14 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://124.71.178.44:100/' // 河南
|
2022-06-08 14:51:11 +08:00
|
|
|
|
// tag: 本地
|
2022-07-15 09:47:14 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://192.168.34.148:6023/' // 老大本地
|
2022-07-16 09:03:25 +08:00
|
|
|
|
axios.defaults.baseURL = 'http://192.168.34.125:6043/'; //杨意本地 http/1.1
|
2022-07-06 13:56:34 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://124.71.178.44:9500/'; // 星璇
|
2022-06-27 15:56:25 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://120.196.217.6:7000/';
|
2022-06-28 13:54:19 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://139.9.66.234:8/';
|
2022-06-15 14:40:05 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://120.196.217.6:7000/'; // 鹤洲
|
2022-06-08 14:51:11 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://182.90.224.237:7000/'; // 广西
|
2022-06-15 13:59:02 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://120.196.217.6:7000/' //鹤洲
|
2022-07-15 09:47:14 +08:00
|
|
|
|
|
2022-06-08 14:51:11 +08:00
|
|
|
|
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://117.156.17.59:9090/'; //
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://120.236.247.200:9000/'; //横琴线上
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://223.82.100.80:9000/'; //南昌地铁
|
2022-07-15 09:47:14 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://139.9.66.234:40001/'; //南昌地铁二期
|
2022-06-08 14:51:11 +08:00
|
|
|
|
// axios.defaults.baseURL = 'http://124.71.178.44:30/';
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://192.168.34.125:9090/';
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://192.168.88.220:6023/';
|
|
|
|
|
|
// axios.defaults.baseURL = 'https://192.168.34.125:6688/'; //本地 http/2
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://124.71.178.44:8/'; //本地 http/3
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://124.71.178.44:9000/'; //中建 cscec101 123456
|
|
|
|
|
|
// axios.defaults.baseURL = 'https://jk.cscec1b1.com:5138/';//沃尔
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://61.190.32.219:9050/'
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://183.95.84.54:5800/'//合展-宿迁 zxsd 123456
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://183.95.84.54:9500/'//贵州-敏尚 17512075572 123456
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://183.95.84.34:7185/' //测试服
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://183.60.227.61:30246/'
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://183.60.227.61:30249/' //测试服2
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://183.60.227.61:20561/' //龙光地产 龙光地产 123456
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://218.92.215.138:9090/' //盐城 新佳城小区 123456
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://36.137.53.203:9090/' //盐城 gdjt 123456789
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://183.234.150.152:9090/' //华发 huaxin 123456789
|
|
|
|
|
|
}
|
|
|
|
|
|
else if (process.env.NODE_ENV == 'debug') {
|
|
|
|
|
|
axios.defaults.baseURL = 'https://www.ceshi.com';
|
|
|
|
|
|
} else if (process.env.NODE_ENV == 'production') {
|
|
|
|
|
|
let host = window.location.host;
|
|
|
|
|
|
axios.defaults.baseURL = window.location.protocol + "//" + host + "/"
|
2022-07-15 09:47:14 +08:00
|
|
|
|
// axios.defaults.baseURL ='http://192.168.34.125:6033/'
|
2022-06-08 14:51:11 +08:00
|
|
|
|
// axios.defaults.baseURL = window.location.protocol + "//" + host.split(":")[0] + ":6023" + "/"
|
|
|
|
|
|
// axios.defaults.baseURL = 'http://zhgd.loganwy.com/'
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// tag: 河南
|
|
|
|
|
|
if (COMPANY == 'henan') {
|
|
|
|
|
|
axios.defaults.baseURL = 'http://124.71.178.44:100/'
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// axios.defaults.baseURL = store.getters.BASEURL //'http://124.71.178.44:100/'axios.defaults.timeout = 600000;
|
|
|
|
|
|
|
|
|
|
|
|
// console.log('store.state.userInfo',store)
|
|
|
|
|
|
if (store.state.userInfo) {
|
|
|
|
|
|
axios.defaults.headers.common['Authorization'] = 'Bearer' + ' ' + store.state.userInfo.token;
|
|
|
|
|
|
axios.defaults.headers.common['operateId'] = store.state.userInfo.userId;
|
|
|
|
|
|
}
|
|
|
|
|
|
// http请求拦截器
|
|
|
|
|
|
axios.interceptors.request.use(config => {
|
|
|
|
|
|
if (showLoadingConfig == '' || showLoadingConfig == undefined) {
|
|
|
|
|
|
showFullScreenLoading()
|
|
|
|
|
|
}
|
|
|
|
|
|
return config
|
|
|
|
|
|
}, error => {
|
|
|
|
|
|
tryHideFullScreenLoading()
|
|
|
|
|
|
// Message.error('加载超时');
|
|
|
|
|
|
return Promise.reject(error)
|
|
|
|
|
|
})
|
|
|
|
|
|
// 响应拦截器
|
|
|
|
|
|
axios.interceptors.response.use(
|
|
|
|
|
|
response => {
|
|
|
|
|
|
tryHideFullScreenLoading()
|
|
|
|
|
|
if (response.status === 200) {
|
|
|
|
|
|
return Promise.resolve(response);
|
|
|
|
|
|
} else {
|
|
|
|
|
|
return Promise.reject(response);
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
// 服务器状态码不是2开头的的情况
|
|
|
|
|
|
// 这里可以跟你们的后台开发人员协商好统一的错误状态码
|
|
|
|
|
|
// 然后根据返回的状态码进行一些操作,例如登录过期提示,错误提示等等
|
|
|
|
|
|
// 下面列举几个常见的操作,其他需求可自行扩展
|
|
|
|
|
|
error => {
|
|
|
|
|
|
tryHideFullScreenLoading()
|
|
|
|
|
|
if (error.response.status) {
|
|
|
|
|
|
switch (error.response.status) {
|
|
|
|
|
|
// 401: 未登录
|
|
|
|
|
|
// 未登录则跳转登录页面,并携带当前页面的路径
|
|
|
|
|
|
// 在登录成功后返回当前页面,这一步需要在登录页操作。
|
|
|
|
|
|
case 401:
|
|
|
|
|
|
Message.error('会话已失效,请重新登录');
|
|
|
|
|
|
logout()
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
// 403 token过期
|
|
|
|
|
|
// 登录过期对用户进行提示
|
|
|
|
|
|
// 清除本地token和清空vuex中token对象
|
|
|
|
|
|
// 跳转登录页面
|
|
|
|
|
|
case 403:
|
|
|
|
|
|
Message.error('登录过期,请重新登录');
|
|
|
|
|
|
logout()
|
|
|
|
|
|
break;
|
|
|
|
|
|
// 404请求不存在
|
|
|
|
|
|
case 404:
|
|
|
|
|
|
Message.error('网络请求不存在');
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 500:
|
|
|
|
|
|
Message.error('服务器错误');
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
return Promise.reject(error.response);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
);
|
|
|
|
|
|
/**
|
|
|
|
|
|
* get方法,对应get请求
|
|
|
|
|
|
* @param {String} url [请求的url地址]
|
|
|
|
|
|
* @param {Object} params [请求时携带的参数]
|
|
|
|
|
|
*/
|
|
|
|
|
|
function logout() {
|
|
|
|
|
|
store.commit('setUserInfo', null)
|
|
|
|
|
|
store.commit('setMapBackArr', [])
|
|
|
|
|
|
store.commit('setMoudle', null)
|
|
|
|
|
|
store.commit('setProDetail', null)
|
|
|
|
|
|
sessionStorage.clear()
|
|
|
|
|
|
let json = {
|
|
|
|
|
|
name: '工作站',
|
|
|
|
|
|
id: 1,
|
|
|
|
|
|
url: '/projectV2/taskList',
|
|
|
|
|
|
menuList: [{
|
|
|
|
|
|
id: 100000,
|
|
|
|
|
|
menuName: "任务清单",
|
|
|
|
|
|
path: "/projectV2/taskList"
|
|
|
|
|
|
}, {
|
|
|
|
|
|
id: 100001,
|
|
|
|
|
|
menuName: "通知公告",
|
|
|
|
|
|
path: "/projectV2/noticeList"
|
|
|
|
|
|
}, {
|
|
|
|
|
|
id: 100002,
|
|
|
|
|
|
menuName: "工作日程",
|
|
|
|
|
|
path: "/projectV2/workerSchedule"
|
|
|
|
|
|
}]
|
|
|
|
|
|
}
|
|
|
|
|
|
this.$store.commit("setCurModule", json);
|
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
|
window.location.href = "/index.html#/login"
|
|
|
|
|
|
}, 1000)
|
|
|
|
|
|
}
|
|
|
|
|
|
export function get(url, params, config) {
|
|
|
|
|
|
showLoadingConfig = config
|
|
|
|
|
|
url = url + '?lang=' + getLang()
|
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
|
axios.get(url, {
|
|
|
|
|
|
params: params
|
|
|
|
|
|
}).then(res => {
|
|
|
|
|
|
if (res.data.code == 200) {
|
|
|
|
|
|
resolve(res.data);
|
|
|
|
|
|
} else {
|
|
|
|
|
|
Message.error(res.data.message);
|
|
|
|
|
|
}
|
|
|
|
|
|
}).catch(err => {
|
|
|
|
|
|
reject(err.data)
|
|
|
|
|
|
})
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* post方法,对应post请求
|
|
|
|
|
|
* @param {String} url [请求的url地址]
|
|
|
|
|
|
* @param {Object} params [请求时携带的参数]
|
|
|
|
|
|
*/
|
|
|
|
|
|
export function post(url, params, config) {
|
|
|
|
|
|
showLoadingConfig = config
|
|
|
|
|
|
url = url + '?lang=' + getLang()
|
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
|
axios.post(url, params)
|
|
|
|
|
|
.then(res => {
|
|
|
|
|
|
if (res.data.code == 200) {
|
|
|
|
|
|
resolve(res.data);
|
|
|
|
|
|
} else {
|
|
|
|
|
|
Message.error(res.data.message);
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
.catch(err => {
|
|
|
|
|
|
reject(err.data)
|
|
|
|
|
|
})
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
|
|
|
* put方法,对应put请求
|
|
|
|
|
|
* @param {String} url [请求的url地址]
|
|
|
|
|
|
* @param {Object} params [请求时携带的参数]
|
|
|
|
|
|
*/
|
|
|
|
|
|
export function put(url, params, config) {
|
|
|
|
|
|
showLoadingConfig = config
|
|
|
|
|
|
url = url + '?lang=' + getLang()
|
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
|
axios.put(url, params)
|
|
|
|
|
|
.then(res => {
|
|
|
|
|
|
if (res.data.code == 200) {
|
|
|
|
|
|
resolve(res.data);
|
|
|
|
|
|
} else {
|
|
|
|
|
|
Message.error(res.data.message);
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
.catch(err => {
|
|
|
|
|
|
reject(err.data)
|
|
|
|
|
|
})
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
export function showFullScreenLoading() {
|
|
|
|
|
|
if (needLoadingRequestCount === 0) {
|
|
|
|
|
|
startLoading()
|
|
|
|
|
|
}
|
|
|
|
|
|
needLoadingRequestCount++
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export function tryHideFullScreenLoading() {
|
|
|
|
|
|
if (needLoadingRequestCount <= 0) return
|
|
|
|
|
|
needLoadingRequestCount--
|
|
|
|
|
|
if (needLoadingRequestCount === 0) {
|
|
|
|
|
|
endLoading()
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function startLoading() {
|
|
|
|
|
|
loading = Loading.service({
|
|
|
|
|
|
lock: true,
|
|
|
|
|
|
text: '加载中...',
|
|
|
|
|
|
spinner: 'el-icon-loading',
|
|
|
|
|
|
background: 'rgba(0, 0, 0, 0.5)'
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function endLoading() {
|
|
|
|
|
|
loading.close()
|
|
|
|
|
|
}
|