package com.njcn.gather.systemops.database.pojo.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 数据库运维任务。
 */
@Data
@TableName("dbms_operation_task")
public class DatabaseOperationTask implements Serializable {
    private static final long serialVersionUID = 1831235987236858769L;

    @TableId("id")
    private String id;
    @TableField("task_no")
    private String taskNo;
    @TableField("connection_id")
    private String connectionId;
    @TableField("db_type")
    private String dbType;
    @TableField("operation_type")
    private String operationType;
    @TableField("backup_strategy")
    private String backupStrategy;
    @TableField("task_status")
    private String taskStatus;
    @TableField("schema_name")
    private String schemaName;
    @TableField("target_names_json")
    private String targetNamesJson;
    @TableField("request_param_json")
    private String requestParamJson;
    @TableField("result_message")
    private String resultMessage;
    @TableField("progress_percent")
    private BigDecimal progressPercent;
    @TableField("started_at")
    private LocalDateTime startedAt;
    @TableField("finished_at")
    private LocalDateTime finishedAt;
    @TableField("state")
    private Integer state;
    @TableField("create_by")
    private String createBy;
    @TableField("create_time")
    private LocalDateTime createTime;
    @TableField("update_by")
    private String updateBy;
    @TableField("update_time")
    private LocalDateTime updateTime;
}
