This commit is contained in:
yxw
2025-12-12 16:18:27 +08:00
parent cd43abc7eb
commit 8a1ff0edf9
5 changed files with 88 additions and 33 deletions

View File

@@ -1,7 +1,5 @@
using Microsoft.Extensions.Logging;
using System;
using System.Collections.Generic;
using System.Text;
using Hangfire;
using Microsoft.Extensions.Logging;
namespace Atomx.Core.Jos
{
@@ -9,7 +7,7 @@ namespace Atomx.Core.Jos
/// <summary>
/// 多语言本地化任务
/// </summary>
public partial class LocalizationJob
public class LocalizationJob
{
readonly ILogger<LocalizationJob> _logger;
public LocalizationJob(ILogger<LocalizationJob> logger)
@@ -17,10 +15,21 @@ namespace Atomx.Core.Jos
_logger = logger;
}
public void Execute()
/// <summary>
/// 如果任务失败,重试 3 次超过后删除任务60 秒内不允许并发执行
/// </summary>
[AutomaticRetry(Attempts = 3, OnAttemptsExceeded = AttemptsExceededAction.Delete)]
[DisableConcurrentExecution(60)]
public void Execute(string path)
{
_logger.LogInformation("LocalizationJob executed at: {time}", DateTimeOffset.Now);
// 在这里添加多语言本地化的具体任务逻辑
}
public void ResetCache()
{
_logger.LogInformation("LocalizationJob ResetCache executed at: {time}", DateTimeOffset.Now);
// 在这里添加重置缓存的具体逻辑
}
}
}

View File

@@ -0,0 +1,28 @@
using Atomx.Data;
using Atomx.Data.CacheServices;
using Microsoft.Extensions.Logging;
using System;
using System.Collections.Generic;
using System.Text;
namespace Atomx.Core.Jos
{
public class SendVerificationCodeJob
{
readonly ILogger<SendVerificationCodeJob> _logger;
readonly DataContext _dbContext;
readonly ICacheService _cacheService;
public SendVerificationCodeJob(ILogger<SendVerificationCodeJob> logger, DataContext dataContext, ICacheService cacheService)
{
_logger = logger;
_dbContext = dataContext;
_cacheService = cacheService;
}
public void Execute(string email, string code)
{
_logger.LogInformation("SendVerificationCodeJob executed at: {time}", DateTimeOffset.Now);
// 在这里添加发送验证码的具体任务逻辑
}
}
}