package com.zm.order.tool.server.response;

import com.alibaba.fastjson.JSON;
import io.swagger.annotations.ApiModelProperty;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @Description 退款单详情VO
 * @Author: ph
 * @Date: 2019/10/24 15:40
 */
public class RefundDetailVO extends RefundVO {

    private static final long serialVersionUID = -7792663520724920873L;

    @ApiModelProperty("主键")
    private Long id;

    @ApiModelProperty("退款类型")
    private Integer refundType;

    @ApiModelProperty("下单时间")
    private Date orderAt;

    @ApiModelProperty("支付方式")
    private Integer payType;

    @ApiModelProperty("店内单号")
    private String storeOrderNo;

    @ApiModelProperty("用户备注")
    private String buyerRemarks;

    @ApiModelProperty("商品列表")
    private List<RefundItemVO> refundItemList;

    @ApiModelProperty("扩展信息")
    private Map<String, Object> extraMap;

    @ApiModelProperty("退款单详情")
    private Map<String, Object> refundAmountDetailsMap;

    @Override
    public Long getId() {
        return id;
    }

    @Override
    public void setId(Long id) {
        this.id = id;
    }


    public Date getOrderAt() {
        return orderAt;
    }

    public void setOrderAt(Date orderAt) {
        this.orderAt = orderAt;
    }

    public Integer getPayType() {
        return payType;
    }

    public void setPayType(Integer payType) {
        this.payType = payType;
    }

    public String getStoreOrderNo() {
        return storeOrderNo;
    }

    public void setStoreOrderNo(String storeOrderNo) {
        this.storeOrderNo = storeOrderNo;
    }

    public String getBuyerRemarks() {
        return buyerRemarks;
    }

    public void setBuyerRemarks(String buyerRemarks) {
        this.buyerRemarks = buyerRemarks;
    }

    public List<RefundItemVO> getRefundItemList() {
        return refundItemList;
    }

    public void setRefundItemList(List<RefundItemVO> refundItemList) {
        this.refundItemList = refundItemList;
    }

    public Map<String, Object> getExtraMap() {
        return extraMap;
    }

    public void setExtraMap(Map<String, Object> extraMap) {
        this.extraMap = extraMap;
    }

    public Map<String, Object> getRefundAmountDetailsMap() {
        return refundAmountDetailsMap;
    }

    public void setRefundAmountDetailsMap(Map<String, Object> refundAmountDetailsMap) {
        this.refundAmountDetailsMap = refundAmountDetailsMap;
    }

    public Integer getRefundType() {
        return refundType;
    }

    public void setRefundType(Integer refundType) {
        this.refundType = refundType;
    }

    @Override
    public String toString() {
        return JSON.toJSONString(this);
    }
}
