using ce.autofac.extension;
using learun.iapplication;
using learun.util;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace learun.application
{
///
/// 版 本 EasyCode EC管理后台
/// Copyright (c) 2019-present EC管理有限公司
/// 创建人:tobin
/// 日 期:2019.11.01
/// 描 述:任务计划模板信息
///
public class TSSchemeBLL : BLLBase, TSSchemeIBLL, BLL
{
private readonly TSSchemeService schemeService = new TSSchemeService();
#region 获取数据
///
/// 获取页面显示列表数据
///
/// 分页参数
/// 查询参数
///
public Task> GetPageList(Pagination pagination, string queryJson)
{
return schemeService.GetPageList(pagination, queryJson);
}
///
/// 获取列表数据
///
///
public Task> GetList()
{
return schemeService.GetList();
}
///
/// 获取表实体数据
///
/// 主键
///
public Task GetSchemeInfoEntity(string keyValue)
{
return schemeService.GetSchemeInfoEntity(keyValue);
}
#endregion 获取数据
#region 提交数据
///
/// 删除实体数据
///
/// 主键
///
public async Task DeleteEntity(string keyValue)
{
await schemeService.DeleteEntity(keyValue);
await QuartzHelper.DeleteJob(keyValue);
}
///
/// 保存实体数据(新增、修改)
///
/// 主键
/// 实体
///
public async Task SaveEntity(string keyValue, TSSchemeInfoEntity schemeInfoEntity)
{
await schemeService.SaveEntity(keyValue, schemeInfoEntity);
await QuartzHelper.DeleteJob(keyValue);
await QuartzHelper.AddJob(schemeInfoEntity.F_Id, schemeInfoEntity.F_Scheme.ToObject());
}
#endregion 提交数据
#region 扩展应用
///
/// 暂停任务
///
/// 任务主键
public async Task PauseJob(string keyValue)
{
TSSchemeInfoEntity schemeInfoEntity = new TSSchemeInfoEntity()
{
F_IsActive = 2
};
await schemeService.UpdateEntity(keyValue, schemeInfoEntity);
await QuartzHelper.DeleteJob(keyValue);
}
///
/// 启动任务
///
/// 任务进程主键
public async Task EnAbleJob(string keyValue)
{
TSSchemeInfoEntity schemeInfoEntity = new TSSchemeInfoEntity()
{
F_IsActive = 1
};
var entity = await GetSchemeInfoEntity(keyValue);
await schemeService.UpdateEntity(keyValue, schemeInfoEntity);
await QuartzHelper.AddJob(keyValue, entity.F_Scheme.ToObject());
}
#endregion 扩展应用
#region 执行sql语句和存储过程
///
/// 执行sql语句
///
/// 数据库编码
/// sql语句
///
public async Task ExecuteBySql(string code, string sql)
{
await schemeService.ExecuteBySql(code, sql);
}
///
/// 执行存储过程
///
/// 数据库编码
/// 名称
///
public async Task ExecuteProc(string code, string name)
{
await schemeService.ExecuteProc(code, name);
}
#endregion 执行sql语句和存储过程
}
}