From 01d11d692684eb131b87bc1ff9c620b6c044f1ca Mon Sep 17 00:00:00 2001 From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com> Date: Wed, 21 Jan 2026 11:21:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AE=9A=E6=97=B6=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/monitor/job.js | 71 +++++ src/api/monitor/jobLog.js | 26 ++ src/api/monitor/online.js | 18 ++ src/views/system/job/index.vue | 513 +++++++++++++++++++++++++++++++++ src/views/system/job/log.vue | 295 +++++++++++++++++++ 5 files changed, 923 insertions(+) create mode 100644 src/api/monitor/job.js create mode 100644 src/api/monitor/jobLog.js create mode 100644 src/api/monitor/online.js create mode 100644 src/views/system/job/index.vue create mode 100644 src/views/system/job/log.vue diff --git a/src/api/monitor/job.js b/src/api/monitor/job.js new file mode 100644 index 0000000..101abec --- /dev/null +++ b/src/api/monitor/job.js @@ -0,0 +1,71 @@ +import request from '@/utils/request' + +// 查询定时任务调度列表 +export function listJob(query) { + return request({ + url: '/schedule/job/list', + method: 'get', + params: query + }) +} + +// 查询定时任务调度详细 +export function getJob(jobId) { + return request({ + url: '/schedule/job/' + jobId, + method: 'get' + }) +} + +// 新增定时任务调度 +export function addJob(data) { + return request({ + url: '/schedule/job', + method: 'post', + data: data + }) +} + +// 修改定时任务调度 +export function updateJob(data) { + return request({ + url: '/schedule/job/edit', + method: 'post', + data: data + }) +} + +// 删除定时任务调度 +export function delJob(jobId) { + return request({ + url: '/schedule/job/delete/' + jobId, + method: 'post' + }) +} + +// 任务状态修改 +export function changeJobStatus(jobId, status) { + const data = { + jobId, + status + } + return request({ + url: '/schedule/job/changeStatus', + method: 'post', + data: data + }) +} + + +// 定时任务立即执行一次 +export function runJob(jobId, jobGroup) { + const data = { + jobId, + jobGroup + } + return request({ + url: '/schedule/job/run', + method: 'post', + data: data + }) +} \ No newline at end of file diff --git a/src/api/monitor/jobLog.js b/src/api/monitor/jobLog.js new file mode 100644 index 0000000..40931cf --- /dev/null +++ b/src/api/monitor/jobLog.js @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 查询调度日志列表 +export function listJobLog(query) { + return request({ + url: '/schedule/job/log/list', + method: 'get', + params: query + }) +} + +// 删除调度日志 +export function delJobLog(jobLogId) { + return request({ + url: '/schedule/job/log/delete' + jobLogId, + method: 'post' + }) +} + +// 清空调度日志 +export function cleanJobLog() { + return request({ + url: '/schedule/job/log/clean', + method: 'post' + }) +} diff --git a/src/api/monitor/online.js b/src/api/monitor/online.js new file mode 100644 index 0000000..3d34fc4 --- /dev/null +++ b/src/api/monitor/online.js @@ -0,0 +1,18 @@ +import request from '@/utils/request' + +// 查询在线用户列表 +export function list(query) { + return request({ + url: '/system/online/list', + method: 'get', + params: query + }) +} + +// 强退用户 +export function forceLogout(tokenId) { + return request({ + url: '/system/online/delete/' + tokenId, + method: 'post' + }) +} diff --git a/src/views/system/job/index.vue b/src/views/system/job/index.vue new file mode 100644 index 0000000..ee8a981 --- /dev/null +++ b/src/views/system/job/index.vue @@ -0,0 +1,513 @@ + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + + + + 新增 + + + 修改 + + + 删除 + + + 导出 + + + 日志 + + + + + + + + + + + + + + + + + + + + + + + 修改 + 删除 + handleCommand(command, scope.row)" v-hasPermi="['monitor:job:changeStatus', 'monitor:job:query']"> + 更多 + + 执行一次 + 任务详细 + 调度日志 + + + + + + + + + + + + + + + + + + + + + + + + + + + + 调用方法 + + + Bean调用示例:ryTask.ryParams('ry') + Class类调用示例:com.bonus.quartz.task.RyTask.ryParams('ry') + 参数说明:支持字符串,布尔类型,长整型,浮点型,整型 + + + + + + + + + + + + + 生成表达式 + + + + + + + + + + {{dict.label}} + + + + + + + 立即执行 + 执行一次 + 放弃执行 + + + + + + + 允许 + 禁止 + + + + + + + + + + + + + + + + + + {{ form.jobId }} + {{ form.jobName }} + + + {{ jobGroupFormat(form) }} + {{ form.createTime }} + + + {{ form.cronExpression }} + + + {{ parseTime(form.nextValidTime) }} + + + {{ form.invokeTarget }} + + + + 正常 + 暂停 + + + + + 允许 + 禁止 + + + + + 默认策略 + 立即执行 + 执行一次 + 放弃执行 + + + + + + + + + + diff --git a/src/views/system/job/log.vue b/src/views/system/job/log.vue new file mode 100644 index 0000000..94cbf52 --- /dev/null +++ b/src/views/system/job/log.vue @@ -0,0 +1,295 @@ + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + + + + 删除 + + + 清空 + + + 导出 + + + 关闭 + + + + + + + + + + + + + + + + + + + + + + + {{ parseTime(scope.row.createTime) }} + + + + + 详细 + + + + + + + + + + + + {{ form.jobLogId }} + {{ form.jobName }} + + + {{ form.jobGroup }} + {{ form.createTime }} + + + {{ form.invokeTarget }} + + + {{ form.jobMessage }} + + + + 正常 + 失败 + + + + {{ form.exceptionInfo }} + + + + + + + + +