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

import java.util.Date;

import com.bonus.canteen.core.common.utils.FileUrlUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.bonus.common.core.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
import com.bonus.common.core.web.domain.BaseEntity;

/**
 * 食堂信息对象 alloc_canteen
 * 
 * @author xsheng
 * @date 2025-04-03
 */


@Data
@ToString
public class AllocCanteen extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 是否分页 */
    private boolean pagenation;

    /** 主键id */
    private Long canteenId;

    /** 食堂名称 */
    @Excel(name = "食堂名称")
    @ApiModelProperty(value = "食堂名称")
    private String canteenName;

    /** 区域id */
    @Excel(name = "区域id")
    @ApiModelProperty(value = "区域id")
    private Long areaId;

    /** 当前区域名称 */
    @Excel(name = "当前区域名称")
    @ApiModelProperty(value = "当前区域名称")
    private String areaName;

    /** 食堂业务类型 1-食堂 2-超市 */
    @Excel(name = "食堂业务类型 1-食堂 2-超市")
    @ApiModelProperty(value = "食堂业务类型 1-食堂 2-超市")
    private Integer canteenType;

    /** 负责人 */
    @Excel(name = "负责人")
    @ApiModelProperty(value = "负责人")
    private String director;

    /** 联系电话 */
    @Excel(name = "联系电话")
    @ApiModelProperty(value = "联系电话")
    private String contactTel;

    /** 食堂营业状态 1-休息 2-营业 */
    @Excel(name = "食堂营业状态 1-休息 2-营业")
    @ApiModelProperty(value = "食堂营业状态 1-休息 2-营业")
    private Integer businessState;

    /** 营业时间 */
    @ApiModelProperty(value = "营业时间")
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "营业时间", width = 30, dateFormat = "HH:mm:ss")
    private Date startBusinessTime;

    /** 营业时间 */
    @ApiModelProperty(value = "营业时间")
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "营业时间", width = 30, dateFormat = "HH:mm:ss")
    private Date endBusinessTime;

    /** 食堂图片链接 */
    @Excel(name = "食堂图片链接")
    @ApiModelProperty(value = "食堂图片链接")
    private String imgUrl;

    /** 是否启用支付配置 */
    @Excel(name = "是否启用支付配置")
    @ApiModelProperty(value = "是否启用支付配置")
    private Integer ifEnablePay;

    /** 支付方式(多个数据之间 使用,分隔) */
    @Excel(name = "支付方式(多个数据之间 使用,分隔)")
    @ApiModelProperty(value = "支付方式(多个数据之间 使用,分隔)")
    private String payTypes;

    /** 是否启用配送配置 */
    @Excel(name = "是否启用配送配置")
    @ApiModelProperty(value = "是否启用配送配置")
    private Integer ifEnableDelivery;

    /** 配送方式(多个数据之间 使用,分隔) */
    @Excel(name = "配送方式(多个数据之间 使用,分隔)")
    @ApiModelProperty(value = "配送方式(多个数据之间 使用,分隔)")
    private String deliveries;

    /** 是否启用点餐配置 */
    @Excel(name = "是否启用点餐配置")
    @ApiModelProperty(value = "是否启用点餐配置")
    private Integer ifEnableOrder;

    /** 是否支持报餐 */
    @Excel(name = "是否支持报餐")
    @ApiModelProperty(value = "是否支持报餐")
    private Integer ifBook;

    /** 是否支持预定餐 */
    @Excel(name = "是否支持预定餐")
    @ApiModelProperty(value = "是否支持预定餐")
    private Integer ifReserve;

    /** 是否启用收款码 默认:否 */
    @Excel(name = "是否启用收款码 默认:否")
    @ApiModelProperty(value = "是否启用收款码 默认:否")
    private Integer ifEnablePayCode;

    /** 食堂收款码链接 */
    @Excel(name = "食堂收款码链接")
    @ApiModelProperty(value = "食堂收款码链接")
    private String payCodeUrl;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    public String getImgUrl() {
        return FileUrlUtil.getFileUrl(this.imgUrl);
    }
}
