package com.njcn.cloud.pojo.dto;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.njcn.db.bo.BaseEntity;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 报告信息
 * </p>
 *
 * @author wr
 * @since 2023-11-02
 */
@Getter
@Setter
@TableName("app_report")
@ApiModel(value = "AppReport对象", description = "报告信息")
public class AppReport {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("报告表Guid")
    @TableId("Report_Index")
    private String reportIndex;

    @ApiModelProperty("报告名称")
    @TableField("Report_Name")
    private String reportName;

    @ApiModelProperty("(关联Pq_Line的Line_Index)")
    @TableField("Line_Index")
    private String lineIndex;

    @ApiModelProperty("(关联app_user表User_Index)自定义报表时填值")
    @TableField("User_Index")
    private String userIndex;

    @ApiModelProperty("报告生成时间")
    @TableField("Update_Time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    @ApiModelProperty("报告内容的起始时间")
    @TableField("Start_Time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime startTime;

    @ApiModelProperty("报告内容的结束时间")
    @TableField("End_Time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime endTime;

    @ApiModelProperty("系统类型(1-暂态，2-稳态)")
    @TableField("System_Type")
    private Integer systemType;

    @ApiModelProperty("报告类型(1-周报，2-月报，5-自定义)")
    @TableField("Report_Type")
    private Integer reportType;

    @ApiModelProperty("报告的资源路径")
    @TableField("Report_Path")
    private String reportPath;

    @ApiModelProperty("报告状态(1-成功，2-失败，3-待审核，4-删除)")
    @TableField("State")
    private Integer state;

    @ApiModelProperty("记录报告生成失败次数")
    @TableField("Error_Count")
    private Integer errorCount;

    @ApiModelProperty("暂态报告部门guid")
    @TableField("Depts_Index")
    private String deptsIndex;


}
