package com.ruoyi.app.order.dto;

import com.ruoyi.common.annotation.Excel;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

@Data
public class OrderCreateInput {
    private static final long serialVersionUID = 1L;

    /** 订单号 */
    private String ddId;
    /** 收货地址id */
    private Long shdzId;
    /**
     * 订单类型：0外送，1自取，2堂食
     */
    private Long type;
    /** 订单总金额(分) */

    private Long totalAmount;


    /** 总优惠金额(分) */

    //private Long totalDiscount;

    /** 实际支付金额(分) */

    private Long actualPayAmount;

    /** 支付方式 */

    private String paymentMethod;

    /** 餐桌码ID，关联 table_qrcode.id */
    private Long tableId;

    private String tableNo;
    /** 整单备注 */
    private String remarks;

    /** 自取时间 */
    private String pickUpTime;
    /** 自取预留电话 */
    private String reservePhone;

    /** === 发票意图（下单时选，出餐自动开票；010 Phase 11）=== */
    /** 发票选择 PAPER个人纸本(默认)/PHONE_BARCODE手机条码/CITIZEN自然人凭证/MEMBER会员载具/LOVE_CODE捐赠/COMPANY公司 */
    private String invoiceChoice;
    /** 载具类型 0手机条码/1自然人凭证（PHONE_BARCODE/CITIZEN 时填） */
    private String carrierType;
    /** 载具号码（PHONE_BARCODE/CITIZEN 时填） */
    private String carrierNum;
    /** 公司统编 8位（COMPANY 时填） */
    private String buyerUbn;
    /** 公司名称（COMPANY 时填，作为发票买方名） */
    private String buyerName;
    /** 买方邮箱（COMPANY 公司发票必填，ezPay 发开立通知给买方） */
    private String buyerEmail;
    /** 捐赠码 3-7位（LOVE_CODE 时填） */
    private String loveCode;
    /** 是否将该载具/统编存为默认抬头（true 写 info_invoice 并标记默认） */
    private Boolean saveAsDefault;

    private List<OrderCreatItem> items;
}
