FreeScheduler
FreeScheduler copied to clipboard
根据Topic 查询指定任务
根据Topic 查询指定任务. 有的时候经常要对指定的任务进行干预操作. 而id一般都是系统自动生成的,没有意义. 因此能够根据Topic操作任务也就变的至关重要.
Topic 不是唯一,Id 是唯一
Topic 是定义一个任务的标题,比如【取消订单】,Body 定义任务的状态参数,比如 OrderId
暂时是这样定位的。
如果 Topic 是唯一,可以通过 TaskInfo 表查询得到 TaskId 再进行操作:
//FreeSql
var taskid = fsql.Select<TaskInfo>().Where(a => a.Topic == "xxx").First(a => a.Id);
//FreeRedis 的话需要额外定义 hash 关联 Topic -> TaskId
这个需求,我暂时自己实现了.