Compare commits

...

2 Commits

Author SHA1 Message Date
Leo
608eaf9145 feat(monitor): 实现定时任务管理页面组件
- 创建完整的定时任务管理界面,支持表格展示和分页
- 实现新增、编辑、删除、启动、停止等核心功能
- 添加批量操作支持(批量启动、停止、删除)
- 集成字典数据显示任务类型、状态、执行策略
- 提供Cron表达式预设选择弹框,优化用户体验
- 实现搜索和筛选功能
- 遵循项目UI规范和组件使用标准
2025-09-27 14:23:55 +08:00
Leo
ce27ddafff feat(monitor): 新增定时任务管理API接口层
- 添加SysJobVo、SysJobQueryBo、SysJobForm等TypeScript类型定义
- 实现完整的定时任务CRUD API接口
- 支持分页查询、状态更新、立即执行等操作
- 提供getSysJobListPage、addSysJob、updateSysJob等核心接口
- 遵循项目API设计规范和命名约定
2025-09-27 14:22:35 +08:00
3 changed files with 1205 additions and 0 deletions

View File

@ -0,0 +1,77 @@
import { request } from '@/service/http'
import type {
PageSysJobVo,
SysJobForm,
SysJobQueryBo,
SysJobSearchForm,
SysJobVo,
} from './types'
// 重新导出类型定义
export type { PageSysJobVo, SysJobForm, SysJobQueryBo, SysJobSearchForm, SysJobVo }
/**
*
*/
export function getSysJobListPage(params: SysJobQueryBo) {
return request.Get<Service.ResponseResult<PageSysJobVo>>('/coder/sysJob/listPage', { params })
}
/**
*
*/
export function getSysJobList(params?: SysJobQueryBo) {
return request.Get<Service.ResponseResult<SysJobVo[]>>('/coder/sysJob/list', { params })
}
/**
* ID查询定时任务详情
*/
export function getSysJobById(id: string) {
return request.Get<Service.ResponseResult<SysJobVo>>(`/coder/sysJob/getById/${id}`)
}
/**
*
*/
export function addSysJob(data: SysJobForm) {
return request.Post<Service.ResponseResult<string>>('/coder/sysJob/add', data)
}
/**
*
*/
export function updateSysJob(data: SysJobForm) {
return request.Post<Service.ResponseResult<string>>('/coder/sysJob/update', data)
}
/**
*
*/
export function deleteSysJobById(id: string) {
return request.Post<Service.ResponseResult<string>>(`/coder/sysJob/deleteById/${id}`)
}
/**
*
*/
export function batchDeleteSysJob(jobIds: string[]) {
return request.Post<Service.ResponseResult<string>>('/coder/sysJob/batchDelete', jobIds)
}
/**
*
* @param id ID
* @param jobStatus [0 1]
* @param policyStatus [1- 2- 3-]
*/
export function updateSysJobStatus(id: string, jobStatus: string, policyStatus: string) {
return request.Post<Service.ResponseResult<string>>(`/coder/sysJob/updateStatus/${id}/${jobStatus}/${policyStatus}`)
}
/**
*
*/
export function runSysJobNow(id: string) {
return request.Get<Service.ResponseResult<string>>(`/coder/sysJob/runNow/${id}`)
}

View File

@ -0,0 +1,102 @@
/**
* -
*/
/**
*
*/
export interface SysJobVo {
/** 任务ID */
jobId: string
/** 任务名称 */
jobName: string
/** 任务类型[1-管理平台 2-小程序 3-App] */
jobType: string
/** 类路径 */
classPath: string
/** 方法名称 */
methodName: string
/** cron执行表达式 */
cronExpression: string
/** cron计划策略[1-立即执行 2-执行一次 3-放弃执行] */
policyStatus: string
/** 任务状态[0正常 1暂停] */
jobStatus: string
/** 任务参数 */
jobParams?: string
/** 任务备注 */
remark?: string
/** 创建者 */
createBy?: string
/** 创建时间 */
createTime?: string
/** 更新者 */
updateBy?: string
/** 更新时间 */
updateTime?: string
}
/**
*
*/
export interface SysJobQueryBo {
/** 页码 */
pageNo?: number
/** 页大小 */
pageSize?: number
/** 任务名称 */
jobName?: string
/** 任务类型 */
jobType?: string
/** 任务状态 */
jobStatus?: string
}
/**
*
*/
export interface SysJobSearchForm {
/** 任务名称 */
jobName?: string
/** 任务类型 */
jobType?: string
/** 任务状态 */
jobStatus?: string
}
/**
*
*/
export interface SysJobForm {
/** 任务ID */
jobId?: string
/** 任务名称 */
jobName: string
/** 任务类型[1-管理平台 2-小程序 3-App] */
jobType: string
/** 类路径 */
classPath: string
/** 方法名称 */
methodName: string
/** cron执行表达式 */
cronExpression: string
/** cron计划策略[1-立即执行 2-执行一次 3-放弃执行] */
policyStatus: string
/** 任务状态[0正常 1暂停] */
jobStatus: string
/** 任务参数 */
jobParams?: string
/** 任务备注 */
remark?: string
}
/**
*
*/
export interface PageSysJobVo {
records: SysJobVo[]
total: number
size: number
current: number
pages: number
}

File diff suppressed because it is too large Load Diff