package com.vincent.rsf.server.system.entity; import com.baomidou.mybatisplus.annotation.IdType; 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 io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.text.SimpleDateFormat; import java.util.Date; @Data @TableName("sys_export_task") public class ExportTask implements Serializable { public static final int STATUS_PENDING = 0; public static final int STATUS_PROCESSING = 1; public static final int STATUS_SUCCESS = 2; public static final int STATUS_FAILED = 3; private static final long serialVersionUID = 1L; @ApiModelProperty(value = "ID") @TableId(value = "id", type = IdType.AUTO) private Long id; @ApiModelProperty(value = "任务编码") private String taskCode; @ApiModelProperty(value = "资源标识") private String resourceKey; @ApiModelProperty(value = "报表标题") private String reportTitle; @ApiModelProperty(value = "状态") private Integer status; @ApiModelProperty(value = "导出总行数") private Integer rowCount; @ApiModelProperty(value = "文件名") private String fileName; @ApiModelProperty(value = "文件路径") private String filePath; @ApiModelProperty(value = "查询参数") private String payloadJson; @ApiModelProperty(value = "过期时间") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date expireTime; @ApiModelProperty(value = "错误信息") private String errorMsg; @ApiModelProperty(value = "删除标记") private Integer deleted; @ApiModelProperty(value = "租户") private Long tenantId; @ApiModelProperty(value = "创建人") private Long createBy; @ApiModelProperty(value = "创建时间") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createTime; @ApiModelProperty(value = "更新人") private Long updateBy; @ApiModelProperty(value = "更新时间") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date updateTime; @ApiModelProperty(value = "备注") private String memo; @TableField(exist = false) private String createBy$; @TableField(exist = false) private String updateBy$; public String getStatus$() { if (status == null) { return null; } return switch (status) { case STATUS_PENDING -> "待执行"; case STATUS_PROCESSING -> "处理中"; case STATUS_SUCCESS -> "已完成"; case STATUS_FAILED -> "失败"; default -> String.valueOf(status); }; } public String getCreateTime$() { if (createTime == null) { return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(createTime); } public String getUpdateTime$() { if (updateTime == null) { return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(updateTime); } public String getExpireTime$() { if (expireTime == null) { return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(expireTime); } }