异步全部await。_tasksQzService不用App.GetRequiredService方法
This commit is contained in:
parent
845c75ceb5
commit
4fff0a25a0
@ -33,11 +33,12 @@ namespace ZR.Admin.WebApi.Extensions
|
||||
/// <returns></returns>
|
||||
public static IApplicationBuilder UseAddTaskSchedulers(this IApplicationBuilder app)
|
||||
{
|
||||
var _tasksQzService = (ISysTasksQzService)App.GetRequiredService(typeof(ISysTasksQzService));
|
||||
///var _tasksQzService = (ISysTasksQzService)App.GetRequiredService(typeof(ISysTasksQzService));
|
||||
|
||||
ITaskSchedulerServer _schedulerServer = App.GetRequiredService<ITaskSchedulerServer>();
|
||||
|
||||
var tasks = _tasksQzService.GetList(m => m.IsStart);
|
||||
///var tasks = _tasksQzService.GetList(m => m.IsStart);
|
||||
var tasks = SqlSugar.IOC.DbScoped.SugarScope.Queryable<Model.System.SysTasksQz>().Where(m => m.IsStart).ToList();
|
||||
|
||||
//程序启动后注册所有定时任务
|
||||
foreach (var task in tasks)
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
using ZR.Model.System;
|
||||
using System.Threading.Tasks;
|
||||
using ZR.Model.System;
|
||||
using ZR.Repository;
|
||||
|
||||
namespace ZR.Service.System.IService
|
||||
@ -10,6 +11,6 @@ namespace ZR.Service.System.IService
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
//public int AddTaskLog(string jobId);
|
||||
SysTasksLog AddTaskLog(string jobId, SysTasksLog tasksLog);
|
||||
Task<SysTasksLog> AddTaskLog(string jobId, SysTasksLog tasksLog);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
using Infrastructure.Attribute;
|
||||
using System;
|
||||
using System.Linq.Expressions;
|
||||
using System.Threading.Tasks;
|
||||
using ZR.Model;
|
||||
using ZR.Model.System;
|
||||
using ZR.Repository;
|
||||
@ -12,7 +13,7 @@ namespace ZR.Service.System
|
||||
/// 任务日志
|
||||
/// </summary>
|
||||
[AppService(ServiceLifetime = LifeTime.Transient, ServiceType = typeof(ISysTasksLogService))]
|
||||
public class SysTasksLogService : BaseRepository<SysTasksLog>, ISysTasksLogService
|
||||
public class SysTasksLogService : BaseService<SysTasksLog>, ISysTasksLogService
|
||||
{
|
||||
private ISysTasksQzService _tasksQzService;
|
||||
public SysTasksLogService(ISysTasksQzService tasksQzService)
|
||||
@ -20,10 +21,10 @@ namespace ZR.Service.System
|
||||
_tasksQzService = tasksQzService;
|
||||
}
|
||||
|
||||
public SysTasksLog AddTaskLog(string jobId, SysTasksLog logModel)
|
||||
public async Task<SysTasksLog> AddTaskLog(string jobId, SysTasksLog logModel)
|
||||
{
|
||||
//获取任务信息
|
||||
var model = _tasksQzService.GetSingleAsync(f => f.ID == jobId).Result;
|
||||
var model = await _tasksQzService.GetSingleAsync(f => f.ID == jobId);
|
||||
|
||||
if (model != null)
|
||||
{
|
||||
@ -33,7 +34,7 @@ namespace ZR.Service.System
|
||||
logModel.CreateTime = DateTime.Now;
|
||||
}
|
||||
|
||||
InsertAsync(logModel);
|
||||
await InsertAsync(logModel);
|
||||
return logModel;
|
||||
}
|
||||
|
||||
|
||||
@ -56,7 +56,7 @@ namespace ZR.Tasks
|
||||
JobMessage = logMsg
|
||||
};
|
||||
|
||||
RecordTaskLog(context, logModel);
|
||||
await RecordTaskLog(context, logModel);
|
||||
return logModel;
|
||||
}
|
||||
|
||||
@ -65,7 +65,7 @@ namespace ZR.Tasks
|
||||
/// </summary>
|
||||
/// <param name="context"></param>
|
||||
/// <param name="logModel"></param>
|
||||
protected void RecordTaskLog(IJobExecutionContext context, SysTasksLog logModel)
|
||||
protected async Task RecordTaskLog(IJobExecutionContext context, SysTasksLog logModel)
|
||||
{
|
||||
var tasksLogService = (ISysTasksLogService)App.GetRequiredService(typeof(ISysTasksLogService));
|
||||
var taskQzService = (ISysTasksQzService)App.GetRequiredService(typeof(ISysTasksQzService));
|
||||
@ -74,11 +74,11 @@ namespace ZR.Tasks
|
||||
IJobDetail job = context.JobDetail;
|
||||
|
||||
logModel.InvokeTarget = job.JobType.FullName;
|
||||
logModel = tasksLogService.AddTaskLog(job.Key.Name, logModel);
|
||||
logModel = await tasksLogService.AddTaskLog(job.Key.Name, logModel);
|
||||
//成功后执行次数+1
|
||||
if (logModel.Status == "0")
|
||||
{
|
||||
taskQzService.UpdateAsync(f => new SysTasksQz()
|
||||
await taskQzService.UpdateAsync(f => new SysTasksQz()
|
||||
{
|
||||
RunTimes = f.RunTimes + 1,
|
||||
LastRunTime = DateTime.Now
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user