export function parseTime(time, pattern) {
if (arguments.length === 0 || !time) {
return null
}
const format = pattern || '{y}-{m}-{d} {h}:{i}:{s}'
let date
if (typeof time === 'object') {
date = time
} else {
if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) {
time = parseInt(time)
} else if (typeof time === 'string') {
time = time.replace(new RegExp(/-/gm), '/');
}
if ((typeof time === 'number') && (time.toString().length === 10)) {
time = time * 1000
}
date = new Date(time)
}
const formatObj = {
y: date.getFullYear(),
m: date.getMonth() + 1,
d: date.getDate(),
h: date.getHours(),
i: date.getMinutes(),
s: date.getSeconds(),
a: date.getDay()
}
const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
let value = formatObj[key]
if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value] }
if (result.length > 0 && value < 10) {
value = '0' + value
}
return value || 0
})
return time_str
}
export function tansParams(params) {
let result = ''
Object.keys(params).forEach((key) => {
if (!Object.is(params[key], undefined) && !Object.is(params[key], null)) {
result += encodeURIComponent(key) + '=' + encodeURIComponent(params[key]) + '&'
}
})
return result
}
export function formatDate(cellValue) {
if (cellValue == null || cellValue == "") return "";
var date = new Date(cellValue)
var year = date.getFullYear()
var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1
var day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate()
var hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours()
var minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()
var seconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()
return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds
}
export function getTime() {
let date = new Date()
const year = date.getFullYear();
const month = date.getMonth() + 1;
const day = date.getDate();
const hour = date.getHours();
const minute = date.getMinutes();
const second = date.getSeconds();
return (
[year, month, day].map(formatNumber).join("-") +
" " +
[hour, minute, second].map(formatNumber).join(":")
);
}
export function pcickerOptionFac(startKey, endKey, type, timiData) {
return {
disabledDate: (date) => {
if (type === "start") {
if (!this[timiData][endKey]) return false;
if (typeof this[timiData][endKey] == "number") {
return date.getTime() >= this[timiData][endKey];
} else {
var timi = new Date(this[timiData][endKey]);
return date.getTime() >= timi;
}
}
if (type === "end") {
if (!this[timiData][startKey]) return false;
if (typeof this[timiData][startKey] == "number") {
return date.getTime() < this[timiData][startKey];
} else {
var timi = new Date(this[timiData][startKey]);
return (
date.getTime() <
new Date(timi.getFullYear(), timi.getMonth(), timi.getDate())
);
}
}
},
};
}
export function linkage(url, data, type, setDailyAudit) {
let p = new Promise((resolve, reject) => {
setDailyAudit(data, url, type).then((data) => {
if (data.code == 200) {
resolve(data.data);
} else {
reject(data.msg);
}
});
});
return p;
}
export function openNewWindow(options) {
let editUrl = router.resolve({ name: options.name, query: options.query })
window.open(editUrl.href, '_blank')
}
export function onTabPag(index, pageNum, pageSize) {
index = index + 1 + (pageNum - 1) * pageSize;
return index;
}
axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
const service = axios.create({
baseURL: process.env.VUE_APP_BASE_API,
timeout: 10000,
headers: {
'Cache-Control': 'no-cache'
}
})
import util from "./utilJs"
service.interceptors.request.use(config => {
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers['Authorization'] = 'Bearer ' + getToken()
}
let signObj = config.params
let newObj={}
for(var i in signObj){
if(signObj[i]==""||signObj[i]){
newObj[i]=signObj[i]
}
}
config.params = {...config.params, sign: util.makeSign(newObj)}
return config
}, error => {
console.log(error)
Promise.reject(error)
})
service.interceptors.response.use(res => {
const code = res.data.code || 200;
const message = errorCode[code] || res.data.msg || errorCode['default']
if (code === 401) {
MessageBox.confirm(
'登录状态已过期,您可以继续留在该页面,或者重新登录',
'系统提示',
{
confirmButtonText: '重新登录',
cancelButtonText: '取消',
type: 'warning'
}
).then(() => {
store.dispatch('LogOut').then(() => {
location.reload()
})
})
} else if (code === 500) {
Message({
message: message,
type: 'error'
})
return Promise.reject(new Error(message))
} else if (code !== 200) {
Notification.error({
title: message
})
return Promise.reject('error')
} else {
return res.data
}
},
error => {
console.log('err' + error)
Message({
message: error.message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
)
export default service