package cn.iocoder.yudao.module.member.controller.admin.storeorder.vo;

import cn.iocoder.yudao.module.member.controller.app.storeorder.vo.AppStoreOrderDetailVo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

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

@Schema(description = "管理后台 - 商品订单 Response VO")
@Data
@ExcelIgnoreUnannotated
public class StoreOrderRespVO {

    @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "22788")
    @ExcelProperty("编号")
    private Integer orderId;

    @Schema(description = "读取卡号")
    @ExcelProperty("读取卡号")
    private String cardNumber;

    @Schema(description = "人脸", example = "16087")
    @ExcelProperty("人脸")
    private Integer openId;

    @Schema(description = "数量")
    @ExcelProperty("数量")
    private Integer number;

    @Schema(description = "设备ID")
    @ExcelProperty("设备ID")
    private String equipmentCode;

    @Schema(description = "离线缓存ID", example = "11946")
    @ExcelProperty("离线缓存ID")
    private String uuid;

    @Schema(description = "总价钱", example = "1722")
    @ExcelProperty("总价钱")
    private Double totalPrice;

    @Schema(description = "创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @Schema(description = "用户ID")
    @ExcelProperty("用户")
    private Long userId;

    @Schema(description = "门店", example = "1722")
    private String storesName;

    @Schema(description = "订单详情")
    private List<AppStoreOrderDetailVo> detailDOS;

    private Long carteenId;

    /**
     * （1-已支付，2-已完成，3-已取消，4-已退款）
     */
    private Integer status;

    /**
     * 减免金额
     */
    private Double reductionPrice;

    /**
     * 原价
     */
    private Double originalPrice;

    /**
     * 折扣
     */
    private BigDecimal discountNum;

}