package com.bonus.core.order.weight.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.format.annotation.DateTimeFormat;

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

@Api("纠错退款VO")
public class RefundDetailStateVO {
   @ApiModelProperty("退款主键ID")
   private Long orderRefundId;
   @DateTimeFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   @JsonFormat(
      pattern = "yyyy-MM-dd HH:mm:ss"
   )
   @ApiModelProperty("申请时间")
   private LocalDateTime applyTime;
   @ApiModelProperty("申请理由/原因")
   private String applyReason;
   @ApiModelProperty("订单号")
   private Long orderId;
   @ApiModelProperty("审核状态 1 待审核 2 审核通过 3 拒绝")
   private Integer checkState;
   @ApiModelProperty("退款手续费 分")
   private BigDecimal feeAmount;
   @ApiModelProperty("实际退款金额 分")
   private BigDecimal realRefundAmount;
   @ApiModelProperty("订单下菜品主键ID")
   private Long menuId;

   public Long getOrderRefundId() {
      return this.orderRefundId;
   }

   public LocalDateTime getApplyTime() {
      return this.applyTime;
   }

   public String getApplyReason() {
      return this.applyReason;
   }

   public Long getOrderId() {
      return this.orderId;
   }

   public Integer getCheckState() {
      return this.checkState;
   }

   public BigDecimal getFeeAmount() {
      return this.feeAmount;
   }

   public BigDecimal getRealRefundAmount() {
      return this.realRefundAmount;
   }

   public Long getMenuId() {
      return this.menuId;
   }

   public void setOrderRefundId(final Long orderRefundId) {
      this.orderRefundId = orderRefundId;
   }

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

   public void setApplyReason(final String applyReason) {
      this.applyReason = applyReason;
   }

   public void setOrderId(final Long orderId) {
      this.orderId = orderId;
   }

   public void setCheckState(final Integer checkState) {
      this.checkState = checkState;
   }

   public void setFeeAmount(final BigDecimal feeAmount) {
      this.feeAmount = feeAmount;
   }

   public void setRealRefundAmount(final BigDecimal realRefundAmount) {
      this.realRefundAmount = realRefundAmount;
   }

   public void setMenuId(final Long menuId) {
      this.menuId = menuId;
   }

}
