Commit 31b2987b authored by 周远喜's avatar 周远喜

登陆bug处理

parent c104f68f
...@@ -354,7 +354,7 @@ export default { ...@@ -354,7 +354,7 @@ export default {
opTaskPk: this.row.op_task_pk, opTaskPk: this.row.op_task_pk,
taskSeq: this.row.task_seq, taskSeq: this.row.task_seq,
flog: 0, //参数应用范围 flog: 0, //参数应用范围
calId: -1, calId: parseInt(this.row.cal_id),
planState: this.row.plan_method=="平行", planState: this.row.plan_method=="平行",
planMethod: this.row.plan_method, // 平行 重叠 planMethod: this.row.plan_method, // 平行 重叠
over: this.row.over_time=="加班", over: this.row.over_time=="加班",
...@@ -370,6 +370,7 @@ export default { ...@@ -370,6 +370,7 @@ export default {
multipleEquipIds: "", //"设备id", 用英文逗号分隔 multipleEquipIds: "", //"设备id", 用英文逗号分隔
} }
this.entity=entity this.entity=entity
console.warn("detail",this.entity,this.row);
} }
this.entity.taskSeq = this.taskSeq; this.entity.taskSeq = this.taskSeq;
}, },
......
import axios from 'axios'; import axios from 'axios';
import util from '@/libs/util'; import util from '@/libs/util';
import Setting from '@/setting'; import Setting from '@/setting';
import QS from 'querystring'; import QS from 'querystring';
import { Message, Notice } from 'view-design'; import {
Message,
Notice
} from 'view-design';
// 创建一个错误 // 创建一个错误
function errorCreate (msg) { function errorCreate(msg) {
const err = new Error(msg); const err = new Error(msg);
errorLog(err); errorLog(err);
throw err; throw err;
} }
// 记录和显示错误 // 记录和显示错误
function errorLog (err) { function errorLog(err) {
if(err&&err.response&&err.response.status==500){ if (err && err.response && err.response.status == 500) {
console.log(err.response) console.log(err.response)
Message.error({ Message.error({
content: err.response.data.error.message, content: err.response.data.error.message,
duration: 5 duration: 5
}) })
return; return;
} }
// 添加到日志 // 添加到日志
$nuxt.$store.dispatch('admin/log/push', { $nuxt.$store.dispatch('admin/log/push', {
message: '数据请求异常', message: '数据请求异常',
type: 'error', type: 'error',
meta: { meta: {
error: err error: err
}
});
// 打印到控制台
if (process.env.NODE_ENV === 'development') {
util.log.error('>>>>>> Error >>>>>>');
console.warn(err.response);
console.log(err);
} }
// 显示提示,可配置使用 iView 的 $Message 还是 $Notice 组件来显示 });
// if (Setting.errorModalType === 'Message') { // 打印到控制台
// Message.error({ if (process.env.NODE_ENV === 'development') {
// content: err.message, util.log.error('>>>>>> Error >>>>>>');
// duration: Setting.modalDuration console.warn(err.response);
// }); console.log(err);
// } else if (Setting.errorModalType === 'Notice') { }
// Notice.error({ // 显示提示,可配置使用 iView 的 $Message 还是 $Notice 组件来显示
// title: '提示', // if (Setting.errorModalType === 'Message') {
// desc: err.message, // Message.error({
// duration: Setting.modalDuration // content: err.message,
// }); // duration: Setting.modalDuration
// } // });
// } else if (Setting.errorModalType === 'Notice') {
// Notice.error({
// title: '提示',
// desc: err.message,
// duration: Setting.modalDuration
// });
// }
} }
// 创建一个 axios 实例 // 创建一个 axios 实例
const service = axios.create({ const service = axios.create({
baseURL: Setting.apiBaseURL, baseURL: Setting.apiBaseURL,
timeout: 60000, // 请求超时时间 timeout: 60000, // 请求超时时间
transformRequest:[(data)=>{ transformRequest: [(data) => {
function dateFormat(date, fmt) { function dateFormat(date, fmt) {
if (null == date || undefined == date) return ''; if (null == date || undefined == date) return '';
var o = { var o = {
"M+": date.getMonth() + 1, //月份 "M+": date.getMonth() + 1, //月份
"d+": date.getDate(), //日 "d+": date.getDate(), //日
"h+": date.getHours(), //小时 "h+": date.getHours(), //小时
"m+": date.getMinutes(), //分 "m+": date.getMinutes(), //分
"s+": date.getSeconds(), //秒 "s+": date.getSeconds(), //秒
"S+": date.getMilliseconds() //毫秒 "S+": date.getMilliseconds() //毫秒
}; };
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length)); if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o) for (var k in o)
if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
return fmt; return fmt;
} }
Date.prototype.toJSON = function () { Date.prototype.toJSON = function () {
return dateFormat(this, 'yyyy-MM-ddThh:mm:ss.SSSZ') return dateFormat(this, 'yyyy-MM-ddThh:mm:ss.SSSZ')
} }
return JSON.stringify(data) return JSON.stringify(data)
}] }]
}); });
// 设置post请求头 // 设置post请求头
service.defaults.headers.post['Content-Type'] = 'application/json'; service.defaults.headers.post['Content-Type'] = 'application/json';
service.defaults.headers.put['Content-Type'] = 'application/json'; service.defaults.headers.put['Content-Type'] = 'application/json';
// 请求拦截器 // 请求拦截器
service.interceptors.request.use( service.interceptors.request.use(
config => { config => {
// 在请求发送之前做一些处理 // 在请求发送之前做一些处理
const token = util.cookies.get('token'); // const token = util.cookies.get('token');
// 让每个请求携带token-- ['X-Token']为自定义key 请根据实际情况自行修改 const token = sessionStorage.getItem('token');
config.headers['Authorization'] = 'Bearer '+token; if (token) {
return config; // 让每个请求携带token-- ['X-Token']为自定义key 请根据实际情况自行修改
}, config.headers['Authorization'] = 'Bearer ' + token;
error => {
// 发送失败
// console.log(error);
Promise.reject(error);
} }
return config;
},
error => {
// 发送失败
// console.log(error);
Promise.reject(error);
}
); );
// 响应拦截器 // 响应拦截器
service.interceptors.response.use( service.interceptors.response.use(
response => { response => {
// dataAxios 是 axios 返回数据中的 data // dataAxios 是 axios 返回数据中的 data
const dataAxios = response.data; const dataAxios = response.data;
// 这个状态码是和后端约定的 // 这个状态码是和后端约定的
const { code } = dataAxios; const {
// 根据 code 进行判断 code
if (code === undefined) { } = dataAxios;
// 如果没有 code 代表这不是项目后端开发的接口 // 根据 code 进行判断
return dataAxios; if (code === undefined) {
} else { // 如果没有 code 代表这不是项目后端开发的接口
// 有 code 代表这是一个后端接口 可以进行进一步的判断 return dataAxios;
switch (code) { } else {
case 0: // 有 code 代表这是一个后端接口 可以进行进一步的判断
// [ 示例 ] code === 0 代表没有错误 switch (code) {
return dataAxios.data; case 0:
case 'xxx': // [ 示例 ] code === 0 代表没有错误
// [ 示例 ] 其它和后台约定的 code return dataAxios.data;
errorCreate(`[ code: xxx ] ${dataAxios.msg}: ${response.config.url}`); case 'xxx':
break; // [ 示例 ] 其它和后台约定的 code
default: errorCreate(`[ code: xxx ] ${dataAxios.msg}: ${response.config.url}`);
// 不是正确的 code break;
errorCreate(`${dataAxios.msg}: ${response.config.url}`); default:
break; // 不是正确的 code
} errorCreate(`${dataAxios.msg}: ${response.config.url}`);
} break;
}, }
error => { }
if (error && error.response) { },
if(error.response.status=="401"){ error => {
window.location.href = '/account/login'; // console.warn("332342",error)
return; const token = sessionStorage.getItem('token');
} if (!token) {
switch (error.response.status) { window.location.href = '/account/login';
case 400: error.message = '请求错误'; break; return;
case 401: error.message = '未授权,请登录'; break; }
case 403: error.message = '拒绝访问'; break; if (error && error.response) {
case 404: error.message = `请求地址出错: ${error.response.config.url}`; break;
case 408: error.message = '请求超时'; break; if (error.response.status == "401") {
case 500: error.message = '服务器内部错误'; break; window.location.href = '/account/login';
case 501: error.message = '服务未实现'; break; return;
case 502: error.message = '网关错误'; break; }
case 503: error.message = '服务不可用'; break; switch (error.response.status) {
case 504: error.message = '网关超时'; break; case 400:
case 505: error.message = 'HTTP版本不受支持'; break; error.message = '请求错误';
default: break; break;
} case 401:
error.message = '未授权,请登录';
break;
case 403:
error.message = '拒绝访问';
break;
case 404:
error.message = `请求地址出错: ${error.response.config.url}`;
break;
case 408:
error.message = '请求超时';
break;
case 500:
error.message = '服务器内部错误';
break;
case 501:
error.message = '服务未实现';
break;
case 502:
error.message = '网关错误';
break;
case 503:
error.message = '服务不可用';
break;
case 504:
error.message = '网关超时';
break;
case 505:
error.message = 'HTTP版本不受支持';
break;
default:
break;
}
}
errorLog(error);
// console.warn("Erro:",error)
return Promise.reject(error);
} }
errorLog(error);
return Promise.reject(error);
}
); );
let api=service.get; let api = service.get;
let get=(url,params)=>{ let get = (url, params) => {
if(params){ if (params) {
return api(url,{"params":params}) return api(url, {
}else{ "params": params
return api(url) })
} } else {
return api(url)
}
} }
service.get=get; service.get = get;
export default service; export default service;
...@@ -37,7 +37,6 @@ export const actions = { ...@@ -37,7 +37,6 @@ export const actions = {
// token 代表用户当前登录状态 建议在网络请求中携带 token // token 代表用户当前登录状态 建议在网络请求中携带 token
// 如有必要 token 需要定时更新,默认保存一天,可在 setting.js 中修改 // 如有必要 token 需要定时更新,默认保存一天,可在 setting.js 中修改
// 如果你的 token 不是通过 cookie 携带,而是普通字段,也可视情况存储在 localStorage // 如果你的 token 不是通过 cookie 携带,而是普通字段,也可视情况存储在 localStorage
console.warn(res);
if (res.result) { if (res.result) {
util.cookies.set('uuid', res.result.userId); util.cookies.set('uuid', res.result.userId);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment