
package com.tmerclub.cloud.order.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 我的订单
 *
 * @author tmerclub
 */
@Data
@ToString
@Schema(description = "我的订单")
public class MyOrderVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    @Schema(description = "订单项", requiredMode = Schema.RequiredMode.REQUIRED)
    private List<MyOrderItemVO> orderItems;

    @Schema(description = "订单号", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long orderId;

    @Schema(description = "总价", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long actualTotal;

    @Schema(description = "使用积分", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long orderScore;

    @Schema(description = "订单状态", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer status;

    @Schema(description = "订单类型(0普通订单 1团购订单 2秒杀订单)", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer orderType;

    @Schema(description = "退款单类型（1:整单退款,2:单个物品退款）", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer refundType;

    @Schema(description = "处理退款状态:(1.买家申请 2.卖家接受 3.买家发货 4.卖家收货 5.退款成功  -1.退款关闭)", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer returnMoneySts;

    @Schema(description = "配送类型 1:快递 2:自提 3：无需快递", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer deliveryType;

    @Schema(description = "店铺名称", requiredMode = Schema.RequiredMode.REQUIRED)
    private String shopName;

    @Schema(description = "店铺id", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long shopId;

    @Schema(description = "订单运费", requiredMode = Schema.RequiredMode.REQUIRED)
    private Long freightAmount;

    @Schema(description = "订单创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    private Date createTime;

    @Schema(description = "商品总数", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer allCount;

    @Schema(description = "用户备注信息")
    private String remarks;

    @Schema(description = "自提点id")
    private Long stationId;

}
