yuzd / Hangfire.HttpJob

httpjob for Hangfire,restful api for Hangfire,job调度与业务分离
https://github.com/yuzd/Hangfire.HttpJob/wiki
MIT License
618 stars 184 forks source link

编辑周期任务,多success层级,保存丢失问题 #195

Open Jxika opened 11 months ago

Jxika commented 11 months ago

在编辑任务周期时:我输入的格式是这样的 { "Success": { "Success": { "Success": null, "Fail": null, "RecurringJobIdentifier": null, "Url": "http://localhost:5002", "Method": "Post", "Data": "null", "ContentType": "application/json", "Timeout": 20000, "DelayFromMinutes": 0, "RunAt": null, "Cron": null, "JobName": null, "QueueName": null, "AgentClass": "TestHangfireRedisAgent.Jobs.TestJob,TestHangfireRedisAgent", "AgentTimeout": 0, "SendSuccess": false, "SendFail": false, "Mail": null, "EnableRetry": false, "RetryDelaysInSeconds": null, "RetryTimes": 0, "BasicUserName": null, "BasicPassword": null, "Headers": {}, "CallbackEL": null, "TimeZone": null, "DingTalk": null }, "Fail": { "Success": null, "Fail": null, "RecurringJobIdentifier": null, "Url": "http://localhost:5002/testFail", "Method": "Get", "Data": "null", "ContentType": "application/json", "Timeout": 20000, "DelayFromMinutes": 0, "RunAt": null, "Cron": null, "JobName": null, "QueueName": null, "AgentClass": null, "AgentTimeout": 0, "SendSuccess": false, "SendFail": false, "Mail": null, "EnableRetry": false, "RetryDelaysInSeconds": null, "RetryTimes": 0, "BasicUserName": null, "BasicPassword": null, "Headers": {}, "CallbackEL": null, "TimeZone": null, "DingTalk": null }, "RecurringJobIdentifier": null, "Url": "http://localhost:5002", "Method": "Post", "Data": "null", "ContentType": "application/json", "Timeout": 20000, "DelayFromMinutes": 0, "RunAt": null, "Cron": null, "JobName": null, "QueueName": null, "AgentClass": "TestHangfireRedisAgent.Jobs.DataB,TestHangfireRedisAgent", "AgentTimeout": 0, "SendSuccess": false, "SendFail": false, "Mail": null, "EnableRetry": false, "RetryDelaysInSeconds": null, "RetryTimes": 0, "BasicUserName": null, "BasicPassword": null, "Headers": {}, "CallbackEL": null, "TimeZone": null, "DingTalk": null }, "Fail": { "Success": { "Success": null, "Fail": null, "RecurringJobIdentifier": null, "Url": "http://localhost:5002/testSuccess", "Method": "Get", "Data": "null", "ContentType": "application/json", "Timeout": 20000, "DelayFromMinutes": 0, "RunAt": null, "Cron": null, "JobName": null, "QueueName": null, "AgentClass": null, "AgentTimeout": 0, "SendSuccess": false, "SendFail": false, "Mail": null, "EnableRetry": false, "RetryDelaysInSeconds": null, "RetryTimes": 0, "BasicUserName": null, "BasicPassword": null, "Headers": {}, "CallbackEL": null, "TimeZone": null, "DingTalk": null }, "Fail": { "Success": null, "Fail": null, "RecurringJobIdentifier": null, "Url": "http://localhost:5002/testFail", "Method": "Get", "Data": "null", "ContentType": "application/json", "Timeout": 20000, "DelayFromMinutes": 0, "RunAt": null, "Cron": null, "JobName": null, "QueueName": null, "AgentClass": null, "AgentTimeout": 0, "SendSuccess": false, "SendFail": false, "Mail": null, "EnableRetry": false, "RetryDelaysInSeconds": null, "RetryTimes": 0, "BasicUserName": null, "BasicPassword": null, "Headers": {}, "CallbackEL": null, "TimeZone": null, "DingTalk": null }, "RecurringJobIdentifier": null, "Url": "http://localhost:5002/testFail", "Method": "Get", "Data": "null", "ContentType": "application/json", "Timeout": 20000, "DelayFromMinutes": 0, "RunAt": null, "Cron": null, "JobName": null, "QueueName": null, "AgentClass": null, "AgentTimeout": 0, "SendSuccess": false, "SendFail": false, "Mail": null, "EnableRetry": false, "RetryDelaysInSeconds": null, "RetryTimes": 0, "BasicUserName": null, "BasicPassword": null, "Headers": {}, "CallbackEL": null, "TimeZone": null, "DingTalk": null }, "RecurringJobIdentifier": "数据A进程", "Url": "http://localhost:5002", "Method": "Post", "Data": "", "ContentType": "application/json", "Timeout": 20000, "DelayFromMinutes": 1, "RunAt": null, "Cron": null, "JobName": "数据A进程", "QueueName": "default", "AgentClass": "TestHangfireRedisAgent.Jobs.DataA,TestHangfireRedisAgent", "AgentTimeout": 0, "SendSuccess": true, "SendFail": true, "Mail": "", "EnableRetry": false, "RetryDelaysInSeconds": null, "RetryTimes": 0, "BasicUserName": null, "BasicPassword": null, "Headers": {}, "CallbackEL": null, "TimeZone": "", "DingTalk": { "Token": "", "Secret": null, "AtPhones": "", "IsAtAll": false } } 点击提交后,提示保存成功。但再次打开编辑界面,发现里面只保存了部分信息如下: { "Success": { "Url": "http://localhost:5002/jobagent", "Method": "Post", "Data": "", "ContentType": "application/json", "Timeout": 20000, "AgentClass": "TestHangfireRedisAgent.Jobs.DataA,TestHangfireRedisAgent", "Headers": {} }, "RecurringJobIdentifier": "TestHangfireRedisAgent.Jobs.ShellMethod", "Url": "http://localhost:5002/jobagent", "Method": "Post", "Data": "", "ContentType": "application/json", "Timeout": 20000, "DelayFromMinutes": 15, "Cron": "", "JobName": "壳方法", "QueueName": "default", "AgentClass": "TestHangfireRedisAgent.Jobs.ShellMethod,TestHangfireRedisAgent", "AgentTimeout": 0, "SendSuccess": false, "SendFail": false, "Mail": "", "EnableRetry": false, "RetryTimes": 0, "BasicUserName": "test", "BasicPassword": "123456", "Headers": {} } 丢失了部分 Success。

yuzd commented 11 months ago

我晚点看看