package com.ruoyi.system.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.persistence.GeneratedValue;
import java.util.List;

/**
 * 规格组对象 food_specs
 * 门店级可复用规格维度（如 甜度、加料）
 *
 * @author ruoyi
 * @date 2026-07-15
 */
@Data
@TableName(value = "food_specs")
@EqualsAndHashCode(callSuper = false)
public class FoodSpecs
{
    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    @GeneratedValue
    /** id */
    private Long id;

    /** 规格名（如 甜度） */
    @Excel(name = "规格名")
    private String title;

    /** 选择类型：1=单选 2=多选 */
    @Excel(name = "选择类型")
    private String type;

    /** 是否必选：1=必选 2=可选 */
    @Excel(name = "是否必选")
    private String state;

    /** 语言 */
    @Excel(name = "语言")
    private String language;

    /** 备注 */
    private String remark;

    /** 所属门店id */
    @Excel(name = "门店id")
    private Long mdId;

    /** 排序 */
    private Integer sort;

    /** 是否启用 */
    @TableField(value = "is_open")
    private Boolean isOpen;

    /** 软删除标记 */
    @TableField(value = "is_delete")
    private Boolean isDelete;

    /** 规格值列表（不入库，保存时作入参、查询时作出参） */
    @TableField(exist = false)
    private List<FoodSpecsValue> objects;
}
