From a1cc230f76d2816f6d58531391881f02fe3d1550 Mon Sep 17 00:00:00 2001 From: "WANGFAN\\wangf" <15871339963@163.com> Date: Sun, 13 Apr 2025 15:07:54 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BB=BB=E5=8A=A1=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/modules/monitor/index.ts | 13 +- src/lang/modules/enUS.ts | 3 +- src/lang/modules/zhCN.ts | 3 +- src/layout/components/Main/index.vue | 4 + src/mock/_data/monitor_data.ts | 37 ++++- src/mock/_data/system_data.ts | 14 +- src/mock/_data/system_menu.ts | 149 +++--------------- src/mock/monitor/index.ts | 18 ++- src/views/monitor/crontab-logs/index.vue | 121 ++++++++++++++ .../monitor/{cron-job => crontab}/index.vue | 41 +++-- src/views/monitor/onlineuser/index.vue | 2 +- src/views/multilevel/third/third-4.vue | 11 -- src/views/multilevel/third/third-5.vue | 11 -- src/views/multilevel/third/third-6.vue | 11 -- src/views/multilevel/third/third-7.vue | 11 -- src/views/multilevel/third/third-8.vue | 11 -- src/views/multilevel/third/third-9.vue | 11 -- src/views/system/account/account.vue | 2 +- src/views/system/division/division.vue | 2 +- src/views/system/role/role.vue | 2 +- 20 files changed, 249 insertions(+), 228 deletions(-) create mode 100644 src/views/monitor/crontab-logs/index.vue rename src/views/monitor/{cron-job => crontab}/index.vue (93%) delete mode 100644 src/views/multilevel/third/third-4.vue delete mode 100644 src/views/multilevel/third/third-5.vue delete mode 100644 src/views/multilevel/third/third-6.vue delete mode 100644 src/views/multilevel/third/third-7.vue delete mode 100644 src/views/multilevel/third/third-8.vue delete mode 100644 src/views/multilevel/third/third-9.vue diff --git a/src/api/modules/monitor/index.ts b/src/api/modules/monitor/index.ts index fd73abc..34958eb 100644 --- a/src/api/modules/monitor/index.ts +++ b/src/api/modules/monitor/index.ts @@ -9,9 +9,18 @@ export const getOnlineuserAPI = () => { }; // 获取定时任务 -export const getCronJobAPI = () => { +export const getCrontabAPI = () => { return axios({ - url: "/mock/monitor/getCronJob", + url: "/mock/monitor/getCrontab", method: "get" }); }; + +// 获取定时任务日志 +export const getCrontabLogsAPI = (params: any) => { + return axios({ + url: "/mock/monitor/getCrontabLogs", + method: "get", + params + }); +}; diff --git a/src/lang/modules/enUS.ts b/src/lang/modules/enUS.ts index 7cc7258..3cea9ca 100644 --- a/src/lang/modules/enUS.ts +++ b/src/lang/modules/enUS.ts @@ -92,7 +92,8 @@ export default { ["hide-menu"]: "hide-menu", ["system-monitor"]: "system monitor", ["onlineuser"]: "online user", - ["cron-job"]: "cron job", + ["crontab"]: "crontab", + ["crontab-logs"]: "crontab logs", ["i18n"]: "i18n", ["amap"]: "amap", ["permission"]: "permission", diff --git a/src/lang/modules/zhCN.ts b/src/lang/modules/zhCN.ts index 71617a1..d1ad4a4 100644 --- a/src/lang/modules/zhCN.ts +++ b/src/lang/modules/zhCN.ts @@ -92,7 +92,8 @@ export default { ["hide-menu"]: "隐藏菜单", ["system-monitor"]: "系统监控", ["onlineuser"]: "在线用户", - ["cron-job"]: "定时任务", + ["crontab"]: "定时任务", + ["crontab-logs"]: "任务日志", ["i18n"]: "国际化", ["amap"]: "高德地图", ["permission"]: "权限测试", diff --git a/src/layout/components/Main/index.vue b/src/layout/components/Main/index.vue index acd41b4..9bfcc28 100644 --- a/src/layout/components/Main/index.vue +++ b/src/layout/components/Main/index.vue @@ -23,6 +23,10 @@ let { refreshPage, isTabs, watermark, watermarkStyle, watermarkRotate, watermark const routerStore = useRoutesConfigStore(); const { cacheRoutes } = storeToRefs(routerStore); +// setInterval(() => { +// console.log("缓存在这里", cacheRoutes.value); +// }, 2000); + // 水印配置 const watermarkConfig = computed(() => { return { diff --git a/src/mock/_data/monitor_data.ts b/src/mock/_data/monitor_data.ts index 57ad748..cf9de00 100644 --- a/src/mock/_data/monitor_data.ts +++ b/src/mock/_data/monitor_data.ts @@ -25,16 +25,15 @@ export const onlineuser = [ ]; // 定时任务 -export const cronJob = [ +export const crontab = [ { id: 1, - jobId: "9e1f42c8-b127-449b-b0a4-d53c60b79e75", // 任务编号 name: "cron任务,5秒执行一次", // 任务名称 cron: "0/5 * * * * * ", // cron-执行规则 every: null, // 间隔时间秒-执行规则 service: "taskDemoService.test()", // 执行服务 - startDate: "2024-06-30 11:28:35", // 开始时间 - nextRunTime: "2025-04-13 11:20:50", // 下次执行时间 + startDate: "2025-03-30 11:28:35", // 开始时间 + nextRunTime: "2025-03-13 11:20:50", // 下次执行时间 taskType: 0, // 任务类型 0 cron 1 指定时间(秒) misfirePolicy: 1, // 执行策略 1 循环 2 执行一次 remark: "这是定时任务", // 备注 @@ -46,13 +45,12 @@ export const cronJob = [ }, { id: 2, - jobId: "9e1f42c8-b127-449b-b0a4-d53c60b79e76", name: "每秒执行一次", cron: null, - every: 1000, + every: 1, service: "taskDemoService.test(1,2)", - startDate: "2024-06-30 11:28:35", - nextRunTime: "2025-04-13 11:20:50", + startDate: "2025-03-30 11:28:35", + nextRunTime: "2025-03-13 11:20:50", taskType: 1, misfirePolicy: 1, remark: "这是定时任务", @@ -63,3 +61,26 @@ export const cronJob = [ updateTime: null } ]; + +// 任务日志 +export const crontabLogs = [ + { + id: 1, + taskId: 1, + taskName: "cron任务,5秒执行一次", + status: 1, + remark: "", + createTime: "2025-03-30 11:28:35", + executionTime: "2025-03-30 11:28:35" + }, + { + id: 2, + taskId: 2, + taskName: "每秒执行一次", + status: 0, + remark: + "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ', `_isUTC` = false, `_pf` = '[object Object]', `_locale` = '[object Object]', `_' at line 1", + createTime: "2025-03-30 11:28:35", + executionTime: "2025-03-30 11:28:35" + } +]; diff --git a/src/mock/_data/system_data.ts b/src/mock/_data/system_data.ts index 30fd1e2..1818ca5 100644 --- a/src/mock/_data/system_data.ts +++ b/src/mock/_data/system_data.ts @@ -167,7 +167,7 @@ export const dictData = [ name: "状态", code: "status", status: 1, - description: "想要统一状态字段可以用这个", + description: "状态字段可以用这个", createTime: "2024-07-01 10:00:00", list: [ { id: "021", name: "禁用", value: 0, status: 1 }, @@ -189,6 +189,18 @@ export const dictData = [ { id: "035", name: "普通职员", value: 5, status: 1 }, { id: "036", name: "其它", value: 999, status: 1 } ] + }, + { + id: "04", + name: "任务状态", + code: "taskStatus", + status: 1, + description: "任务状态字段可以用它", + createTime: "2024-07-01 10:00:00", + list: [ + { id: "041", name: "失败", value: 0, status: 1 }, + { id: "042", name: "成功", value: 1, status: 1 } + ] } ]; diff --git a/src/mock/_data/system_menu.ts b/src/mock/_data/system_menu.ts index 4a0cf46..4367317 100644 --- a/src/mock/_data/system_menu.ts +++ b/src/mock/_data/system_menu.ts @@ -359,126 +359,6 @@ export const systemMenu = [ }, children: null }, - { - id: "050204", - parentId: "0502", - path: "/multilevel/third-4", - name: "third-4", - component: "multilevel/third/third-4", - meta: { - title: "third-4", - link: "", - hide: false, - keepAlive: true, - affix: false, - iframe: false, - roles: ["admin"], - icon: "icon-menu", - sort: 4, - type: 2 - }, - children: null - }, - { - id: "050205", - parentId: "0502", - path: "/multilevel/third-5", - name: "third-5", - component: "multilevel/third/third-5", - meta: { - title: "third-5", - link: "", - hide: false, - keepAlive: true, - affix: false, - iframe: false, - roles: ["admin"], - icon: "icon-menu", - sort: 5, - type: 2 - }, - children: null - }, - { - id: "050206", - parentId: "0502", - path: "/multilevel/third-6", - name: "third-6", - component: "multilevel/third/third-6", - meta: { - title: "third-6", - link: "", - hide: false, - keepAlive: true, - affix: false, - iframe: false, - roles: ["admin"], - icon: "icon-menu", - sort: 6, - type: 2 - }, - children: null - }, - { - id: "050207", - parentId: "0502", - path: "/multilevel/third-7", - name: "third-7", - component: "multilevel/third/third-7", - meta: { - title: "third-7", - link: "", - hide: false, - keepAlive: true, - affix: false, - iframe: false, - roles: ["admin"], - icon: "icon-menu", - sort: 7, - type: 2 - }, - children: null - }, - { - id: "050208", - parentId: "0502", - path: "/multilevel/third-8", - name: "third-8", - component: "multilevel/third/third-8", - meta: { - title: "third-8", - link: "", - hide: false, - keepAlive: true, - affix: false, - iframe: false, - roles: ["admin"], - icon: "icon-menu", - sort: 8, - type: 2 - }, - children: null - }, - { - id: "050209", - parentId: "0502", - path: "/multilevel/third-9", - name: "third-9", - component: "multilevel/third/third-9", - meta: { - title: "third-9", - link: "", - hide: false, - keepAlive: true, - affix: false, - iframe: false, - roles: ["admin"], - icon: "icon-menu", - sort: 9, - type: 2 - }, - children: null - }, { id: "06", parentId: "0", @@ -1427,11 +1307,11 @@ export const systemMenu = [ { id: "1402", parentId: "14", - path: "/monitor/cron-job", - name: "cron-job", - component: "monitor/cron-job/index", + path: "/monitor/crontab", + name: "crontab", + component: "monitor/crontab/index", meta: { - title: "cron-job", + title: "crontab", hide: false, keepAlive: true, disable: false, @@ -1445,6 +1325,27 @@ export const systemMenu = [ }, children: null }, + { + id: "1403", + parentId: "14", + path: "/monitor/crontab-logs", + name: "crontab-logs", + component: "monitor/crontab-logs/index", + meta: { + title: "crontab-logs", + hide: false, + keepAlive: true, + disable: false, + affix: false, + link: "", + iframe: false, + roles: ["admin"], + icon: "icon-menu", + sort: 3, + type: 2 + }, + children: null + }, { id: "15", parentId: "0", diff --git a/src/mock/monitor/index.ts b/src/mock/monitor/index.ts index a7b2a7f..a08d909 100644 --- a/src/mock/monitor/index.ts +++ b/src/mock/monitor/index.ts @@ -1,10 +1,10 @@ import type { MockMethod } from "vite-plugin-mock"; import { resultSuccess } from "../_utils"; -import { onlineuser, cronJob } from "../_data/monitor_data"; +import { onlineuser, crontab, crontabLogs } from "../_data/monitor_data"; /** * post请求body,get请求query * /mock/monitor/getOnlineuser 获取在线用户 - * /mock/monitor/getCronJob 定时任务 + * /mock/monitor/getCrontab 定时任务 */ export default [ { @@ -16,11 +16,21 @@ export default [ } }, { - url: "/mock/monitor/getCronJob", + url: "/mock/monitor/getCrontab", method: "get", timeout: 300, response: () => { - return resultSuccess(cronJob); + return resultSuccess(crontab); + } + }, + { + url: "/mock/monitor/getCrontabLogs", + method: "get", + timeout: 300, + response: ({ query }: any) => { + console.log("请求参数", query); + + return resultSuccess(crontabLogs); } } ] as MockMethod[]; diff --git a/src/views/monitor/crontab-logs/index.vue b/src/views/monitor/crontab-logs/index.vue new file mode 100644 index 0000000..d5f917a --- /dev/null +++ b/src/views/monitor/crontab-logs/index.vue @@ -0,0 +1,121 @@ + + + + + diff --git a/src/views/monitor/cron-job/index.vue b/src/views/monitor/crontab/index.vue similarity index 93% rename from src/views/monitor/cron-job/index.vue rename to src/views/monitor/crontab/index.vue index fd10333..c1b81c2 100644 --- a/src/views/monitor/cron-job/index.vue +++ b/src/views/monitor/crontab/index.vue @@ -6,6 +6,7 @@ {{ item.name }} + 查询 @@ -45,7 +46,7 @@ 间隔时间: {{ record.every }} 秒 - +