添加项目文件。
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
using JNPF.Common.Filter;
|
||||
using JNPF.DependencyInjection;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Dto.TaskScheduler;
|
||||
|
||||
[SuppressSniffer]
|
||||
public class TaskLogInput : PageInputBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 执行结果.
|
||||
/// </summary>
|
||||
public int? runResult { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 开始时间.
|
||||
/// </summary>
|
||||
public long? startTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 结束时间.
|
||||
/// </summary>
|
||||
public long? endTime { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
using JNPF.DependencyInjection;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Dto.TaskScheduler;
|
||||
|
||||
[SuppressSniffer]
|
||||
public class TimeTaskCrInput
|
||||
{
|
||||
/// <summary>
|
||||
/// 任务名称.
|
||||
/// </summary>
|
||||
public string fullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行类型.
|
||||
/// </summary>
|
||||
public string executeType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注.
|
||||
/// </summary>
|
||||
public string description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行内容.
|
||||
/// </summary>
|
||||
public string executeContent { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序.
|
||||
/// </summary>
|
||||
public long? sortCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 编码.
|
||||
/// </summary>
|
||||
public string enCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 启用标识.
|
||||
/// </summary>
|
||||
public int? enabledMark { get; set; }
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
using JNPF.DependencyInjection;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Dto.TaskScheduler;
|
||||
|
||||
[SuppressSniffer]
|
||||
public class TimeTaskInfoOutput
|
||||
{
|
||||
/// <summary>
|
||||
/// 任务名称.
|
||||
/// </summary>
|
||||
public string fullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 任务类型(1-请求接口,2-存储过程).
|
||||
/// </summary>
|
||||
public string executeType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 功能描述.
|
||||
/// </summary>
|
||||
public string description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行内容.
|
||||
/// </summary>
|
||||
public string executeContent { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序.
|
||||
/// </summary>
|
||||
public long? sortCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 编码.
|
||||
/// </summary>
|
||||
public string enCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// id.
|
||||
/// </summary>
|
||||
public string id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行状态(1-正常,0-异常).
|
||||
/// </summary>
|
||||
public int? enabledMark { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
using JNPF.DependencyInjection;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Dto.TaskScheduler;
|
||||
|
||||
[SuppressSniffer]
|
||||
public class TimeTaskListOutput
|
||||
{
|
||||
/// <summary>
|
||||
/// 任务标题.
|
||||
/// </summary>
|
||||
public string fullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 任务编码.
|
||||
/// </summary>
|
||||
public string enCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行次数.
|
||||
/// </summary>
|
||||
public string runCount { get; set; } = "0";
|
||||
|
||||
/// <summary>
|
||||
/// 执行说明.
|
||||
/// </summary>
|
||||
public string description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 下次运行时间(时间戳).
|
||||
/// </summary>
|
||||
public DateTime? nextRunTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后执行时间(时间戳).
|
||||
/// </summary>
|
||||
public DateTime? lastRunTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// id.
|
||||
/// </summary>
|
||||
public string id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行状态(1-正常,0-异常).
|
||||
/// </summary>
|
||||
public int? enabledMark { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序.
|
||||
/// </summary>
|
||||
public long? sortCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 开始时间.
|
||||
/// </summary>
|
||||
public DateTime? startTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 结束时间.
|
||||
/// </summary>
|
||||
public DateTime? endTime { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
using JNPF.DependencyInjection;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Dto.TaskScheduler;
|
||||
|
||||
[SuppressSniffer]
|
||||
public class TimeTaskTaskLogListOutput
|
||||
{
|
||||
/// <summary>
|
||||
/// 执行说明.
|
||||
/// </summary>
|
||||
public string description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// id.
|
||||
/// </summary>
|
||||
public string id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行结果.
|
||||
/// </summary>
|
||||
public int runResult { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行时间.
|
||||
/// </summary>
|
||||
public DateTime? runTime { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
using JNPF.DependencyInjection;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Dto.TaskScheduler;
|
||||
|
||||
[SuppressSniffer]
|
||||
public class TimeTaskUpInput:TimeTaskCrInput
|
||||
{
|
||||
/// <summary>
|
||||
/// id.
|
||||
/// </summary>
|
||||
public string id { get; set; }
|
||||
}
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
using JNPF.Common.Const;
|
||||
using JNPF.Common.Contracts;
|
||||
using SqlSugar;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Entity;
|
||||
|
||||
/// <summary>
|
||||
/// 定时任务
|
||||
/// 版 本:V3.2
|
||||
/// 版 权:拓通智联科技有限公司(http://www.tuotong-tech.com)
|
||||
/// 日 期:2021-06-01 .
|
||||
/// </summary>
|
||||
[SugarTable("BASE_TIMETASK")]
|
||||
[Tenant(ClaimConst.TENANTID)]
|
||||
public class TimeTaskEntity : CLDEntityBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 任务编码.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_ENCODE")]
|
||||
public string EnCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 任务名称.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_FULLNAME")]
|
||||
public string FullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行类型:【0:Api 1:Sql 2:本地方法】.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_EXECUTETYPE")]
|
||||
public string ExecuteType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行内容.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_EXECUTECONTENT")]
|
||||
public string ExecuteContent { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行周期.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_EXECUTECYCLEJSON")]
|
||||
public string ExecuteCycleJson { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后运行时间.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_LASTRUNTIME")]
|
||||
public DateTime? LastRunTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 下次运行时间.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_NEXTRUNTIME")]
|
||||
public DateTime? NextRunTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 运行次数.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_RUNCOUNT")]
|
||||
public int? RunCount { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// 描述.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_DESCRIPTION")]
|
||||
public string Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序码.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_SORTCODE")]
|
||||
public long? SortCode { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using JNPF.Common.Const;
|
||||
using JNPF.Common.Contracts;
|
||||
using SqlSugar;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Entity;
|
||||
|
||||
/// <summary>
|
||||
/// 定时任务日志
|
||||
/// 版 本:V3.2
|
||||
/// 版 权:拓通智联科技有限公司(http://www.tuotong-tech.com)
|
||||
/// 日 期:2021-06-01 .
|
||||
/// </summary>
|
||||
[SugarTable("BASE_TIMETASKLOG")]
|
||||
[Tenant(ClaimConst.TENANTID)]
|
||||
public class TimeTaskLogEntity : EntityBase<string>
|
||||
{
|
||||
/// <summary>
|
||||
/// 定时任务主键.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_TASKID")]
|
||||
public string TaskId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行时间.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_RUNTIME")]
|
||||
public DateTime? RunTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行结果.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_RUNRESULT")]
|
||||
public int? RunResult { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行说明.
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "F_DESCRIPTION")]
|
||||
public string Description { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
namespace JNPF.TaskScheduler.Entitys.Enum
|
||||
{
|
||||
/// <summary>
|
||||
/// http请求类型.
|
||||
/// </summary>
|
||||
public enum RequestTypeEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// Api数据.
|
||||
/// </summary>
|
||||
Api = 1,
|
||||
|
||||
/// <summary>
|
||||
/// SQL操作.
|
||||
/// </summary>
|
||||
Sql = 2,
|
||||
|
||||
/// <summary>
|
||||
/// 执行本地任务.
|
||||
/// </summary>
|
||||
Run = 3,
|
||||
}
|
||||
}
|
||||
18
taskschedule/Tnb.TaskScheduler.Entitys/Mapper/Mapper.cs
Normal file
18
taskschedule/Tnb.TaskScheduler.Entitys/Mapper/Mapper.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using JNPF.Common.Extension;
|
||||
using JNPF.Common.Security;
|
||||
using JNPF.TaskScheduler.Entitys.Dto.TaskScheduler;
|
||||
using JNPF.TaskScheduler.Entitys.Entity;
|
||||
using JNPF.TaskScheduler.Entitys.Model;
|
||||
using Mapster;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Mapper;
|
||||
|
||||
public class Mapper : IRegister
|
||||
{
|
||||
public void Register(TypeAdapterConfig config)
|
||||
{
|
||||
config.ForType<TimeTaskEntity, TimeTaskListOutput>()
|
||||
.Map(dest => dest.startTime, src => src.ExecuteContent.ToObject<ContentModel>().startTime.ParseToLong().TimeStampToDateTime())
|
||||
.Map(dest => dest.endTime, src => src.ExecuteContent.ToObject<ContentModel>().endTime.IsNotEmptyOrNull() ? src.ExecuteContent.ToObject<ContentModel>().endTime.ParseToLong().TimeStampToDateTime() : new DateTime());
|
||||
}
|
||||
}
|
||||
82
taskschedule/Tnb.TaskScheduler.Entitys/Model/ContentModel.cs
Normal file
82
taskschedule/Tnb.TaskScheduler.Entitys/Model/ContentModel.cs
Normal file
@@ -0,0 +1,82 @@
|
||||
using JNPF.DependencyInjection;
|
||||
using SqlSugar;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Model;
|
||||
|
||||
[SuppressSniffer]
|
||||
public class ContentModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 表达式.
|
||||
/// </summary>
|
||||
public string cron { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// id.
|
||||
/// </summary>
|
||||
public string interfaceId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 接口名.
|
||||
/// </summary>
|
||||
public string interfaceName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 请求参数.
|
||||
/// </summary>
|
||||
public List<InterfaceParameter> parameter { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 当前用户TOKEN.
|
||||
/// </summary>
|
||||
public string Token { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 本地任务id.
|
||||
/// </summary>
|
||||
public string localHostTaskId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 租户ID.
|
||||
/// </summary>
|
||||
public string TenantId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 租户数据库名称.
|
||||
/// </summary>
|
||||
public string TenantDbName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 开始时间.
|
||||
/// </summary>
|
||||
public long? startTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 结束时间.
|
||||
/// </summary>
|
||||
public string endTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据库连接.
|
||||
/// </summary>
|
||||
public ConnectionConfigOptions ConnectionConfig { get; set; }
|
||||
}
|
||||
|
||||
[SuppressSniffer]
|
||||
public class InterfaceParameter
|
||||
{
|
||||
/// <summary>
|
||||
/// 字段.
|
||||
/// </summary>
|
||||
public string field { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 默认值.
|
||||
/// </summary>
|
||||
public string defaultValue { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 值.
|
||||
/// </summary>
|
||||
public string value { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
using JNPF.DependencyInjection;
|
||||
using JNPF.TaskScheduler.Entitys.Enum;
|
||||
|
||||
namespace JNPF.TaskScheduler.Entitys.Model;
|
||||
|
||||
[SuppressSniffer]
|
||||
public class TaskMethodInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// id.
|
||||
/// </summary>
|
||||
public string id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 方法名.
|
||||
/// </summary>
|
||||
public string MethodName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 方法所属类的Type对象.
|
||||
/// </summary>
|
||||
public Type DeclaringType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 任务名称.
|
||||
/// </summary>
|
||||
public string fullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 只执行一次.
|
||||
/// </summary>
|
||||
public bool DoOnce { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// 立即执行(默认等待启动).
|
||||
/// </summary>
|
||||
public bool StartNow { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// 执行类型(并行、列队).
|
||||
/// </summary>
|
||||
public SpareTimeExecuteTypes ExecuteType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 执行间隔时间(单位秒).
|
||||
/// </summary>
|
||||
public int Interval { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Cron表达式.
|
||||
/// </summary>
|
||||
public string cron { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 定时器类型.
|
||||
/// </summary>
|
||||
public SpareTimeTypes TimerType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 请求url.
|
||||
/// </summary>
|
||||
public string RequestUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 请求类型.
|
||||
/// </summary>
|
||||
/// <example>2.</example>
|
||||
public RequestTypeEnum RequestType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注.
|
||||
/// </summary>
|
||||
public string Remark { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="$(SolutionDir)\common.props" />
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
<GenerateDocumentationFile>False</GenerateDocumentationFile>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\common\Tnb.Common\Tnb.Common.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
Reference in New Issue
Block a user