package com.yida.data.mall.vo.h5;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 账单订单列表返回类
 *
 * @author ZYJ
 * @date 2022/4/1
 */
@Data
@ApiModel(value = "H5BillOrderPageVO", description = "账单订单列表返回类")
public class H5BillOrderPageVO implements Serializable {

    private static final long serialVersionUID = -2192474764982954151L;

    @ApiModelProperty(value = "订单id")
    private Long orderId;

    @ApiModelProperty(value = "账单主键id")
    private Long billId;

    @ApiModelProperty(value = "部门id")
    private Long deptId;

    @ApiModelProperty(value = "部门名称")
    private String deptName;

    @TableField("bill_title")
    private String billTitle;

    @ApiModelProperty(value = "订单状态：0：待付款 1：付款中 2：交易完成（正常支付成功） 3：待退款 4：交易关闭（a:超时未支付,b:退款成功")
    private String orderStatus;

    @ApiModelProperty(value = "支付状态：0：未支付(默认) 1：已支付 2：已退款 3：已取消")
    private String payStatus;

    @ApiModelProperty(value = "订单总金额")
    private BigDecimal totalMoney;

    @ApiModelProperty(value = "实际支付金额")
    private BigDecimal practicalMoney;

    @ApiModelProperty("学生名称")
    private String studentName;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("创建时间")
    private Date createDate;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("支付时间")
    private Date payDate;

    @ApiModelProperty("订单编号")
    private String orderCode;

    @ApiModelProperty("交易流水号")
    private String transactionNumber;

    @ApiModelProperty(value = "支付方式：1：微信，2：支付宝，3：银联，4：其他待定")
    private String payWay;
}