优化定时任务,移除Snowflake.Core包

This commit is contained in:
不做码农 2022-10-19 08:20:11 +08:00
parent 94c97edcfe
commit b52eaa6ae7
11 changed files with 35 additions and 41 deletions

View File

@ -14,7 +14,6 @@ using ZR.Model.System.Dto;
using ZR.Model.System; using ZR.Model.System;
using ZR.Service.System.IService; using ZR.Service.System.IService;
using ZR.Tasks; using ZR.Tasks;
using Snowflake.Core;
using Infrastructure.Extensions; using Infrastructure.Extensions;
namespace ZR.Admin.WebApi.Controllers namespace ZR.Admin.WebApi.Controllers
@ -46,7 +45,7 @@ namespace ZR.Admin.WebApi.Controllers
public IActionResult Query([FromQuery] TasksQueryDto parm, [FromQuery] PagerInfo pager) public IActionResult Query([FromQuery] TasksQueryDto parm, [FromQuery] PagerInfo pager)
{ {
//开始拼装查询条件 //开始拼装查询条件
var predicate = Expressionable.Create<SysTasksQz>(); var predicate = Expressionable.Create<SysTasks>();
predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.QueryText), predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.QueryText),
m => m.Name.Contains(parm.QueryText) || m => m.Name.Contains(parm.QueryText) ||
@ -100,10 +99,9 @@ namespace ZR.Admin.WebApi.Controllers
throw new CustomException($"程序集或者类名不能为空"); throw new CustomException($"程序集或者类名不能为空");
} }
//从 Dto 映射到 实体 //从 Dto 映射到 实体
var tasksQz = parm.Adapt<SysTasksQz>().ToCreate(); var tasksQz = parm.Adapt<SysTasks>().ToCreate();
var worker = new IdWorker(1, 1);
tasksQz.Create_by = HttpContext.GetName(); tasksQz.Create_by = HttpContext.GetName();
tasksQz.ID = worker.NextId().ToString(); tasksQz.ID = SnowFlakeSingle.Instance.NextId().ToString();
return SUCCESS(_tasksQzService.AddTasks(tasksQz)); return SUCCESS(_tasksQzService.AddTasks(tasksQz));
} }
@ -144,7 +142,7 @@ namespace ZR.Admin.WebApi.Controllers
{ {
throw new CustomException($"该任务正在运行中,请先停止在更新"); throw new CustomException($"该任务正在运行中,请先停止在更新");
} }
var model = parm.Adapt<SysTasksQz>(); var model = parm.Adapt<SysTasks>();
model.Update_by = HttpContextExtension.GetName(HttpContext); model.Update_by = HttpContextExtension.GetName(HttpContext);
int response = _tasksQzService.UpdateTasks(model); int response = _tasksQzService.UpdateTasks(model);
if (response > 0) if (response > 0)

View File

@ -3,8 +3,6 @@ using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using Quartz.Spi; using Quartz.Spi;
using System; using System;
using System.Threading.Tasks;
using ZR.Service.System.IService;
using ZR.Tasks; using ZR.Tasks;
namespace ZR.Admin.WebApi.Extensions namespace ZR.Admin.WebApi.Extensions
@ -38,7 +36,7 @@ namespace ZR.Admin.WebApi.Extensions
ITaskSchedulerServer _schedulerServer = app.ApplicationServices.GetRequiredService<ITaskSchedulerServer>(); ITaskSchedulerServer _schedulerServer = app.ApplicationServices.GetRequiredService<ITaskSchedulerServer>();
//var tasks = _tasksQzService.GetList(m => m.IsStart); //var tasks = _tasksQzService.GetList(m => m.IsStart);
var tasks = SqlSugar.IOC.DbScoped.SugarScope.Queryable<Model.System.SysTasksQz>().Where(m => m.IsStart).ToList(); var tasks = SqlSugar.IOC.DbScoped.SugarScope.Queryable<Model.System.SysTasks>().Where(m => m.IsStart).ToList();
//程序启动后注册所有定时任务 //程序启动后注册所有定时任务
foreach (var task in tasks) foreach (var task in tasks)

View File

@ -32,7 +32,6 @@
<PackageReference Include="Mapster" Version="7.3.0" /> <PackageReference Include="Mapster" Version="7.3.0" />
<PackageReference Include="EPPlus" Version="6.0.5" /> <PackageReference Include="EPPlus" Version="6.0.5" />
<PackageReference Include="Hei.Captcha" Version="0.3.0" /> <PackageReference Include="Hei.Captcha" Version="0.3.0" />
<PackageReference Include="Snowflake.Core" Version="2.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View File

@ -125,12 +125,12 @@ namespace ZR.Model.System.Dto
public class TasksUpdateDto public class TasksUpdateDto
{ {
/// <summary> /// <summary>
/// 描述 : UID /// 描述 : 任务id
/// 空值 : False /// 空值 : False
/// 默认 : /// 默认 :
/// </summary> /// </summary>
[Display(Name = "UID")] [Display(Name = "任务id")]
[Required(ErrorMessage = "UID不能为空")] [Required(ErrorMessage = "任务不能为空")]
public string ID { get; set; } public string ID { get; set; }
/// <summary> /// <summary>

View File

@ -10,18 +10,19 @@ namespace ZR.Model.System
///</summary> ///</summary>
[SugarTable("sys_tasks")] [SugarTable("sys_tasks")]
[Tenant("0")] [Tenant("0")]
public class SysTasksQz public class SysTasks
{ {
public SysTasksQz() public SysTasks()
{ {
} }
/// <summary> /// <summary>
/// 描述 : UID /// 描述 : 任务id
/// 空值 : False /// 空值 : False
/// 默认 : /// 默认 :
/// </summary> /// </summary>
[Display(Name = "UID")] [Display(Name = "任务id")]
//[JsonConverter(typeof(ValueToStringConverter))]
[SugarColumn(IsPrimaryKey = true)] [SugarColumn(IsPrimaryKey = true)]
public string ID { get; set; } public string ID { get; set; }

View File

@ -1,8 +1,6 @@
using OfficeOpenXml.Attributes; using OfficeOpenXml.Attributes;
using SqlSugar; using SqlSugar;
using System; using System;
using System.Collections.Generic;
using System.Text;
namespace ZR.Model.System namespace ZR.Model.System
{ {

View File

@ -3,10 +3,10 @@ using ZR.Model.System.Dto;
namespace ZR.Service.System.IService namespace ZR.Service.System.IService
{ {
public interface ISysTasksQzService : IBaseService<SysTasksQz> public interface ISysTasksQzService : IBaseService<SysTasks>
{ {
//SysTasksQz GetId(object id); //SysTasksQz GetId(object id);
int AddTasks(SysTasksQz parm); int AddTasks(SysTasks parm);
int UpdateTasks(SysTasksQz parm); int UpdateTasks(SysTasks parm);
} }
} }

View File

@ -10,14 +10,14 @@ namespace ZR.Service.System
/// 定时任务 /// 定时任务
/// </summary> /// </summary>
[AppService(ServiceType = typeof(ISysTasksQzService), ServiceLifetime = LifeTime.Transient)] [AppService(ServiceType = typeof(ISysTasksQzService), ServiceLifetime = LifeTime.Transient)]
public class SysTasksQzService : BaseService<SysTasksQz>, ISysTasksQzService public class SysTasksQzService : BaseService<SysTasks>, ISysTasksQzService
{ {
/// <summary> /// <summary>
/// 添加任务 /// 添加任务
/// </summary> /// </summary>
/// <param name="parm"></param> /// <param name="parm"></param>
/// <returns></returns> /// <returns></returns>
public int AddTasks(SysTasksQz parm) public int AddTasks(SysTasks parm)
{ {
parm.IsStart = false; parm.IsStart = false;
@ -34,9 +34,9 @@ namespace ZR.Service.System
/// </summary> /// </summary>
/// <param name="parm"></param> /// <param name="parm"></param>
/// <returns></returns> /// <returns></returns>
public int UpdateTasks(SysTasksQz parm) public int UpdateTasks(SysTasks parm)
{ {
return Update(f => f.ID == parm.ID, f => new SysTasksQz return Update(f => f.ID == parm.ID, f => new SysTasks
{ {
ID = parm.ID, ID = parm.ID,
Name = parm.Name, Name = parm.Name,

View File

@ -13,16 +13,16 @@ namespace ZR.Tasks
Task<ApiResult> StopTaskScheduleAsync(); Task<ApiResult> StopTaskScheduleAsync();
Task<ApiResult> AddTaskScheduleAsync(SysTasksQz tasksQz); Task<ApiResult> AddTaskScheduleAsync(SysTasks tasksQz);
Task<ApiResult> PauseTaskScheduleAsync(SysTasksQz tasksQz); Task<ApiResult> PauseTaskScheduleAsync(SysTasks tasksQz);
Task<ApiResult> ResumeTaskScheduleAsync(SysTasksQz tasksQz); Task<ApiResult> ResumeTaskScheduleAsync(SysTasks tasksQz);
Task<ApiResult> DeleteTaskScheduleAsync(SysTasksQz tasksQz); Task<ApiResult> DeleteTaskScheduleAsync(SysTasks tasksQz);
Task<ApiResult> RunTaskScheduleAsync(SysTasksQz tasksQz); Task<ApiResult> RunTaskScheduleAsync(SysTasks tasksQz);
Task<ApiResult> UpdateTaskScheduleAsync(SysTasksQz tasksQz); Task<ApiResult> UpdateTaskScheduleAsync(SysTasks tasksQz);
} }
} }

View File

@ -80,7 +80,7 @@ namespace ZR.Tasks
//成功后执行次数+1 //成功后执行次数+1
if (logModel.Status == "0") if (logModel.Status == "0")
{ {
await taskQzService.UpdateAsync(f => new SysTasksQz() await taskQzService.UpdateAsync(f => new SysTasks()
{ {
RunTimes = f.RunTimes + 1, RunTimes = f.RunTimes + 1,
LastRunTime = DateTime.Now LastRunTime = DateTime.Now

View File

@ -114,7 +114,7 @@ namespace ZR.Tasks
/// </summary> /// </summary>
/// <param name="tasksQz"></param> /// <param name="tasksQz"></param>
/// <returns></returns> /// <returns></returns>
public async Task<ApiResult> AddTaskScheduleAsync(SysTasksQz tasksQz) public async Task<ApiResult> AddTaskScheduleAsync(SysTasks tasksQz)
{ {
try try
{ {
@ -190,7 +190,7 @@ namespace ZR.Tasks
/// </summary> /// </summary>
/// <param name="tasksQz"></param> /// <param name="tasksQz"></param>
/// <returns></returns> /// <returns></returns>
public async Task<ApiResult> PauseTaskScheduleAsync(SysTasksQz tasksQz) public async Task<ApiResult> PauseTaskScheduleAsync(SysTasks tasksQz)
{ {
try try
{ {
@ -214,7 +214,7 @@ namespace ZR.Tasks
/// </summary> /// </summary>
/// <param name="tasksQz"></param> /// <param name="tasksQz"></param>
/// <returns></returns> /// <returns></returns>
public async Task<ApiResult> ResumeTaskScheduleAsync(SysTasksQz tasksQz) public async Task<ApiResult> ResumeTaskScheduleAsync(SysTasks tasksQz)
{ {
try try
{ {
@ -237,7 +237,7 @@ namespace ZR.Tasks
/// </summary> /// </summary>
/// <param name="tasksQz"></param> /// <param name="tasksQz"></param>
/// <returns></returns> /// <returns></returns>
public async Task<ApiResult> DeleteTaskScheduleAsync(SysTasksQz tasksQz) public async Task<ApiResult> DeleteTaskScheduleAsync(SysTasks tasksQz)
{ {
try try
{ {
@ -260,7 +260,7 @@ namespace ZR.Tasks
/// </summary> /// </summary>
/// <param name="tasksQz"></param> /// <param name="tasksQz"></param>
/// <returns></returns> /// <returns></returns>
public async Task<ApiResult> RunTaskScheduleAsync(SysTasksQz tasksQz) public async Task<ApiResult> RunTaskScheduleAsync(SysTasks tasksQz)
{ {
try try
{ {
@ -291,7 +291,7 @@ namespace ZR.Tasks
/// </summary> /// </summary>
/// <param name="tasksQz"></param> /// <param name="tasksQz"></param>
/// <returns></returns> /// <returns></returns>
public async Task<ApiResult> UpdateTaskScheduleAsync(SysTasksQz tasksQz) public async Task<ApiResult> UpdateTaskScheduleAsync(SysTasks tasksQz)
{ {
try try
{ {
@ -318,7 +318,7 @@ namespace ZR.Tasks
/// </summary> /// </summary>
/// <param name="tasksQz"></param> /// <param name="tasksQz"></param>
/// <returns></returns> /// <returns></returns>
private ITrigger CreateSimpleTrigger(SysTasksQz tasksQz) private ITrigger CreateSimpleTrigger(SysTasks tasksQz)
{ {
if (tasksQz.RunTimes > 0) if (tasksQz.RunTimes > 0)
{ {
@ -348,7 +348,7 @@ namespace ZR.Tasks
/// </summary> /// </summary>
/// <param name="tasksQz"></param> /// <param name="tasksQz"></param>
/// <returns></returns> /// <returns></returns>
private ITrigger CreateCronTrigger(SysTasksQz tasksQz) private ITrigger CreateCronTrigger(SysTasks tasksQz)
{ {
// 作业触发器 // 作业触发器
return TriggerBuilder.Create() return TriggerBuilder.Create()