package com.haha.common.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 订单详情展示对象
 */
@Data
public class OrderVO {
    private Long id;
    private String orderNo;
    private String orderName;
    private String outTradeNo;
    private String activityId;
    private String deviceId;
    
    /** 订单总金额（原价） */
    private BigDecimal totalAmount;
    
    /** 订单优惠金额（营销活动优惠 + 优惠券优惠） */
    private BigDecimal discountAmount;
    
    /** 实付总金额 = total_amount - discount_amount */
    private BigDecimal paidAmount;
    
    private String payStatus;
    private String payStatusLabel;
    private Integer status;
    private String statusText;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private LocalDateTime createTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private LocalDateTime payTime;
    private String videoUrl;
    private BigDecimal confidence;
    private List<OrderItemVO> products;

    /** 门店名称 */
    private String shopName;

    /** 设备名称 */
    private String deviceName;

    /** 支付方式 */
    private String payType;

    /** 用户消费标签：new-新用户, regular-老用户, frequent-常客 */
    private String userTag;

    /** 用户消费标签中文描述 */
    private String userTagLabel;
}
