mirror of https://github.com/jeecgboot/jeecg-boot
【issues/I4IFWX】定时任务表达式,”星期“一栏错误]
parent
509be1e382
commit
2a5ec11660
|
@ -144,8 +144,12 @@ export default {
|
||||||
const v = this.cronValue_c
|
const v = this.cronValue_c
|
||||||
if (this.hideYear || this.hideSecond) return v
|
if (this.hideYear || this.hideSecond) return v
|
||||||
const vs = v.split(' ')
|
const vs = v.split(' ')
|
||||||
|
if (vs.length >= 6) {
|
||||||
|
// 转成 Quartz 的规则
|
||||||
|
vs[5] = this.convertWeekToQuartz(vs[5])
|
||||||
|
}
|
||||||
return vs.slice(0, vs.length - 1).join(' ')
|
return vs.slice(0, vs.length - 1).join(' ')
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
cronValue(newVal, oldVal) {
|
cronValue(newVal, oldVal) {
|
||||||
|
@ -226,6 +230,37 @@ export default {
|
||||||
if (values.length > i) this.year = values[i]
|
if (values.length > i) this.year = values[i]
|
||||||
this.assignInput()
|
this.assignInput()
|
||||||
},
|
},
|
||||||
|
// Quartz 的规则:
|
||||||
|
// 1 = 周日,2 = 周一,3 = 周二,4 = 周三,5 = 周四,6 = 周五,7 = 周六
|
||||||
|
convertWeekToQuartz(week) {
|
||||||
|
let convert = (v) => {
|
||||||
|
if (v === '0') {
|
||||||
|
return '1'
|
||||||
|
}
|
||||||
|
if (v === '1') {
|
||||||
|
return '0'
|
||||||
|
}
|
||||||
|
return (Number.parseInt(v) - 1).toString()
|
||||||
|
}
|
||||||
|
// 匹配示例 1-7 or 1/7
|
||||||
|
let patten1 = /^([0-7])([-/])([0-7])$/
|
||||||
|
// 匹配示例 1,4,7
|
||||||
|
let patten2 = /^([0-7])(,[0-7])+$/
|
||||||
|
if (/^[0-7]$/.test(week)) {
|
||||||
|
return convert(week)
|
||||||
|
} else if (patten1.test(week)) {
|
||||||
|
return week.replace(patten1, ($0, before, separator, after) => {
|
||||||
|
if (separator === '/') {
|
||||||
|
return convert(before) + separator + after
|
||||||
|
} else {
|
||||||
|
return convert(before) + separator + convert(after)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else if (patten2.test(week)) {
|
||||||
|
return week.split(',').map(v => convert(v)).join(',')
|
||||||
|
}
|
||||||
|
return week
|
||||||
|
},
|
||||||
calTriggerList: simpleDebounce(function () {
|
calTriggerList: simpleDebounce(function () {
|
||||||
this.calTriggerListInner()
|
this.calTriggerListInner()
|
||||||
}, 500),
|
}, 500),
|
||||||
|
|
|
@ -51,14 +51,14 @@ import mixin from './mixin'
|
||||||
import { replaceWeekName, WEEK_MAP_EN } from './const.js'
|
import { replaceWeekName, WEEK_MAP_EN } from './const.js'
|
||||||
|
|
||||||
const WEEK_MAP = {
|
const WEEK_MAP = {
|
||||||
'周一': 1,
|
'周一': 2,
|
||||||
'周二': 2,
|
'周二': 3,
|
||||||
'周三': 3,
|
'周三': 4,
|
||||||
'周四': 4,
|
'周四': 5,
|
||||||
'周五': 5,
|
'周五': 6,
|
||||||
'周六': 6,
|
'周六': 7,
|
||||||
// 按照国人习惯,将周日放到每周的最后一天
|
// 按照国人习惯,将周日放到每周的最后一天
|
||||||
'周日': 7,
|
'周日': 1,
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
|
Loading…
Reference in New Issue