67 lines
1.5 KiB
JavaScript
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)
|
|
})
|