package shop.alien.entity.store;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 八大类团购子表
 * </p>
 *
 * @author ssk
 * @since 2025-05-22
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="StoreGroupInfo对象", description="八大类团购子表")
public class StoreGroupInfo extends Model<StoreGroupInfo> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "团购id")
    @TableField("group_id")
    private Integer groupId;

    @ApiModelProperty(value = "面积")
    @TableField("area")
    private Double area;

    @ApiModelProperty(value = "床尺寸code")
    @TableField("bed_size_code")
    private String bedSizeCode;

    @ApiModelProperty(value = "床尺寸")
    @TableField("bed_size")
    private Double bedSize;

    @ApiModelProperty(value = "床数量")
    @TableField("bed_num")
    private Integer bedNum;

    @ApiModelProperty(value = "窗：0：否，1：是")
    @TableField("window_flag")
    private Integer windowFlag;

    @ApiModelProperty(value = "独立卫生间： 0：否，1：是")
    @TableField("bathroom_flag")
    private Integer bathroomFlag;

    @ApiModelProperty(value = "wifi： 0：否，1：是")
    @TableField("wifi_flag")
    private Integer wifiFlag;

    @ApiModelProperty(value = "早餐： 0：否，1：是")
    @TableField("breakfast_flag")
    private Integer breakfastFlag;

    @ApiModelProperty(value = "起始楼层")
    @TableField("floor_str")
    private String floorStr;

    @ApiModelProperty(value = "最低楼层")
    @TableField("floor_end")
    private String floorEnd;

    @ApiModelProperty(value = "居住人数")
    @TableField("residence_num")
    private Integer residenceNum;

    @ApiModelProperty(value = "吸烟：0：否，1：是")
    @TableField("smoking_flag")
    private Integer smokingFlag;

    @ApiModelProperty(value = "删除状态")
    @TableField("delete_flag")
    @TableLogic
    private Integer deleteFlag;

    @ApiModelProperty(value = "创建时间")
    @TableField(value = "created_time", fill = FieldFill.INSERT)
    private Date createdTime;

    @ApiModelProperty(value = "更新时间")
    @TableField(value = "updated_time", fill = FieldFill.INSERT_UPDATE)
    private Date updatedTime;

    @ApiModelProperty(value = "创建人ID")
    @TableField(value = "created_user_id", fill = FieldFill.INSERT)
    private Integer createdUserId;

    @ApiModelProperty(value = "修改人ID")
    @TableField(value = "updated_user_id", fill = FieldFill.INSERT_UPDATE)
    private Integer updatedUserId;

    @ApiModelProperty(value = "类别")
    @TableField("category")
    private String category;

    @ApiModelProperty(value = "服务名称")
    @TableField("service_name")
    private String serviceName;

    @ApiModelProperty(value = "数量")
    @TableField("num")
    private Integer num;

    @ApiModelProperty(value = "价格")
    @TableField("price")
    private BigDecimal price;

    @ApiModelProperty(value = "分组名")
    @TableField("group_name")
    private String groupName;

    @ApiModelProperty(value = "时长")
    @TableField("duration")
    private String duration;

    @ApiModelProperty(value = "具体描述")
    @TableField("specific_description")
    private String specificDescription;

    @ApiModelProperty(value = "品牌")
    @TableField("brand")
    private String brand;

    @ApiModelProperty(value = "适用发长")
    @TableField("applicable_hair_length")
    private String applicableHairLength;

    @ApiModelProperty(value = "颜色")
    @TableField("colour")
    private String colour;

    @ApiModelProperty(value = "造型")
    @TableField("styling")
    private String styling;

    @ApiModelProperty(value = "封层")
    @TableField("sealing_layer")
    private String sealingLayer;

    @ApiModelProperty(value = "饰品说明")
    @TableField("accessory_description")
    private String accessoryDescription;

    @ApiModelProperty(value = "甲片类型")
    @TableField("nail_plate_type")
    private String nailPlateType;

    @ApiModelProperty(value = "甲片数量")
    @TableField("nail_plate_num")
    private String nailPlateNum;

    @ApiModelProperty(value = "服务内容")
    @TableField("service_content")
    private String serviceContent;

    @ApiModelProperty(value = "服务功效")
    @TableField("service_efficacy")
    private String serviceEfficacy;

    @ApiModelProperty(value = "适用范围")
    @TableField("application_scope")
    private String applicationScope;

    @ApiModelProperty(value = "售后")
    @TableField("after_sales_service")
    private String afterSalesService;

    @ApiModelProperty(value = "体验内容")
    @TableField("experience_the_content")
    private String experienceTheContent;

    @ApiModelProperty(value = "适用人群")
    @TableField("applicable_population")
    private String applicablePopulation;

    @ApiModelProperty(value = "课程功效")
    @TableField("course_efficacy")
    private String courseEfficacy;

    @ApiModelProperty(value = "场地")
    @TableField("venue")
    private String venue;

    @ApiModelProperty(value = "课程分类")
    @TableField("course_classification")
    private String courseClassification;

    @ApiModelProperty(value = "课程人数")
    @TableField("course_enrollment")
    private String courseEnrollment;

    @ApiModelProperty(value = "附加权益")
    @TableField("additional_benefits")
    private String additionalBenefits;

    @ApiModelProperty(value = "剂量范围")
    @TableField("dose_range")
    private String doseRange;

    @ApiModelProperty(value = "型号")
    @TableField("model")
    private String model;

    @ApiModelProperty(value = "性别")
    @TableField("gender")
    private String gender;

    @ApiModelProperty(value = "仪器")
    @TableField("instrument")
    private String instrument;

    @ApiModelProperty(value = "单位")
    @TableField("unit")
    private String unit;

    @ApiModelProperty(value = "sonOrder")
    @TableField("son_order")
    private Integer sonOrder;

    @ApiModelProperty(value = "fatherOrder")
    @TableField("father_order")
    private Integer fatherOrder;


    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
