package com.bonus.canteen.core.order.domain.vo;

import com.bonus.common.core.annotation.Excel;
import com.bonus.common.core.web.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.time.LocalDate;
import java.util.Date;

/**
 * 订单购物车对象 order_shopping_cart
 * 
 * @author ruoyi
 * @date 2025-04-14
 */
@Data
public class OrderCartVO extends BaseEntity
{

    /** 主键 */
    private Long cartId;

    /** 人员id */
    @Excel(name = "人员id")
    private Long userId;

    /** 菜谱id */
    @Excel(name = "菜谱id")
    private Long recipeId;

    /** 食堂id */
    @Excel(name = "食堂id")
    private Long canteenId;

    /** 档口id */
    @Excel(name = "档口id")
    private Long stallId;

    /** 商品菜品id */
    @Excel(name = "商品菜品id")
    private Long goodsId;

    /** 商品菜品名称 */
    @Excel(name = "商品菜品名称")
    private String goodsName;

    /** 商品菜品图片路径 */
    @Excel(name = "商品菜品图片路径")
    private String goodsImgUrl;

    /** 数量/重量 */
    @Excel(name = "数量/重量")
    private Integer quantity;

    /** 订单类型 */
    @Excel(name = "订单类型")
    private Integer orderType;

    /** 明细类别 1 菜品 2 套餐 3 商品 4 按键 5 补扣 6 报餐 */
    @Excel(name = "明细类别 1 菜品 2 套餐 3 商品 4 按键 5 补扣 6 报餐")
    private Integer detailType;

    /** 订单日期 yyyy-MM-dd */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "订单日期 yyyy-MM-dd", width = 30, dateFormat = "yyyy-MM-dd")
    private LocalDate orderDate;

    /** 餐次类型 1-早餐 2-午餐 3-晚餐 4-下午茶 5-夜宵 */
    @Excel(name = "餐次类型 1-早餐 2-午餐 3-晚餐 4-下午茶 5-夜宵")
    private Integer mealtimeType;

    @Excel(name = "餐次类型 0-已失效 1-未失效")
    private Integer isValid;
}
