added batch delete schedules

This commit is contained in:
marvzhang
2020-07-18 12:48:09 +08:00
parent 04757bfe06
commit ed86ff4582
2 changed files with 51 additions and 9 deletions

View File

@@ -26,14 +26,13 @@ const actions = {
getScheduleList({ state, commit }) {
request.get('/schedules')
.then(response => {
if (response.data.data) {
commit('SET_SCHEDULE_LIST', response.data.data.map(d => {
const arr = d.cron.split(' ')
arr.splice(0, 1)
d.cron = arr.join(' ')
return d
}))
}
if (!response.data.data) response.data.data = []
commit('SET_SCHEDULE_LIST', response.data.data.map(d => {
const arr = d.cron.split(' ')
arr.splice(0, 1)
d.cron = arr.join(' ')
return d
}))
})
},
addSchedule({ state }) {

View File

@@ -235,18 +235,36 @@
>
{{ $t('Add Schedule') }}
</el-button>
<el-button
v-if="selectedSchedules.length > 0"
size="small"
type="danger"
icon="el-icon-delete"
class="btn-delete"
@click="onRemoveSelectedSchedules"
>
{{ $t('Remove') }}
</el-button>
</div>
</div>
<!--./filter-->
<!--table list-->
<el-table
ref="table"
:data="filteredTableData"
class="table"
height="500"
:header-cell-style="{background:'rgb(48, 65, 86)',color:'white'}"
border
row-key="_id"
@selection-change="onScheduleSelect"
>
<el-table-column
type="selection"
width="45"
align="center"
reserve-selection
/>
<template v-for="col in columns">
<el-table-column
v-if="col.name === 'status'"
@@ -394,6 +412,7 @@
isParametersVisible: false,
isViewTasksDialogVisible: false,
crawlConfirmDialogVisible: false,
selectedSchedules: [],
// tutorial
tourSteps: [
@@ -638,6 +657,27 @@
this.batchAddDialogVisible = true
this.$st.sendEv('定时任务', '点击批量添加定时任务')
},
onRemoveSelectedSchedules() {
this.$confirm(this.$t('Are you sure to delete selected items?'), this.$t('Notification'), {
confirmButtonText: this.$t('Confirm'),
cancelButtonText: this.$t('Cancel'),
type: 'warning'
}).then(async() => {
try {
const res = await this.$request.delete('/schedules', {
ids: this.selectedSchedules.map(d => d._id)
})
if (!res.data.error) {
this.$message.success('Deleted successfully')
this.$refs['table'].clearSelection()
await this.$store.dispatch('schedule/getScheduleList')
}
} finally {
// do nothing
}
this.$st.sendEv('定时任务', '批量删除定时任务')
})
},
isShowRun(row) {
},
async onEdit(row) {
@@ -750,6 +790,9 @@
setTimeout(() => {
this.$store.dispatch('schedule/getScheduleList')
}, 1000)
},
onScheduleSelect(schedules) {
this.selectedSchedules = schedules
}
}
}