var filters = { toFix: function (val, count) { if (!val) { return parseFloat(0).toFixed(count); } val = parseFloat(val); return val.toFixed(count) }, replace_time: function (val) { if (!val) return "不限"; return val.replace("00:00:00", ""); }, gettimestamp: function (date) { console.log(date); var timestamp = getDate(date).getTime(); console.log(timestamp); timestamp = parseInt(timestamp / 1000) return timestamp; }, replace_time2: function (val) { if (val == null || val == undefined || val == '') return ""; var a = val.split(" "); return a[0]; }, format_time: function (ts, isFull) { // 如果数值位数为1,则补0 function appendZero(obj) { if (obj < 10) { return "0" + "" + obj; } else { return obj; } }; if (ts == null || ts == undefined || ts == '') return ""; var d = getDate(ts * 1000) var fm = [appendZero(d.getFullYear()), appendZero(d.getMonth() + 1), appendZero(d.getDate())].join('-'); var md = appendZero(d.getMonth() + 1) + '月' + appendZero(d.getDate()) + '日'; if (isFull == 1) fm = fm + ' ' + [appendZero(d.getHours()), appendZero(d.getMinutes()), appendZero(d.getSeconds())].join(':'); if (isFull == 2) { fm = md + ' ' + [appendZero(d.getHours()), appendZero(d.getMinutes())].join(':'); } return fm; }, format_time2: function (ts, isFull) { // 如果数值位数为1,则补0 function appendZero(obj) { if (obj < 10) { return "0" + "" + obj; } else { return obj; } }; if (ts == null || ts == undefined || ts == '') return ""; var d = getDate(ts) var fm = [appendZero(d.getFullYear()), appendZero(d.getMonth() + 1), appendZero(d.getDate())].join('-'); var md = appendZero(d.getMonth() + 1) + '月' + appendZero(d.getDate()) + '日'; if (isFull == 1) fm = fm + ' ' + [appendZero(d.getHours()), appendZero(d.getMinutes()), appendZero(d.getSeconds())].join(':'); if (isFull == 2) { fm = md + ' ' + [appendZero(d.getHours()), appendZero(d.getMinutes())].join(':'); } return fm; }, pInt: function (t) { var d = parseInt(t); return d; }, show_gui_ge: function (spec, color) { if ((spec == "" || spec == null || spec == "null")) { if ((color == "" || color == null || color == "null")) { return "规格1"; } else { return color; } } else { if ((color == "" || color == null || color == "null")) { return spec; } else { return spec + "/" + color; } } }, show_default: function (value, placeholder, multiple) { if (typeof value === 'number') { if (isNaN(value)) { return placeholder || '-'; } else if (value === 0) { return placeholder || '0'; } else { if (multiple) { return value / multiple; } else { return value; } }; } else if (value === '' || value === undefined || value === null) { return placeholder || '-'; } else { return value; } }, // 根据状态值返回相应的状态文字 // num:状态数值, // arr: 状态文字数组, // 文字顺序必须跟状态数值对应 status: function (num, arr,order_status) { // var text = ''; // if(num == 0) { // text = '未付款'; // } else if(num == 1) { // text = '已付款'; // } else if(num == 2) { // text = '等待分成(已收货)'; // } else if(num == 3) { // text = '已完成'; // }; if(order_status==6) return '已退款'; return arr[num]; }, in_arr: function (index, arr) { if (arr.indexOf(index) != -1) { return true; } else { return false; }; }, showByType: function (typeStr) { var index; var newTypeArr = []; var typeStrArr = typeStr.split(','); typeStrArr.forEach(function (item) { index = parseInt(item); newTypeArr.push(index); }); // console.log('newTypeArr', newTypeArr); return newTypeArr; }, // 价格除以100 price: function (val) { return val / 100; }, div100: function (val) { return val / 100; }, // 计算百分比, 不带百分号 percent: function (num1, num2) { // console.log('百分比',Math.round(num1/num2 * 10000) / 100); return Math.round(num1 / num2 * 10000) / 100; }, // 计算差数 difference: function (num1, num2) { if (!num1) num1 = 0; if (!num2) num2 = 0; if (num1 >= num2) { return num1 - num2; } else { return num2 - num1; }; }, // 计算乘积 multiply: function (num1, num2) { return num1 * 10000 * num2 / 10000; }, JSONStringify: function (val) { return JSON.stringify(val); }, // 循环列表计算数量 count: function (list) { var sum = 0; if (list && list.length != 0) { list.forEach(function (item) { sum += item.qty; }); return sum; }; }, // 判断时间是否过期 isExpired: function (date) { var mydate = getDate(date).getTime(); var currentDate = getDate().getTime(); if (currentDate >= mydate) { return true; } else { return false; }; }, // 显示开始和结束日期 showStartAndEndDate: function (o, val) { var dateType = o.date_type; var currentDate = getDate().getTime(); var startDate, endDate, days, begin_days; if (dateType === 0) { if (o.effective_days !== 0) { days = (o.effective_days - 1) * 24 * 60 * 60 * 1000; endDate = filters.format_time2(currentDate + days); currentDate = filters.format_time2(currentDate); return currentDate + '至' + endDate; } else { if (val) { days = (val - 1) * 24 * 60 * 60 * 1000; endDate = filters.format_time2(currentDate + days); currentDate = filters.format_time2(currentDate); return currentDate + '至' + endDate; } else { currentDate = filters.format_time2(currentDate); return currentDate + '至不限'; } } }; if (dateType === 1) { currentDate = filters.format_time2(currentDate); if (o.begin_date && o.effective_date) { return o.begin_date + '至' + o.effective_date; }; if (o.begin_date && !o.effective_date) { return o.begin_date + '至不限'; }; if (!o.begin_date && o.effective_date) { return currentDate + '至' + o.effective_date; }; if (!o.begin_date && !o.effective_date) { return currentDate + '至不限'; }; }; if (dateType === 2) { // N天后开始 begin_days = o.begin_days * 24 * 60 * 60 * 1000; // 有效天数 days = (o.effective_days - 1) * 24 * 60 * 60 * 1000; startDate = filters.format_time2(currentDate + begin_days); endDate = filters.format_time2(getDate(startDate).getTime() + days); return startDate + '至' + endDate; }; }, }; module.exports = { toFix: filters.toFix, replace_time: filters.replace_time, replace_time2: filters.replace_time2, format_time: filters.format_time, pInt: filters.pInt, show_gui_ge: filters.show_gui_ge, show_default: filters.show_default, status: filters.status, in_arr: filters.in_arr, percent: filters.percent, showByType: filters.showByType, difference: filters.difference, multiply: filters.multiply, price: filters.price, div100: filters.div100, JSONStringify: filters.JSONStringify, count: filters.count, isExpired: filters.isExpired, gettimestamp: filters.gettimestamp, showStartAndEndDate: filters.showStartAndEndDate, is_virtual_gd:function (is_virtual){ if(is_virtual==2) return true; return false; } }