任务新增网络请求方法

This commit is contained in:
不做码农 2022-12-05 12:03:28 +08:00
parent c3b7aa9b00
commit d1720116db
5 changed files with 45 additions and 19 deletions

View File

@ -129,5 +129,10 @@ namespace ZR.Model.System.Dto
/// </summary> /// </summary>
public int TaskType { get; set; } public int TaskType { get; set; }
public string SqlText { get; set; } public string SqlText { get; set; }
/// <summary>
/// 网络请求方式
/// </summary>
public string RequestMethod { get; set; }
} }
} }

View File

@ -169,5 +169,9 @@ namespace ZR.Model.System
/// SQL语句 /// SQL语句
/// </summary> /// </summary>
public string SqlText { get; set; } public string SqlText { get; set; }
/// <summary>
/// 网络请求方式
/// </summary>
public string RequestMethod { get; set; }
} }
} }

View File

@ -30,15 +30,30 @@ namespace ZR.Tasks.TaskScheduler
{ {
AbstractTrigger trigger = (context as JobExecutionContextImpl).Trigger as AbstractTrigger; AbstractTrigger trigger = (context as JobExecutionContextImpl).Trigger as AbstractTrigger;
var info = await tasksQzService.GetByIdAsync(trigger.JobName); var info = await tasksQzService.GetByIdAsync(trigger.JobName);
if (info != null) if (info == null)
{
var result = await HttpHelper.HttpGetAsync("http://" + info.ApiUrl);
logger.Info($"任务【{info.Name}】网络请求执行结果=" + result);
}
else
{ {
throw new CustomException($"任务{trigger?.JobName}网络请求执行失败,任务不存在"); throw new CustomException($"任务{trigger?.JobName}网络请求执行失败,任务不存在");
} }
string result;
if (info.RequestMethod != null && info.RequestMethod.Equals("POST", StringComparison.OrdinalIgnoreCase))
{
result = await HttpHelper.HttpPostAsync(info.ApiUrl, info.JobParams);
}
else
{
var url = info.ApiUrl;
if (url.IndexOf("?") > -1)
{
url += "&" + info.JobParams;
}
else
{
url += "?" + info.JobParams;
}
result = await HttpHelper.HttpGetAsync(url);
}
logger.Info($"任务【{info.Name}】网络请求执行结果=" + result);
} }
} }
} }

View File

@ -7,17 +7,17 @@ SET FOREIGN_KEY_CHECKS = 0;
-- ---------------------------- -- ----------------------------
DROP TABLE IF EXISTS `sys_tasks`; DROP TABLE IF EXISTS `sys_tasks`;
CREATE TABLE `sys_tasks` ( CREATE TABLE `sys_tasks` (
`Id` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT 'UID', `id` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT 'UID',
`Name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务名称', `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务名称',
`JobGroup` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务分组', `jobGroup` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务分组',
`Cron` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '运行时间表达式', `cron` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '运行时间表达式',
`AssemblyName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '程序集名称', `assemblyName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '程序集名称',
`ClassName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务所在类', `className` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '任务所在类',
`Remark` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '任务描述', `remark` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '任务描述',
`RunTimes` int(11) NOT NULL COMMENT '执行次数', `runTimes` int(11) NOT NULL COMMENT '执行次数',
`BeginTime` datetime(0) NULL DEFAULT NULL COMMENT '开始时间', `beginTime` datetime(0) NULL DEFAULT NULL COMMENT '开始时间',
`EndTime` datetime(0) NULL DEFAULT NULL COMMENT '结束时间', `endTime` datetime(0) NULL DEFAULT NULL COMMENT '结束时间',
`TriggerType` int(11) NOT NULL COMMENT '触发器类型0、simple 1、cron', `triggerType` int(11) NOT NULL COMMENT '触发器类型0、simple 1、cron',
`IntervalSecond` int(11) NOT NULL COMMENT '执行间隔时间(单位:秒)', `IntervalSecond` int(11) NOT NULL COMMENT '执行间隔时间(单位:秒)',
`IsStart` tinyint(4) NOT NULL COMMENT '是否启动', `IsStart` tinyint(4) NOT NULL COMMENT '是否启动',
`JobParams` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '传入参数', `JobParams` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '传入参数',
@ -29,6 +29,7 @@ CREATE TABLE `sys_tasks` (
`apiUrl` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'api执行地址', `apiUrl` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'api执行地址',
`taskType` int(4) NULL DEFAULT 1 COMMENT '任务类型1程序集任务 2网络请求', `taskType` int(4) NULL DEFAULT 1 COMMENT '任务类型1程序集任务 2网络请求',
`sqlText` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'SQL语句', `sqlText` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'SQL语句',
`requestMethod` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'http请求方法',
PRIMARY KEY (`ID`) USING BTREE PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '计划任务' ROW_FORMAT = Dynamic; ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '计划任务' ROW_FORMAT = Dynamic;

View File

@ -27,10 +27,11 @@ CREATE TABLE sys_tasks
lastRunTime datetime , -- lastRunTime datetime , --
taskType int null , -- 1 2 taskType int null , -- 1 2
apiUrl varchar(200), -- apiUrl varchar(200), --
sqlText VARCHAR(1000) --sql语句 sqlText VARCHAR(1000), --sql语句
requestMethod VARCHAR(10) --
) )
GO GO
INSERT INTO sys_tasks VALUES ('1410905433996136448', '测试任务', 'SYSTEM', '0 0/10 * * * ? ', 'ZR.Tasks', 'TaskScheduler.Job_SyncTest', NULL, 0, '2021-07-02 18:17:31', '9999-12-31 00:00:00', 1, 1, 1, NULL, '2021-07-02 18:17:23', '2021-07-02 18:17:31', 'admin', NULL, NULL, 1, '', ''); INSERT INTO sys_tasks VALUES ('1410905433996136448', '测试任务', 'SYSTEM', '0 0/10 * * * ? ', 'ZR.Tasks', 'TaskScheduler.Job_SyncTest', NULL, 0, '2021-07-02 18:17:31', '9999-12-31 00:00:00', 1, 1, 1, NULL, '2021-07-02 18:17:23', '2021-07-02 18:17:31', 'admin', NULL, NULL, 1, '', '', '');
GO GO
if OBJECT_ID(N'sys_tasks_log',N'U') is not NULL DROP TABLE sys_tasks_log if OBJECT_ID(N'sys_tasks_log',N'U') is not NULL DROP TABLE sys_tasks_log
GO GO