using Furion.DatabaseAccessor;
using Furion.Schedule;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FlexJobApi.Core
{
///
/// 定时任务-作业触发器
///
public class ScheduleJobTrigger : CommonEntity, IDbAuditLogIgnore
{
///
/// 作业触发器Id
///
public string TriggerId { get; set; }
///
/// 作业Id
///
public string JobId { get; set; }
///
/// 作业触发器类型,存储的是类型的 FullName
///
public string TriggerType { get; set; }
///
/// 作业触发器类型所在程序集,存储的是程序集 Name
///
public string AssemblyName { get; set; }
///
/// 作业触发器初始化参数,运行时将反序列化为 object[] 类型并作为构造函数参数
///
public string Args { get; set; }
///
/// 描述信息
///
public string Description { get; set; }
///
/// 作业触发器状态
///
public TriggerStatus Status { get; set; }
///
/// 起始时间
///
public DateTime? StartTime { get; set; }
///
/// 结束时间
///
public DateTime? EndTime { get; set; }
///
/// 最近运行时间
///
public DateTime? LastRunTime { get; set; }
///
/// 下一次运行时间
///
public DateTime? NextRunTime { get; set; }
///
/// 当前运行次数
///
public long NumberOfRuns { get; set; }
///
/// 最大触发次数,0:不限制,n:N 次
///
public long MaxNumberOfRuns { get; set; }
///
/// 出错次数
///
public long NumberOfErrors { get; set; }
///
/// 最大出错次数,0:不限制,n:N 次
///
public long MaxNumberOfErrors { get; set; }
///
/// 重试次数
///
public long NumRetries { get; set; }
///
/// 重试间隔时间,毫秒单位
///
public int RetryTimeout { get; set; }
///
/// 是否立即启动,设置 false 将手动启动
///
public bool StartNow { get; set; }
///
/// 是否启动时执行一次
/// 可通过 StartTime 控制起始时间
/// 若 StartTime 为 null 或小于当前时间,则在程序启动时执行
/// 否则在 StartTime 时间执行
///
public bool RunOnStart { get; set; }
///
/// 是否在启动时重置最大触发次数等于一次的作业
///
public bool ResetOnlyOnce { get; set; }
///
/// 本次执行结果
///
public string Result { get; set; }
///
/// 本次执行耗时
///
public long ElapsedTime { get; set; }
}
}