Merge branch 'Test_IRC_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing

This commit is contained in:
2025-06-19 17:35:27 +08:00
6 changed files with 50 additions and 17 deletions
@@ -83,18 +83,20 @@ namespace IRaCIS.Core.Application.Helper
}
public static void AddOrUpdateSystemCronJob(string jobId, EmailBusinessScenario businessScenario, string emailCron)
public static void AddOrUpdateTimingCronJob(string jobId, EmailBusinessScenario businessScenario, string emailCron)
{
switch (businessScenario)
{
case EmailBusinessScenario.GeneralTraining_ExpirationNotification:
HangfireJobHelper.RemoveCronJob(jobId + "System");
HangfireJobHelper.RemoveCronJob(jobId + "Trial");
Console.WriteLine("添加发邮件过期提醒任务");
HangfireJobHelper.AddOrUpdateCronJob<IMediator>(jobId+"System", t => t.Send(new SystemDocumentErverDayEvent() { }, default), emailCron);
HangfireJobHelper.AddOrUpdateCronJob<IMediator>(jobId+"Trial", t => t.Send(new TrialDocumentErverDayEvent() { }, default), emailCron);
HangfireJobHelper.AddOrUpdateCronJob<IMediator>(jobId, t => t.Send(new SystemDocumentErverDayEvent() { }, default), emailCron);
break;
case EmailBusinessScenario.TrialTraining_ExpirationNotification:
Console.WriteLine("更新项目到期job");
HangfireJobHelper.AddOrUpdateCronJob<IMediator>(jobId, t => t.Send(new TrialDocumentErverDayEvent() { }, default), emailCron);
break;
default:
@@ -122,7 +122,7 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring
return (topicStr, htmlBodyStr);
};
var scenario = EmailBusinessScenario.GeneralTraining_ExpirationNotification;
var scenario = EmailBusinessScenario.TrialTraining_ExpirationNotification;
var emailConfig = _emailNoticeConfigrepository.Where(t => t.BusinessScenarioEnum == scenario && t.IsAutoSend && t.IsEnable).FirstOrDefault();
@@ -267,7 +267,7 @@ namespace IRaCIS.Core.Application.MassTransit.Recurring
return (topicStr, htmlBodyStr);
};
var scenario = EmailBusinessScenario.GeneralTraining_EffectiveNotification;
var scenario = EmailBusinessScenario.TrialTraining_EffectiveNotification;
var emailConfig = _emailNoticeConfigrepository.Where(t => t.BusinessScenarioEnum == scenario && t.IsAutoSend && t.IsEnable).FirstOrDefault();
@@ -186,14 +186,16 @@ namespace IRaCIS.Core.Application.Contracts
}
if (entity.EmailCron != string.Empty)
if (addOrEditEmailNoticeConfig.EmailCron != string.Empty)
{
var jobId = $"{entity.Id}_({entity.BusinessScenarioEnum})";
var jobId = $"{entity.Id}_({addOrEditEmailNoticeConfig.BusinessScenarioEnum})";
HangfireJobHelper.RemoveCronJob(jobId);
//有的job 可能编辑控制直接不发,需要移除已存在的
if (entity.IsAutoSend && entity.IsEnable)
{
HangfireJobHelper.AddOrUpdateSystemCronJob(jobId, entity.BusinessScenarioEnum, entity.EmailCron);
HangfireJobHelper.AddOrUpdateTimingCronJob(jobId, addOrEditEmailNoticeConfig.BusinessScenarioEnum, addOrEditEmailNoticeConfig.EmailCron);
}
}