package com.bonus.canteen.core.common.export.model;

import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

public class ExportRecord {
   @TableId
   private Long exportId;
   private String fileName;
   private String fileUrl;
   private Long fileSize;
   private Integer exportFileState;
   private Integer exportFileType;
   private Integer process;
   private Integer ifPrivate;
   @DateTimeFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   @JsonFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   private LocalDateTime finishTime;
   @DateTimeFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   @JsonFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   private LocalDateTime expiredTime;
   private String crby;
   @DateTimeFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   @JsonFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   private LocalDateTime crtime;
   private String upby;
   @DateTimeFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   @JsonFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   private LocalDateTime uptime;

   public Long getExportId() {
      return this.exportId;
   }

   public String getFileName() {
      return this.fileName;
   }

   public String getFileUrl() {
      return this.fileUrl;
   }

   public Long getFileSize() {
      return this.fileSize;
   }

   public Integer getExportFileState() {
      return this.exportFileState;
   }

   public Integer getExportFileType() {
      return this.exportFileType;
   }

   public Integer getProcess() {
      return this.process;
   }

   public Integer getIfPrivate() {
      return this.ifPrivate;
   }

   public LocalDateTime getFinishTime() {
      return this.finishTime;
   }

   public LocalDateTime getExpiredTime() {
      return this.expiredTime;
   }

   public String getCrby() {
      return this.crby;
   }

   public LocalDateTime getCrtime() {
      return this.crtime;
   }

   public String getUpby() {
      return this.upby;
   }

   public LocalDateTime getUptime() {
      return this.uptime;
   }

   public void setExportId(final Long exportId) {
      this.exportId = exportId;
   }

   public void setFileName(final String fileName) {
      this.fileName = fileName;
   }

   public void setFileUrl(final String fileUrl) {
      this.fileUrl = fileUrl;
   }

   public void setFileSize(final Long fileSize) {
      this.fileSize = fileSize;
   }

   public void setExportFileState(final Integer exportFileState) {
      this.exportFileState = exportFileState;
   }

   public void setExportFileType(final Integer exportFileType) {
      this.exportFileType = exportFileType;
   }

   public void setProcess(final Integer process) {
      this.process = process;
   }

   public void setIfPrivate(final Integer ifPrivate) {
      this.ifPrivate = ifPrivate;
   }

   @JsonFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   public void setFinishTime(final LocalDateTime finishTime) {
      this.finishTime = finishTime;
   }

   @JsonFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   public void setExpiredTime(final LocalDateTime expiredTime) {
      this.expiredTime = expiredTime;
   }

   public void setCrby(final String crby) {
      this.crby = crby;
   }

   @JsonFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   public void setCrtime(final LocalDateTime crtime) {
      this.crtime = crtime;
   }

   public void setUpby(final String upby) {
      this.upby = upby;
   }

   @JsonFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   public void setUptime(final LocalDateTime uptime) {
      this.uptime = uptime;
   }
}
