Yuebon.WebApi/Areas/Security/Controllers/TaskManagerController.cs
(开头部分) 10KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using Quartz;
using Yuebon.AspNetCore.ViewModel;
using Yuebon.Quartz.Jobs;
namespace Yuebon.WebApi.Areas.Security.Controllers
{
/// <summary>
/// 定时任务接口
/// </summary>
[ApiController]
[Route("api/Security/[controller]")]
public class TaskManagerController : AreaApiController<TaskManager, TaskManagerOutputDto,TaskManagerInputDto,ITaskManagerService>
{
/// <summary>
///
/// </summary>
private readonly ISequenceService _sequenceService;
private ISchedulerCenter _schedulerCenter;
/// <summary>
/// 构造函数
/// </summary>
/// <param name="_iService"></param>
/// <param name="schedulerCenter"></param>
/// <param name="sequenceService"></param>
public TaskManagerController(ITaskManagerService _iService, ISchedulerCenter schedulerCenter, ISequenceService sequenceService) : base(_iService)
{
iService = _iService;
_schedulerCenter = schedulerCenter;
_sequenceService=sequenceService;
}
/// <summary>
/// 新增前处理数据
/// </summary>
/// <param name="info"></param>
protected override void OnBeforeInsert(TaskManager info)
{
info.Id= IdGeneratorHelper.IdSnowflake();
info.TaskCode = _sequenceService.GetSequenceNext("TaskManager");
if (string.IsNullOrEmpty(info.TaskCode))
{
info.TaskCode=IdGeneratorHelper.IdSnowflake().ToString();
}
info.DeleteMark = false;
info.RunCount = 0;
info.Status = 0;
CronExpression cronExpression = new CronExpression(info.Cron);
info.NextRunTime =cronExpression.GetNextValidTimeAfter(DateTime.Now).ToDateTime();
info.CreatorTime =info.NextRunTime=info.LastRunTime=info.LastModifyTime= DateTime.Now;
info.CreatorUserId =info.LastModifyUserId= CurrentUser.UserId;
info.CompanyId = CurrentUser.OrganizeId;
info.DeptId = CurrentUser.DeptId;
}
/// <summary>
/// 在更新数据前对数据的修改操作
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
protected override void OnBeforeUpdate(TaskManager info)
后面还有 229 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。