From 185829fad9d9a9c9679b6c9ba03ff18af39b1331 Mon Sep 17 00:00:00 2001 From: maliming Date: Sun, 5 Oct 2025 19:27:15 +0800 Subject: [PATCH] Add priority support to TickerQ job configuration --- .../BackgroundJobs/TickerQ/AbpBackgroundJobsTickerQModule.cs | 4 +++- .../TickerQ/AbpBackgroundJobsTimeTickerConfiguration.cs | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTickerQModule.cs b/framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTickerQModule.cs index 5e03bc33cd..a47a17273e 100644 --- a/framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTickerQModule.cs +++ b/framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTickerQModule.cs @@ -19,13 +19,15 @@ public class AbpBackgroundJobsTickerQModule : AbpModule public override void OnApplicationInitialization(ApplicationInitializationContext context) { var abpBackgroundJobOptions = context.ServiceProvider.GetRequiredService>(); + var abpBackgroundJobsTickerQOptions = context.ServiceProvider.GetRequiredService>(); var tickerFunctionDelegates = new Dictionary(); var requestTypes = new Dictionary(); foreach (var jobConfiguration in abpBackgroundJobOptions.Value.GetJobs()) { var genericMethod = GetTickerFunctionDelegateMethod.MakeGenericMethod(jobConfiguration.ArgsType); var tickerFunctionDelegate = (TickerFunctionDelegate)genericMethod.Invoke(null, [jobConfiguration.ArgsType])!; - tickerFunctionDelegates.TryAdd(jobConfiguration.JobName, (string.Empty, TickerTaskPriority.Normal, tickerFunctionDelegate)); + var config = abpBackgroundJobsTickerQOptions.Value.GetJobConfigurationOrNull(jobConfiguration.JobType); + tickerFunctionDelegates.TryAdd(jobConfiguration.JobName, (string.Empty, config?.Priority ?? TickerTaskPriority.Normal, tickerFunctionDelegate)); requestTypes.TryAdd(jobConfiguration.JobName, (jobConfiguration.ArgsType.FullName, jobConfiguration.ArgsType)!); } diff --git a/framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTimeTickerConfiguration.cs b/framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTimeTickerConfiguration.cs index 3082f8ab3e..ed42c01a3e 100644 --- a/framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTimeTickerConfiguration.cs +++ b/framework/src/Volo.Abp.BackgroundJobs.TickerQ/Volo/Abp/BackgroundJobs/TickerQ/AbpBackgroundJobsTimeTickerConfiguration.cs @@ -1,3 +1,5 @@ +using TickerQ.Utilities.Enums; + namespace Volo.Abp.BackgroundJobs.TickerQ; public class AbpBackgroundJobsTimeTickerConfiguration @@ -5,4 +7,6 @@ public class AbpBackgroundJobsTimeTickerConfiguration public int? Retries { get; set; } public int[]? RetryIntervals { get; set; } + + public TickerTaskPriority? Priority { get; set; } }