|
|
@@ -7,7 +7,9 @@
|
|
|
>
|
|
|
<template #default>
|
|
|
<div class="c-grid-form auto u-align-self--center">
|
|
|
- <div class="c-grid-form__label">执行方式</div>
|
|
|
+ <div class="c-grid-form__label">
|
|
|
+ 执行方式
|
|
|
+ </div>
|
|
|
<el-radio-group
|
|
|
v-model="task.freq"
|
|
|
class="l-flex--row c-grid-form__auto u-width--lg"
|
|
|
@@ -21,12 +23,15 @@
|
|
|
</el-radio>
|
|
|
</el-radio-group>
|
|
|
<template v-if="isWeekly">
|
|
|
- <div class="c-grid-form__label c-grid-form__auto u-required">每周</div>
|
|
|
+ <div class="c-grid-form__label c-grid-form__auto u-required">
|
|
|
+ 每周
|
|
|
+ </div>
|
|
|
<el-checkbox-group
|
|
|
v-model="task.dayOfWeek"
|
|
|
class="l-flex--row c-grid-form__auto"
|
|
|
size="mini"
|
|
|
fill="#1c5cb0"
|
|
|
+ :min="1"
|
|
|
>
|
|
|
<el-checkbox-button
|
|
|
v-for="week in weeks"
|
|
|
@@ -37,7 +42,9 @@
|
|
|
</el-checkbox-button>
|
|
|
</el-checkbox-group>
|
|
|
</template>
|
|
|
- <div class="c-grid-form__label u-required">执行时间</div>
|
|
|
+ <div class="c-grid-form__label u-required">
|
|
|
+ 执行时间
|
|
|
+ </div>
|
|
|
<el-time-picker
|
|
|
v-model="task.executeTime"
|
|
|
class="u-width--xs"
|
|
|
@@ -53,8 +60,11 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { Frequency } from '@/constant'
|
|
|
-import { parseTime } from '@/utils'
|
|
|
+import { Frequency } from '@/constant.js'
|
|
|
+import {
|
|
|
+ parseTime,
|
|
|
+ getCronWeekOptions
|
|
|
+} from '@/utils'
|
|
|
|
|
|
export default {
|
|
|
name: 'SimpleTaskDialog',
|
|
|
@@ -64,15 +74,7 @@ export default {
|
|
|
{ value: Frequency.DAILY, label: '每天' },
|
|
|
{ value: Frequency.WEEKLY, label: '每周' }
|
|
|
],
|
|
|
- weeks: [
|
|
|
- { value: '2', label: '一' },
|
|
|
- { value: '3', label: '二' },
|
|
|
- { value: '4', label: '三' },
|
|
|
- { value: '5', label: '四' },
|
|
|
- { value: '6', label: '五' },
|
|
|
- { value: '7', label: '六' },
|
|
|
- { value: '1', label: '日' }
|
|
|
- ],
|
|
|
+ weeks: getCronWeekOptions(),
|
|
|
task: null
|
|
|
}
|
|
|
},
|
|
|
@@ -85,7 +87,7 @@ export default {
|
|
|
show ({ freq = Frequency.DAILY, dayOfWeek, executeTime } = {}) {
|
|
|
this.task = {
|
|
|
freq,
|
|
|
- dayOfWeek: dayOfWeek ? dayOfWeek.split(',') : [],
|
|
|
+ dayOfWeek: dayOfWeek && dayOfWeek !== '?' ? dayOfWeek.split(',') : this.weeks.map(({ value }) => value),
|
|
|
executeTime: executeTime ? executeTime.replace(/\d{2}$/, '00') : parseTime(new Date(), '{h}:{i}:00')
|
|
|
}
|
|
|
this.$refs.dialog.show()
|
|
|
@@ -104,7 +106,7 @@ export default {
|
|
|
if (this.task.dayOfWeek.length === 7) {
|
|
|
task.freq = Frequency.DAILY
|
|
|
} else {
|
|
|
- task.dayOfWeek = dayOfWeek.join(',')
|
|
|
+ task.dayOfWeek = dayOfWeek.sort().join(',')
|
|
|
}
|
|
|
}
|
|
|
if (!executeTime) {
|
|
|
@@ -114,6 +116,7 @@ export default {
|
|
|
})
|
|
|
return
|
|
|
}
|
|
|
+ console.log('simple task', task)
|
|
|
this.$emit('confirm', {
|
|
|
value: task,
|
|
|
done
|