package cn.stylefeng.workflow.instance.modular.manage.pojo.request;

import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
import cn.stylefeng.workflow.api.entity.instance.RuntimeNode;
import cn.stylefeng.workflow.api.pojo.InstanceContext;
import lombok.Data;
import lombok.EqualsAndHashCode;

@EqualsAndHashCode(callSuper = true)
@Data
public class RuntimeTimerRequest extends BaseRequest {

    @ChineseDescription("主键id")
    private Long runtimeNodeTimerId;

    @ChineseDescription("流程实例id")
    private Long instanceId;

    @ChineseDescription("节点定时任务id，flow_design_node_timer表的主键id")
    private Long nodeTimerId;

    @ChineseDescription("定时任务名称")
    private String timerName;

    @ChineseDescription("定时任务类名")
    private String timerActionClass;

    @ChineseDescription("cron表达式")
    private String timerCron;

    @ChineseDescription("定时任务参数：运行时节点的信息")
    private RuntimeNode paramRuntimeNodeJson;

    @ChineseDescription("定时任务参数：流程实例的信息")
    private InstanceContext paramInstanceContextJson;

    @ChineseDescription("定时任务状态：1-启动，2-停止")
    private Integer timerStatus;

    @ChineseDescription("租户号")
    private Long tenantId;

}
