feat(job): 新增定时任务核心模型和数据访问层

- 添加SysJob实体类,支持雪花ID和定时任务基本属性
- 新增SysJobBo业务对象,用于前后端数据传输
- 添加SysJobVo视图对象,用于前端数据展示
- 实现SysJobMapper数据访问接口,提供CRUD操作
This commit is contained in:
Leo 2025-09-27 14:20:19 +08:00
parent 87c7e593df
commit 4f257cd87c
3 changed files with 152 additions and 0 deletions

View File

@ -0,0 +1,73 @@
package org.leocoder.thin.domain.model.bo.system;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import java.io.Serializable;
/**
* @author Leocoder
* @description [定时任务业务对象]
*/
@Data
public class SysJobBo implements Serializable {
/**
* 任务ID
*/
private Long jobId;
/**
* 任务名称
*/
@NotBlank(message = "任务名称不能为空")
private String jobName;
/**
* 任务类型[1-管理平台 2-小程序 3-App]
*/
@NotBlank(message = "任务类型不能为空")
private String jobType;
/**
* 类路径
*/
@NotBlank(message = "类路径不能为空")
private String classPath;
/**
* 方法名称
*/
@NotBlank(message = "方法名称不能为空")
private String methodName;
/**
* cron执行表达式
*/
@NotBlank(message = "cron执行表达式不能为空")
private String cronExpression;
/**
* cron计划策略[1-立即执行 2-执行一次 3-放弃执行]
*/
@NotBlank(message = "cron计划策略不能为空")
private String policyStatus;
/**
* 任务状态 [0正常 1暂停]
*/
@NotBlank(message = "任务状态不能为空")
private String jobStatus;
/**
* 任务参数
*/
private String jobParams;
/**
* 任务备注
*/
private String remark;
}

View File

@ -0,0 +1,65 @@
package org.leocoder.thin.domain.model.vo.system;
import org.leocoder.thin.domain.model.vo.base.BaseVo;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* @author Leocoder
* @description [定时任务查询视图对象]
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class SysJobVo extends BaseVo {
/**
* 主键ID
*/
private Long jobId;
/**
* 任务名称
*/
private String jobName;
/**
* 任务类型[1-管理平台 2-小程序 3-App]
*/
private String jobType;
/**
* cron执行表达式
*/
private String cronExpression;
/**
* cron计划策略[1-立即执行 2-执行一次 3-放弃执行]
*/
private String policyStatus;
/**
* 任务状态 [0正常 1暂停]
*/
private String jobStatus;
/**
* 任务参数
*/
private String jobParams;
/**
* 类路径
*/
private String classPath;
/**
* 方法名称
*/
private String methodName;
/**
* 参数备注
*/
private String remark;
}

View File

@ -0,0 +1,14 @@
package org.leocoder.thin.mybatisplus.mapper.system;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.leocoder.thin.domain.pojo.system.SysJob;
/**
* @author Leocoder
* @description [定时任务数据访问层]
*/
@Mapper
public interface SysJobMapper extends BaseMapper<SysJob> {
}