package com.bonus.canteen.core.menu.domain;

import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.bonus.common.core.annotation.Excel;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
import com.bonus.common.core.web.domain.BaseEntity;

/**
 * 菜品计划信息对象 menu_recipe
 *
 * @author xsheng
 * @date 2025-04-03
 */

import java.time.LocalDateTime;
@Data
@TableName("menu_recipe")
@ApiModel("菜品计划信息")
public class MenuRecipe {
    @TableId
    @ApiModelProperty("主键id")
    private Long id;
    @ApiModelProperty("菜谱id")
    private Long recipeId;
    @ApiModelProperty("菜谱类型 1 默认 3按周")
    private Integer recipeType;
    @ApiModelProperty("菜品计划id(数据同步)")
    private String planId;
    @ApiModelProperty("菜谱名称")
    private String recipeName;
    @ApiModelProperty("食堂id")
    private Long canteenId;

    @ApiModelProperty("档口id")
    @TableField(exist = false)
    private List<String> canteenIds;

    /** 档口id */
    @Excel(name = "档口id")
    @ApiModelProperty(value = "档口id")
    private Long stallId;
//    @ApiModelProperty("适用人员范围")
//    private Long effId;
//    @ApiModelProperty("删除标识")
//    private Integer delFlag;
    @ApiModelProperty("乐观锁")
    private Integer revision;
    @ApiModelProperty("创建人")
    private String createBy;
    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;
    @ApiModelProperty("更新人")
    private String updateBy;
    @ApiModelProperty("更新时间")
    private LocalDateTime updateTime;
    @ApiModelProperty("isDefault")
    private Integer isDefault;
    @ApiModelProperty("effectDate")
    private String effectDate;
    @ApiModelProperty("expireDate")
    private String expireDate;
    @ApiModelProperty("enableFlag")
    private Integer enableFlag;
    @ApiModelProperty("remark")
    private Integer remark;

    @TableField(exist = false)
    private List<String> stallIds;
    @TableField(exist = false)
    private List<String> areaIds;
    @TableField(exist = false)
    private Long areaId;

    /** 乐观锁 */
    @TableField(exist = false)
    @ApiModelProperty(value = "选择日期")
    private String applyDate;

    @TableField(exist = false)
    @ApiModelProperty(value = "设备类型")
    private String key;

    @TableField(exist = false)
    @ApiModelProperty("设备类型")
    private List<Integer> deviceTypeList;
    @TableField(exist = false)
    @ApiModelProperty("菜谱绑定类型")
    private Integer bindType;

}
