Security/Yuebon.Security.Services/TaskManagerService.cs

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using Quartz;
using Yuebon.Commons.DependencyInjection;
using Yuebon.Commons.Enums;
using Yuebon.Commons.Helpers;

namespace Yuebon.Security.Services;

/// <summary>
/// 定时任务服务接口实现
/// </summary>
public class TaskManagerService : BaseService<TaskManager, TaskManagerOutputDto>, ITaskManagerService, IScopedDependency
{
    private readonly ITaskManagerRepository _repository;
    private readonly ITaskJobsLogService _taskJobsLogService;
    /// <summary>
    /// 
    /// </summary>
    /// <summary>
    /// 构造函数
    /// </summary>
    /// <param name="repository"></param>
    /// <param name="taskJobsLogService"></param>
    public TaskManagerService(ITaskManagerRepository taskManagerRepository, ITaskJobsLogService taskJobsLogService)
    {
        repository = taskManagerRepository;
        _repository = taskManagerRepository;
        _taskJobsLogService = taskJobsLogService;
    }

    /// <summary>
    /// 记录任务运行结果
    /// </summary>
    /// <param name="jobId">任务Id</param>
    /// <param name="jobAction">任务执行动作</param>
    /// <param name="blresultTag">任务执行结果表示,true成功,false失败,初始执行为true</param>
    /// <param name="resume">结果简述</param>
    /// <param name="desc">返回消息详情</param>
    public void RecordRun(long jobId, JobAction jobAction, bool blresultTag = true, string resume = "",string desc="")
    {
        DateTime addTime = DateTime.Now;
        TaskManager job = _repository.Db.Queryable<TaskManager>().First(t => t.Id == jobId);
        if (job == null)
        {
            _taskJobsLogService.Insert(new TaskJobsLog
            {
                Id = IdGeneratorHelper.IdSnowflake(),
                CreatorTime = DateTime.Now,
                TaskId = jobId,
                TaskName = "",
                JobAction = jobAction.ToString(),
                Status = false,
                Resume = $"未能找到定时任务:{jobId}",
                Description = desc
                
            });
            return;
        }
        string  strDesc = string.Empty;
        if (!blresultTag)
        {
后面还有 64 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。