diff --git a/escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/timing.vue b/escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/timing.vue index ba67536ea2..b8785c487b 100644 --- a/escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/timing.vue +++ b/escheduler-ui/src/js/conf/home/pages/projects/pages/definition/pages/list/_source/timing.vue @@ -21,9 +21,11 @@
+ 执行时间
{{$t('Timing')}}
+
+
+
未来五次执行时间
+ +
+
{{$t('Failure Strategy')}} @@ -162,7 +171,8 @@ receiversCc: [], i18n: i18n.globalScope.LOCALE, processInstancePriority: 'MEDIUM', - workerGroupId: -1 + workerGroupId: -1, + previewTimes: [] } }, props: { @@ -225,6 +235,29 @@ } }, + _preview () { + if (this._verification()) { + let api = 'dag/previewSchedule' + let searchParams = { + schedule: JSON.stringify({ + startTime: this.scheduleTime[0], + endTime: this.scheduleTime[1], + crontab: this.crontab + }) + } + let msg = '' + + this.store.dispatch(api, searchParams).then(res => { + this.previewTimes = res + if (this.previewTimes.length) { + resolve() + } else { + reject(new Error(0)) + } + }) + } + }, + _getNotifyGroupList () { return new Promise((resolve, reject) => { let notifyGroupListS = _.cloneDeep(this.store.state.dag.notifyGroupListS) || [] @@ -248,6 +281,9 @@ }, close () { this.$emit('close') + }, + preview () { + this._preview() } }, watch: { diff --git a/escheduler-ui/src/js/conf/home/store/dag/actions.js b/escheduler-ui/src/js/conf/home/store/dag/actions.js index e756cfdff4..4426cfb719 100644 --- a/escheduler-ui/src/js/conf/home/store/dag/actions.js +++ b/escheduler-ui/src/js/conf/home/store/dag/actions.js @@ -383,6 +383,19 @@ export default { }) }) }, + /** + * Preview timing + */ + previewSchedule ({ state }, payload) { + return new Promise((resolve, reject) => { + io.post(`projects/${state.projectName}/schedule/preview`, payload, res => { + resolve(res.data) + //alert(res.data) + }).catch(e => { + reject(e) + }) + }) + }, /** * Timing list paging */