定时任务新增更多操作

This commit is contained in:
RuoYi 2021-07-15 17:35:33 +08:00
parent 60abdf1dbc
commit b616a2f2e7
2 changed files with 65 additions and 11 deletions

View File

@ -115,17 +115,30 @@
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-caret-right" icon="el-icon-edit"
@click="handleRun(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['monitor:job:changeStatus']" v-hasPermi="['monitor:job:edit']"
>执行一次</el-button> >修改</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-view" icon="el-icon-delete"
@click="handleView(scope.row)" @click="handleDelete(scope.row)"
v-hasPermi="['monitor:job:query']" v-hasPermi="['monitor:job:remove']"
>详细</el-button> >删除</el-button>
<el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)">
<span class="el-dropdown-link">
<i class="el-icon-d-arrow-right el-icon--right"></i>更多
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="handleRun" icon="el-icon-caret-right"
v-hasPermi="['monitor:job:changeStatus']">执行一次</el-dropdown-item>
<el-dropdown-item command="handleView" icon="el-icon-view"
v-hasPermi="['monitor:job:query']">任务详细</el-dropdown-item>
<el-dropdown-item command="handleJobLog" icon="el-icon-s-operation"
v-hasPermi="['monitor:job:query']">调度日志</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -385,6 +398,22 @@ export default {
this.single = selection.length != 1; this.single = selection.length != 1;
this.multiple = !selection.length; this.multiple = !selection.length;
}, },
//
handleCommand(command, row) {
switch (command) {
case "handleRun":
this.handleRun(row);
break;
case "handleView":
this.handleView(row);
break;
case "handleJobLog":
this.handleJobLog(row);
break;
default:
break;
}
},
// //
handleStatusChange(row) { handleStatusChange(row) {
let text = row.status === "0" ? "启用" : "停用"; let text = row.status === "0" ? "启用" : "停用";
@ -420,8 +449,9 @@ export default {
}); });
}, },
/** 任务日志列表查询 */ /** 任务日志列表查询 */
handleJobLog() { handleJobLog(row) {
this.$router.push("/job/log"); const jobId = row.jobId || 0;
this.$router.push({ path: '/job/log', query: { jobId: jobId } })
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
handleAdd() { handleAdd() {

View File

@ -94,6 +94,15 @@
v-hasPermi="['monitor:job:export']" v-hasPermi="['monitor:job:export']"
>导出</el-button> >导出</el-button>
</el-col> </el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-close"
size="mini"
@click="handleClose"
>关闭</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
@ -168,6 +177,7 @@
</template> </template>
<script> <script>
import { getJob} from "@/api/monitor/job";
import { listJobLog, delJobLog, exportJobLog, cleanJobLog } from "@/api/monitor/jobLog"; import { listJobLog, delJobLog, exportJobLog, cleanJobLog } from "@/api/monitor/jobLog";
export default { export default {
@ -209,7 +219,16 @@ export default {
}; };
}, },
created() { created() {
const jobId = this.$route.query.jobId;
if (jobId !== undefined && jobId != 0) {
getJob(jobId).then(response => {
this.queryParams.jobName = response.data.jobName;
this.queryParams.jobGroup = response.data.jobGroup;
this.getList(); this.getList();
});
} else {
this.getList();
}
this.getDicts("sys_job_status").then(response => { this.getDicts("sys_job_status").then(response => {
this.statusOptions = response.data; this.statusOptions = response.data;
}); });
@ -236,6 +255,11 @@ export default {
jobGroupFormat(row, column) { jobGroupFormat(row, column) {
return this.selectDictLabel(this.jobGroupOptions, row.jobGroup); return this.selectDictLabel(this.jobGroupOptions, row.jobGroup);
}, },
//
handleClose() {
this.$store.dispatch("tagsView/delView", this.$route);
this.$router.push({ path: "/monitor/job" });
},
/** 搜索按钮操作 */ /** 搜索按钮操作 */
handleQuery() { handleQuery() {
this.queryParams.pageNum = 1; this.queryParams.pageNum = 1;