You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

95 lines
2.8 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using Furion.TaskScheduler;
using SqlSugar;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
namespace Magic.Core.Entity;
/// <summary>
/// 定时任务
/// </summary>
[SugarTable("sys_timer")]
[Description("定时任务")]
public class SysTimer : DEntityBase
{
/// <summary>
/// 任务名称
/// </summary>
/// <example>magic</example>
[Required, MaxLength(20)]
[SugarColumn(ColumnDescription = "任务名称")]
public string JobName { get; set; }
/// <summary>
/// 只执行一次
/// </summary>
[SugarColumn(ColumnDescription = "只执行一次")]
public bool DoOnce { get; set; } = false;
/// <summary>
/// 立即执行(默认等待启动)
/// </summary>
[SugarColumn(ColumnDescription = "立即执行(默认等待启动)")]
public bool StartNow { get; set; } = false;
/// <summary>
/// 执行类型(并行、列队)
/// </summary>
[SugarColumn(ColumnDescription = "执行类型(并行、列队)")]
public SpareTimeExecuteTypes ExecuteType { get; set; } = SpareTimeExecuteTypes.Parallel;
/// <summary>
/// 执行间隔时间(单位秒)
/// </summary>
/// <example>5</example>
[SugarColumn(ColumnDescription = "执行间隔时间(单位秒)", IsNullable = true)]
public int? Interval { get; set; } = 5;
/// <summary>
/// Cron表达式
/// </summary>
/// <example></example>
[MaxLength(20)]
[SugarColumn(ColumnDescription = "Cron表达式", IsNullable = true)]
public string Cron { get; set; }
/// <summary>
/// 定时器类型
/// </summary>
[SugarColumn(ColumnDescription = "定时器类型")]
public SpareTimeTypes TimerType { get; set; } = SpareTimeTypes.Interval;
/// <summary>
/// 请求url
/// </summary>
[MaxLength(200)]
[SugarColumn(ColumnDescription = "请求url", IsNullable = true)]
public string RequestUrl { get; set; }
/// <summary>
/// 请求参数PostPut请求用
/// </summary>
[SugarColumn(ColumnDescription = "请求参数PostPut请求用", IsNullable = true)]
public string RequestParameters { get; set; }
/// <summary>
/// Headers(可以包含如Authorization授权认证)
/// 格式:{"Authorization":"userpassword.."}
/// </summary>
[SugarColumn(ColumnDescription = "Headers", IsNullable = true)]
public string Headers { get; set; }
/// <summary>
/// 请求类型
/// </summary>
/// <example>2</example>
[SugarColumn(ColumnDescription = "请求类型", IsNullable = true)]
public RequestTypeEnum RequestType { get; set; } = RequestTypeEnum.Post;
/// <summary>
/// 备注
/// </summary>
[MaxLength(100)]
[SugarColumn(ColumnDescription = "备注", IsNullable = true)]
public string Remark { get; set; }
}