package org.xyzh.common.dto.crontab;

import org.xyzh.common.dto.BaseDTO;

import java.util.Date;

/**
 * @description 定时任务执行日志表
 * @filename TbCrontabLog.java
 * @author yslg
 * @copyright xyzh
 * @since 2025-10-25
 */
public class TbCrontabLog extends BaseDTO {
    
    private static final long serialVersionUID = 1L;
    
    /**
     * @description 任务ID
     */
    private String taskId;
    
    /**
     * @description 任务名称
     */
    private String taskName;
    
    /**
     * @description 任务分组
     */
    private String taskGroup;
    
    /**
     * @description Bean名称
     */
    private String beanName;
    
    /**
     * @description 方法名称
     */
    private String methodName;
    
    /**
     * @description 方法参数
     */
    private String methodParams;
    
    /**
     * @description 执行状态（0:失败 1:成功）
     */
    private Integer executeStatus;
    
    /**
     * @description 执行结果信息
     */
    private String executeMessage;
    
    /**
     * @description 异常信息
     */
    private String exceptionInfo;
    
    /**
     * @description 开始时间
     */
    private Date startTime;
    
    /**
     * @description 结束时间
     */
    private Date endTime;
    
    /**
     * @description 执行时长（毫秒）
     */
    private Integer executeDuration;

    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    public String getTaskName() {
        return taskName;
    }

    public void setTaskName(String taskName) {
        this.taskName = taskName;
    }

    public String getTaskGroup() {
        return taskGroup;
    }

    public void setTaskGroup(String taskGroup) {
        this.taskGroup = taskGroup;
    }

    public String getBeanName() {
        return beanName;
    }

    public void setBeanName(String beanName) {
        this.beanName = beanName;
    }

    public String getMethodName() {
        return methodName;
    }

    public void setMethodName(String methodName) {
        this.methodName = methodName;
    }

    public String getMethodParams() {
        return methodParams;
    }

    public void setMethodParams(String methodParams) {
        this.methodParams = methodParams;
    }

    public Integer getExecuteStatus() {
        return executeStatus;
    }

    public void setExecuteStatus(Integer executeStatus) {
        this.executeStatus = executeStatus;
    }

    public String getExecuteMessage() {
        return executeMessage;
    }

    public void setExecuteMessage(String executeMessage) {
        this.executeMessage = executeMessage;
    }

    public String getExceptionInfo() {
        return exceptionInfo;
    }

    public void setExceptionInfo(String exceptionInfo) {
        this.exceptionInfo = exceptionInfo;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Integer getExecuteDuration() {
        return executeDuration;
    }

    public void setExecuteDuration(Integer executeDuration) {
        this.executeDuration = executeDuration;
    }

    @Override
    public String toString() {
        return "TbCrontabLog{" +
                "id=" + getID() +
                ", taskId='" + taskId + '\'' +
                ", taskName='" + taskName + '\'' +
                ", taskGroup='" + taskGroup + '\'' +
                ", executeStatus=" + executeStatus +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", executeDuration=" + executeDuration +
                '}';
    }
}

