const formatTime = (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(':');
};
//开始年份
const yearStart = 1978;
//结束年份
const yearEnd = 2100;
const formatNumber = (n) => {
n = n.toString();
return n[1] ? n : '0' + n;
};
module.exports = {
formatTime: formatTime
};
function withData(param) {
return param < 10 ? '0' + param : '' + param;
}
function getLoopArray(start, end) {
var start = start || 0;
var end = end || 1;
var array = [];
for (var i = start; i <= end; i++) {
array.push(withData(i));
}
return array;
}
function getMonthDay(year, month) {
var flag = year % 400 == 0 || (year % 4 == 0 && year % 100 != 0);
var array = null;
console.log(year + '--' + month);
switch (month) {
case '01':
case '03':
case '05':
case '07':
case '08':
case '10':
case '12':
case '1':
case '3':
case '5':
case '7':
case '8':
array = getLoopArray(1, 31);
break;
case '4':
case '6':
case '9':
case '04':
case '06':
case '09':
case '11':
array = getLoopArray(1, 30);
break;
case '02':
case '2':
array = flag ? getLoopArray(1, 29) : getLoopArray(1, 28);
break;
default:
//array = '月份格式不正确,请重新输入!'
array = getLoopArray(1, 30);
}
return array;
}
function getNewDateArry() {
// 当前时间的处理
var newDate = new Date();
var year = withData(newDate.getFullYear());
var mont = withData(newDate.getMonth() + 1);
var date = withData(newDate.getDate());
var hour = withData(newDate.getHours());
var minu = withData(newDate.getMinutes());
var seco = withData(newDate.getSeconds());
return [year, mont, date, hour, minu, seco];
}
/**
* 返回传入时间对应的值
* 对应的值显示年月日时分秒(时分秒不为00:00:00)
*/
function dateTimePickerNowDate(date, startYear, endYear) {
// 返回默认显示的数组和联动数组的声明
var dateTime = [];
var dateTimeArray = [[], [], [], [], [], []];
var start = startYear || yearStart;
var end = endYear || yearEnd;
// 默认开始显示数据
// var defaultDate = date ? [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')] : getNewDateArry();
var defaultDate;
if (date != null && date != '') {
// if (date.indexOf('T')) {
// date = date.replace('T', ' ');//原来L端可能返回的时间格式有带T的格式,处理一下
// }
date = formatDateYMDHMS(date); //先格式化一下时间
defaultDate = [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')];
} else {
defaultDate = getNewDateArry();
}
// 处理联动列表数据
/*年月日 时分秒*/
dateTimeArray[0] = getLoopArray(start, end);
dateTimeArray[1] = getLoopArray(1, 12);
dateTimeArray[2] = getMonthDay(defaultDate[0], defaultDate[1]);
dateTimeArray[3] = getLoopArray(0, 23);
dateTimeArray[4] = getLoopArray(0, 59);
dateTimeArray[5] = getLoopArray(0, 59);
dateTimeArray.forEach((current, index) => {
dateTime.push(current.indexOf(defaultDate[index]));
});
return {
dateTimeArray: dateTimeArray,
dateTime: dateTime
};
}
/**
* 返回传入时间对应的值 分钟只显示 00和30
* 对应的值显示年月日时分秒(时分秒不为00:00:00)
*/
function dateTimePickerNowDate2(date, startYear, endYear) {
// 返回默认显示的数组和联动数组的声明
var dateTime = [];
var dateTimeArray = [[], [], [], [], [], []];
var start = startYear || yearStart;
var end = endYear || yearEnd;
// 默认开始显示数据
// var defaultDate = date ? [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')] : getNewDateArry();
var defaultDate;
if (date != null && date != '') {
// if (date.indexOf('T')) {
// date = date.replace('T', ' ');//原来L端可能返回的时间格式有带T的格式,处理一下
// }
date = formatDateYMDHMS(date); //先格式化一下时间
defaultDate = [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')];
} else {
defaultDate = getNewDateArry();
}
// 处理联动列表数据
/*年月日 时分秒*/
dateTimeArray[0] = getLoopArray(start, end);
dateTimeArray[1] = getLoopArray(1, 12);
dateTimeArray[2] = getMonthDay(defaultDate[0], defaultDate[1]);
dateTimeArray[3] = getLoopArray(0, 23);
dateTimeArray[4] = ['00', '30'];
dateTimeArray[5] = getLoopArray(0, 59);
dateTimeArray.forEach((current, index) => {
dateTime.push(current.indexOf(defaultDate[index]));
});
return {
dateTimeArray: dateTimeArray,
dateTime: dateTime
};
}
/**
* 返回传入时间对应的值
* 对应的值显示年月日时分秒(时分秒为00:00:00)
*/
function dateTimePicker(date, startYear, endYear) {
// 返回默认显示的数组和联动数组的声明
var dateTime = [];
var dateTimeArray = [[], [], [], [], [], []];
var start = startYear || yearStart;
var end = endYear || yearEnd;
// 默认开始显示数据
// var defaultDate = date ? [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')] : getNewDateArry();
var defaultDate;
if (date != null && date != '') {
// if (date.indexOf('T')) {
// date = date.replace('T', ' ');//原来L端可能返回的时间格式有带T的格式,处理一下
// }
date = formatDateYMDHMS(date); //先格式化一下时间
defaultDate = [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')];
} else {
defaultDate = getNewDateArry();
}
defaultDate[3] = '00';
defaultDate[4] = '00';
defaultDate[5] = '00';
// 处理联动列表数据
/*年月日 时分秒*/
dateTimeArray[0] = getLoopArray(start, end);
dateTimeArray[1] = getLoopArray(1, 12);
dateTimeArray[2] = getMonthDay(defaultDate[0], defaultDate[1]);
dateTimeArray[3] = getLoopArray(0, 23);
dateTimeArray[4] = getLoopArray(0, 59);
dateTimeArray[5] = getLoopArray(0, 59);
dateTimeArray.forEach((current, index) => {
dateTime.push(current.indexOf(defaultDate[index]));
});
return {
dateTimeArray: dateTimeArray,
dateTime: dateTime
};
}
function dateTimePicker2(date, startYear, endYear) {
// 返回默认显示的数组和联动数组的声明
var dateTime = [];
var dateTimeArray = [[], [], [], [], [], []];
var start = startYear || yearStart;
var end = endYear || yearEnd;
// 默认开始显示数据
// var defaultDate = date ? [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')] : getNewDateArry();
var defaultDate;
// debugger;
if (date != null && date != '') {
// if (date.indexOf('T')) {
// date = date.replace('T', ' ');//原来L端可能返回的时间格式有带T的格式,处理一下
// }
date = formatDateYMDHMS(date); //先格式化一下时间
defaultDate = [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')];
} else {
defaultDate = getNewDateArry();
}
// defaultDate[3] = '00';
// defaultDate[4] = '00';
// defaultDate[5] = '00';
// 处理联动列表数据
/*年月日 时分秒*/
dateTimeArray[0] = getLoopArray(start, end);
dateTimeArray[1] = getLoopArray(1, 12);
dateTimeArray[2] = getMonthDay(defaultDate[0], defaultDate[1]);
dateTimeArray[3] = getLoopArray(0, 23);
//dateTimeArray[4] = ['00'];
dateTimeArray[4] = getLoopArray(0, 59);
dateTimeArray[5] = getLoopArray(0, 59);
dateTimeArray.forEach((current, index) => {
dateTime.push(current.indexOf(defaultDate[index]));
});
return {
dateTimeArray: dateTimeArray,
dateTime: dateTime
};
}
function dateTimePickerYMDHM(date, startYear, endYear) {
// 返回默认显示的数组和联动数组的声明
var dateTime = [];
var dateTimeArray = [[], [], [], [], []];
var start = startYear || yearStart;
var end = endYear || yearEnd;
// 默认开始显示数据
var defaultDate;
if (date != null && date != '') {
// if (date.indexOf('T')) {
// date = date.replace('T', ' ');//原来L端可能返回的时间格式有带T的格式,处理一下
// }
date = formatDateYMDHMS(date); //先格式化一下时间
defaultDate = [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')];
} else {
defaultDate = getNewDateArry();
}
defaultDate[3] = '00';
defaultDate[4] = '00';
defaultDate[5] = '00';
// var defaultDate = date ? [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')] : getNewDateArry();
// 处理联动列表数据
/*年月日 时分秒*/
dateTimeArray[0] = getLoopArray(start, end);
dateTimeArray[1] = getLoopArray(1, 12);
dateTimeArray[2] = getMonthDay(defaultDate[0], defaultDate[1]);
dateTimeArray[3] = getLoopArray(0, 23);
dateTimeArray[4] = getLoopArray(0, 59);
// dateTimeArray[5] = getLoopArray(0, 59);
dateTimeArray.forEach((current, index) => {
dateTime.push(current.indexOf(defaultDate[index]));
});
return {
dateTimeArray: dateTimeArray,
dateTime: dateTime
};
}
function dateTimePickerYMDHM2(date, startYear, endYear) {
//分钟为00和30
// 返回默认显示的数组和联动数组的声明
var dateTime = [];
var dateTimeArray = [[], [], [], [], []];
var start = startYear || yearStart;
var end = endYear || yearEnd;
// 默认开始显示数据
var defaultDate;
if (date != null && date != '') {
// if (date.indexOf('T')) {
// date = date.replace('T', ' ');//原来L端可能返回的时间格式有带T的格式,处理一下
// }
date = formatDateYMDHMS(date); //先格式化一下时间
defaultDate = [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')];
} else {
defaultDate = getNewDateArry();
}
defaultDate[3] = '00';
defaultDate[4] = '00';
defaultDate[5] = '00';
// var defaultDate = date ? [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')] : getNewDateArry();
// 处理联动列表数据
/*年月日 时分秒*/
dateTimeArray[0] = getLoopArray(start, end);
dateTimeArray[1] = getLoopArray(1, 12);
dateTimeArray[2] = getMonthDay(defaultDate[0], defaultDate[1]);
dateTimeArray[3] = getLoopArray(0, 23);
dateTimeArray[4] = ['00', '30'];
// dateTimeArray[5] = getLoopArray(0, 59);
dateTimeArray.forEach((current, index) => {
dateTime.push(current.indexOf(defaultDate[index]));
});
return {
dateTimeArray: dateTimeArray,
dateTime: dateTime
};
}
function dateTimePickerYMD(date, startYear, endYear) {
// 返回默认显示的数组和联动数组的声明
var dateTime = [];
var dateTimeArray = [[], [], [], [], []];
var start = startYear || yearStart;
var end = endYear || yearEnd;
// 默认开始显示数据
var defaultDate;
if (date != null && date != '') {
// if (date.indexOf('T')) {
// date = date.replace('T', ' ');//原来L端可能返回的时间格式有带T的格式,处理一下
// }
date = formatDateYMDHMS(date); //先格式化一下时间
defaultDate = [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')];
} else {
defaultDate = getNewDateArry();
}
// var defaultDate = date ? [...date.split(' ')[0].split('-'), ...date.split(' ')[1].split(':')] : getNewDateArry();
// 处理联动列表数据
/*年月日 时分秒*/
dateTimeArray[0] = getLoopArray(start, end);
dateTimeArray[1] = getLoopArray(1, 12);
dateTimeArray[2] = getMonthDay(defaultDate[0], defaultDate[1]);
// dateTimeArray[3] = getLoopArray(0, 23);
// dateTimeArray[4] = getLoopArray(0, 59);
// dateTimeArray[5] = getLoopArray(0, 59);
dateTimeArray.forEach((current, index) => {
dateTime.push(current.indexOf(defaultDate[index]));
});
return {
dateTimeArray: dateTimeArray,
dateTime: dateTime
};
}
/**
* 时间格式化 2017-01-01 01:01:01
* @param val
* @returns {string}
*/
function formatDateYMDHMS(val) {
// model -> view,在更新 `` 元素之前格式化值
if ((val != null || val == '') && typeof val == 'string') {
if (val.indexOf('T')) {
val = val.replace('T', ' '); //原来L端可能返回的时间格式有带T的格式,处理一下
}
val = val.replace('-', '/').replace('-', '/');
}
var value = new Date(val);
//console.log(val);
var fmt = 'yyyy-MM-dd HH:mm:ss';
var o = {
'M+': value.getMonth() + 1,
//月份
'd+': value.getDate(),
//日
'H+': value.getHours(),
//小时
//"h+": val.getHours()%12 == 0 ? 12 : val.getHours()%12, //小时
'm+': value.getMinutes(),
//分
's+': value.getSeconds() //秒
//"S": val.getMilliseconds() //毫秒
//"q+": Math.floor((val.getMonth() + 3) / 3) //季度
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (value.getFullYear() + '').substr(4 - RegExp.$1.length));
}
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));
}
}
return fmt;
}
/**
* 时间格式化 2017-01-01 01:01:01
* @param val
* @returns {string}
*/
function formatDateYMDHM(val) {
// model -> view,在更新 `` 元素之前格式化值
if (val != null && val != '') {
if (typeof val == 'string') {
if (val.indexOf('T')) {
val = val.replace('T', ' '); //原来L端可能返回的时间格式有带T的格式,处理一下
}
val = val.replace('-', '/').replace('-', '/');
}
var value = new Date(val);
//console.log(val);
var fmt = 'yyyy-MM-dd HH:mm';
var o = {
'M+': value.getMonth() + 1,
//月份
'd+': value.getDate(),
//日
'H+': value.getHours(),
//小时
//"h+": val.getHours()%12 == 0 ? 12 : val.getHours()%12, //小时
'm+': value.getMinutes() //分
// "s+": value.getSeconds() //秒
//"S": val.getMilliseconds() //毫秒
//"q+": Math.floor((val.getMonth() + 3) / 3) //季度
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (value.getFullYear() + '').substr(4 - RegExp.$1.length));
}
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));
}
}
return fmt || '';
} else {
return '-';
}
}
// 年月日
function formatDateYMD(val) {
// model -> view,在更新 `` 元素之前格式化值
if (val == null || val == '') {
return null;
}
if ((val != null || val == '') && typeof val == 'string') {
if (val.indexOf('T')) {
val = val.replace('T', ' '); //原来L端可能返回的时间格式有带T的格式,处理一下
}
val = val.replace('-', '/').replace('-', '/');
}
var value = new Date(val);
//console.log(val);
var fmt = 'yyyy-MM-dd';
var o = {
'M+': value.getMonth() + 1,
//月份
'd+': value.getDate() //日
// "H+": value.getHours(), //小时
//"h+": val.getHours()%12 == 0 ? 12 : val.getHours()%12, //小时
// "m+": value.getMinutes(), //分
// "s+": value.getSeconds() //秒
//"S": val.getMilliseconds() //毫秒
//"q+": Math.floor((val.getMonth() + 3) / 3) //季度
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (value.getFullYear() + '').substr(4 - RegExp.$1.length));
}
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));
}
}
return fmt;
}
/**
* 时间格式化 mm:ss
* @param val
* @returns {string}
*/
function formatDateMS(val) {
if ((val != null || val == '') && typeof val == 'string') {
if (val.indexOf('T')) {
val = val.replace('T', ' '); //原来L端可能返回的时间格式有带T的格式,处理一下
}
val = val.replace('-', '/').replace('-', '/');
}
var value = new Date(val);
var fmt = 'HH:mm';
var o = {
'H+': value.getHours(),
//小时
'm+': value.getMinutes() //分
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (value.getFullYear() + '').substr(4 - RegExp.$1.length));
}
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));
}
}
return fmt;
}
/**
格式化为苹果手机能认的时间格式yyyy/MM/dd HH:mm:ss
*/
function formatDateYMDHMS_TO_APPLE(val) {
// model -> view,在更新 `` 元素之前格式化值
if (val != null || val == '') {
val = val + '';
if (val.indexOf('T')) {
val = val.replace('T', ' '); //原来L端可能返回的时间格式有带T的格式,处理一下
}
val = val.replace('-', '/').replace('-', '/');
}
var value = new Date(val);
//console.log(val);
var fmt = 'yyyy/MM/dd HH:mm:ss';
var o = {
'M+': value.getMonth() + 1,
//月份
'd+': value.getDate(),
//日
'H+': value.getHours(),
//小时
//"h+": val.getHours()%12 == 0 ? 12 : val.getHours()%12, //小时
'm+': value.getMinutes(),
//分
's+': value.getSeconds() //秒
//"S": val.getMilliseconds() //毫秒
//"q+": Math.floor((val.getMonth() + 3) / 3) //季度
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (value.getFullYear() + '').substr(4 - RegExp.$1.length));
}
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));
}
}
return fmt;
}
/**
获取当前时间所在年
*/
function getNowYear() {
return new Date().getFullYear();
}
/**
获取当前时间所在月
*/
function getNowMonth() {
return new Date().getMonth() + 1;
}
/**
获取当前时间的年月
*/
function getNowYearMonth() {
var date = new Date();
var month = date.getMonth() + 1;
if (month < 10) {
month = '0' + month;
}
return date.getFullYear() + '-' + month;
}
/**
获取当前时间的年月日
*/
function getNowYearMonthDay() {
var date = new Date();
var month = date.getMonth() + 1;
if (month < 10) {
month = '0' + month;
}
return date.getFullYear() + '-' + month + '-' + date.getDate();
}
/**
获取时间的上午下午格式
*/
function formateTimeAMPM(date) {
if (date == null || date == '') {
return '';
}
if (typeof date == 'string') {
date = date.replace('-', '/').replace('-', '/');
}
var d = new Date(date);
var hour = d.getHours();
if (hour <= 12) {
return 'AM ' + (hour + 1) + ':' + d.getMinutes();
} else if (hour > 12) {
return 'PM ' + (hour + 1) + ':' + d.getMinutes();
} else {
return '';
}
}
function getTodayYYYYMMDD() {
var date = new Date();
return date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate();
}
function formateMonthDay(dateTime) {
// debugger;
var dt = dateTime.split('-');
return dt[1] * 1 + '月' + dt[2] * 1 + '日';
}
// 时间对比
function subTimes(_val1, _val2) {
var start_date = new Date(_val1.replace(/-/g, '/'));
var end_date = new Date(_val2.replace(/-/g, '/'));
var days = end_date.getTime() - start_date.getTime();
return days / 60000; //返回分钟数
}
// 时间对比
function subDays(sDate1) {
//sDate1和sDate2是2017-9-25格式
sDate1 = formatDateYMD(sDate1);
var sDate2 = getTodayYYYYMMDD();
var aDate;
var oDate1;
var oDate2;
var iDays;
aDate = sDate1.split('-');
oDate1 = new Date(aDate[1] + '/' + aDate[2] + '/' + aDate[0]); //转换为9-25-2017格式
aDate = sDate2.split('-');
oDate2 = new Date(aDate[1] + '/' + aDate[2] + '/' + aDate[0]);
iDays = parseInt((oDate2 - oDate1) / 1000 / 60 / 60 / 24); //把相差的毫秒数转换为天数
return iDays;
}
/**
* 获取今天、明天、后天
*/
function getDataName(dateTemp) {
var timeStr = '';
if (isNotEmptyCheck(dateTemp)) {
var str = formatDateYMD(dateTemp);
var date = str.split(' ')[0];
if (getFutureDateYMD(0) == date) {
timeStr = '(今天)';
} else if (getFutureDateYMD(1) == date) {
timeStr = '(明天)';
} else if (getFutureDateYMD(2) == date) {
timeStr = '(后天)';
}
}
return timeStr;
}
/**
* 如果是null '' 'null' 'undefined'
* @param item
* @returns
*/
function isEmptyCheck(value) {
if (value == null || value === '' || value == 'null' || typeof value == 'undefined') {
return true;
}
return false;
}
/**
* 如果不是是null '' 'null' 'undefined'
* @param item
* @returns
*/
function isNotEmptyCheck(value) {
return !isEmptyCheck(value);
}
/**
* 获取未来第几天,
* 1、传入正数,返回未来几天
* 2、传入负数,返回过去几天
*/
function getFutureDateYMD(dayNum) {
// 开始时间
var date = new Date();
date.setDate(date.getDate() + dayNum);
var prevYear = date.getFullYear();
var prevMonth = date.getMonth() + 1;
var prevDay = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
return prevYear + '-' + (prevMonth >= 10 ? prevMonth : '0' + prevMonth) + '-' + prevDay;
}
function getDateYMDHM() {
// 开始时间
let date = new Date();
let prevYear = date.getFullYear();
let prevMonth = date.getMonth() + 1;
let prevDay = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
let hour = date.getHours();
let minute = date.getMinutes();
// let second = date.getSeconds();
return prevYear + '-' + (prevMonth >= 10 ? prevMonth : '0' + prevMonth) + '-' + prevDay + ' ' + hour + ':' + minute;
}
// function getDateYMDHM() {
// // 开始时间
// let date = new Date();
// let prevYear = date.getFullYear();
// let prevMonth = date.getMonth() + 1;
// let prevDay = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
// let hour = date.getHours();
// let minute = date.getMinutes();
// // let second = date.getSeconds();
// return prevYear + "-" + (prevMonth >= 10 ? prevMonth : ('0' + prevMonth)) + "-" + prevDay + " " + hour + ":" + minute;
// }
function getDateYMD() {
// 开始时间
let date = new Date();
let prevYear = date.getFullYear();
let prevMonth = date.getMonth() + 1;
let prevDay = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
// let second = date.getSeconds();
return prevYear + '-' + (prevMonth >= 10 ? prevMonth : '0' + prevMonth) + '-' + prevDay;
}
function getHour() {
// 开始时间
let date = new Date();
let hour = date.getHours();
// let second = date.getSeconds();
return hour;
}
function timeShow(val) {
if (isEmptyCheck(val)) {
return '';
}
if (typeof val == 'string') {
val = val + '';
if (val.indexOf('T')) {
val = val.replace('T', ' '); //原来L端可能返回的时间格式有带T的格式,处理一下
}
val = val.replace('-', '/').replace('-', '/');
}
var date = new Date();
var value = new Date(val);
const year0 = date.getFullYear();
const month0 = date.getMonth() + 1;
const day0 = date.getDate();
const hour0 = date.getHours();
const minute0 = date.getMinutes();
// const second = date.getSeconds()
const year1 = value.getFullYear();
const month1 = value.getMonth() + 1;
const day1 = value.getDate();
const hour1 = value.getHours();
const minute1 = value.getMinutes();
// const second = value.getSeconds()
if (year0 == year1 && month0 == month1 && day0 == day1) {
return hour1 + ':' + (minute1 >= 10 ? minute1 : '0' + minute1);
}
let d = new Date(val).setHours(0, 0, 0, 0);
let today = new Date().setHours(0, 0, 0, 0);
if (d - today == -86400000) {
return '昨天';
}
if (year0 == year1) {
return month1 + '月' + day1 + '日';
}
return (year1 + '').slice(2) + '年' + month1 + '月' + day1 + '日';
return hour;
}
function timeShowXXX(val) {
if (isEmptyCheck(val)) {
return '';
}
let date = '';
let differenceTime = new Date().getTime() - new Date(val).getTime();
var D = Math.floor(differenceTime / (86400 * 1000));
var level1 = differenceTime % 86400000;
var H = Math.floor(level1 / 3600000);
var level2 = level1 % 3600000;
var M = Math.floor(level2 / 60000);
var level3 = level2 % 60000;
var S = Math.floor(level3 / 1000);
date = null;
if (D > 0 && D <= 100) {
date = D + '天前';
} else if (D > 0) {
let date1 = new Date(val);
var y = date1.getFullYear();
var m = date1.getMonth() + 1;
m = m < 10 ? '0' + m : m;
var d = date1.getDate();
d = d < 10 ? '0' + d : d;
var h = date1.getHours();
h = h < 10 ? '0' + h : h;
var minute = date1.getMinutes();
minute = minute < 10 ? '0' + minute : minute;
var second = date1.getSeconds();
second = second < 10 ? '0' + second : second;
date = y + '-' + m + '-' + d + ' ' + h + ':' + minute;
} else if (H > 0) {
date = H + '小时前';
} else if (M > 0) {
date = M + '分钟前';
} else {
date = S + '秒前';
}
return date;
}
/**
* 处理工单状态
*/
export function userApplyOrderStatusArray() {
// let orderStatus = [
// { id: "10", name: "审核中", value: "10", text: "审核中" },
// { id: "20", name: "待面试", value: "20", text: "待面试" },
// { id: "30", name: "待入职", value: "30", text: "待入职" },
// { id: "40", name: "在职中", value: "40", text: "在职中" },
// { id: "50", name: "待离职", value: "50", text: "待离职" },
// { id: "60", name: "已完成", value: "60", text: "已完成" },
// ];
let orderStatus = [
{
id: '10',
name: '审核中',
value: '10',
text: '审核中',
num: 0
},
{
id: '20',
name: '待接待',
value: '20',
text: '待接待',
num: 0
},
{
id: '21',
name: '审核未通过',
value: '21',
text: '审核未通过',
num: 0
},
{
id: '25',
name: '待面试',
value: '25',
text: '待面试',
num: 0
},
{
id: '26',
name: '未接到',
value: '26',
text: '未接到',
num: 0
},
{
id: '30',
name: '待入职',
value: '30',
text: '待入职',
num: 0
},
{
id: '35',
name: '面试未通过',
value: '35',
text: '面试未通过',
num: 0
},
{
id: '40',
name: '在职中',
value: '40',
text: '在职中',
num: 0
},
{
id: '45',
name: '通过未入职',
value: '45',
text: '通过未入职',
num: 0
},
{
id: '48',
name: '约离职',
value: '48',
text: '约离职',
num: 0
},
{
id: '50',
name: '已离职',
value: '50',
text: '已完成',
num: 0
}
// { id: "60", name: "已完成", value: "60", text: "已完成", num: 0 }
];
return orderStatus;
}
/*
截取备注字段
*/
export function splitRemark(info) {
let index = info.lastIndexOf('备注');
let remark = info.substr(index + 3);
console.log(remark);
return remark;
}
/**
* 根据工单类型获取名称
*/
export function getUserApplyOrderTypeByType(type) {
let typeStr = '';
let array = userApplyOrderStatusArray();
array.forEach((item) => {
if (item.type == type) {
typeStr = item.text;
}
});
return typeStr;
}
/**
* 根据工单状态ID获取名称
*/
export function getUserApplyOrderStatusById(id) {
let str = '';
let array = userApplyOrderStatusArray();
array.forEach((item) => {
if (item.id == id) {
str = item.name;
}
});
return str;
}
module.exports = {
getFutureDateYMD: getFutureDateYMD,
isEmptyCheck: isEmptyCheck,
isNotEmptyCheck: isNotEmptyCheck,
dateTimePickerNowDate: dateTimePickerNowDate,
dateTimePickerNowDate2: dateTimePickerNowDate2,
dateTimePicker: dateTimePicker,
dateTimePicker2: dateTimePicker2,
dateTimePickerYMDHM: dateTimePickerYMDHM,
dateTimePickerYMDHM2: dateTimePickerYMDHM2,
dateTimePickerYMD: dateTimePickerYMD,
getMonthDay: getMonthDay,
formatDateYMDHMS: formatDateYMDHMS,
formatDateYMDHM: formatDateYMDHM,
formatDateYMD: formatDateYMD,
formatDateMS: formatDateMS,
formatDateYMDHMS_TO_APPLE: formatDateYMDHMS_TO_APPLE,
getNowYear: getNowYear,
getNowMonth: getNowMonth,
getNowYearMonth: getNowYearMonth,
getNowYearMonthDay: getNowYearMonthDay,
formateTimeAMPM: formateTimeAMPM,
getTodayYYYYMMDD: getTodayYYYYMMDD,
formateMonthDay: formateMonthDay,
subTimes: subTimes,
subDays: subDays,
getDataName: getDataName,
getDateYMDHM: getDateYMDHM,
getDateYMD: getDateYMD,
getHour: getHour,
timeShowXXX: timeShowXXX,
getUserApplyOrderStatusById,
getUserApplyOrderTypeByType,
splitRemark,
timeShow
};