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