2022-01-07 14:43:46 +08:00

67 lines
1.5 KiB
JavaScript

import Vue from 'vue'
import moment from 'moment'
import 'moment/locale/zh-cn'
moment.locale('zh-cn')
Vue.filter('NumberFormat', function(value) {
if (!value) {
return '0'
}
const intPartFormat = value.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,') // 将整数部分逢三一断
return intPartFormat
})
Vue.filter('QuestionTypeFormat', function(value) {
let result = ''
switch (Number(value)) {
case 1:
result = '单选题'
break
case 2:
result = '多选题'
break
case 3:
result = '判断题'
break
case 4:
result = '填空题'
break
case 5:
result = '简答题'
break
default:
break
}
return result
})
Vue.filter('AmountFormat', function(val) {
if (!val) {
return '0.00'
}
val = val.toString().replace(/\$|,/g, '')
var sign = false
if (val === Math.abs(val)) {
sign = true
}
val = Math.floor(val * 100 + 0.50000000001)
var cents = val % 100
val = Math.floor(val / 100).toString()
if (cents < 10) {
cents = '0' + cents
}
for (var i = 0; i < Math.floor((val.length - (1 + i)) / 3); i++) {
val = val.substring(0, val.length - (4 * i + 3)) + ',' + val.substring(val.length - (4 * i + 3))
}
return (sign ? '-' : '') + val + '.' + cents
})
Vue.filter('dayjs', function(dataStr, pattern = 'YYYY-MM-DD HH:mm:ss') {
return moment(dataStr).format(pattern)
})
Vue.filter('moment', (dataStr, pattern = 'YYYY-MM-DD HH:mm:ss') => {
if (!dataStr) return ''
return moment(dataStr).format(pattern)
})