package com.qunzhixinxi.hnqz.admin.api.entity;

import cn.hutool.core.date.DatePattern;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * {@code WmReportOpt}
 * <p>
 * 报告导出
 *
 * @author Hengchen.Sun
 * @version 1.0.0
 * @date 2021/11/17 11:37
 */
@Data
public class WmReportOpt {

	/**
	 * 生成状态
	 */
	private WmReportOptStatus status;

	/**
	 * 最近可用
	 */
	@JsonInclude(JsonInclude.Include.NON_NULL)
	private String latestUrl;

	/**
	 * 当前报告最后可用下载时间
	 */
	@JsonInclude(JsonInclude.Include.NON_NULL)
	@JsonFormat(pattern = DatePattern.CHINESE_DATE_TIME_PATTERN)
	private LocalDateTime ttl;

	/**
	 * 失败信息
	 */
	@JsonInclude(JsonInclude.Include.NON_NULL)
	private String errorMsg;


	public enum WmReportOptStatus {
		// 未生成
		NOT_GENERATE,
		// 生成中
		GENERATING,
		// 已生成
		GENERATED,
		// 生成失败
		ERROR;
	}
}
