package com.ylx.project.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.ylx.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

@EqualsAndHashCode(callSuper = true)
@Data
@TableName("project")
public class Project extends BaseEntity {

    private static final long serialVersionUID = -7825952120084009270L;

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

    @ApiModelProperty("服务标签（1：按摩 2：陪玩）")
    private Integer type;

    @ApiModelProperty("服务类目ID")
    private Integer categoryId;

    @ApiModelProperty("标题")
    private String title;

    @ApiModelProperty("封面图")
    private String cover;

    @ApiModelProperty("标注价格（现价）")
    private BigDecimal price;

    @ApiModelProperty("市场参考价(起)")
    private BigDecimal priceMin;

    @ApiModelProperty("市场参考价(止)")
    private BigDecimal priceMax;

    @ApiModelProperty("商户分佣比例")
    private BigDecimal merchantShareRatio;

    @ApiModelProperty("标时")
    private Integer standardDuration;

    @ApiModelProperty("计量单位（字典数据）")
    private Integer unitType;

    @ApiModelProperty("状态: 0=上架, 1=下架")
    private Integer status;

    @ApiModelProperty("是否推荐：0=否，1=是")
    private Integer isRecommended;

    @ApiModelProperty("价格是否自定义：0=否，1=是")
    private Integer isPriceCustom;

    @ApiModelProperty("项目亮点：关联亮点字典表的ID集合")
    private String highlightIds;

    @ApiModelProperty("项目亮点前端展示")
    private String highlight;

    @ApiModelProperty("适用人群")
    private String targetAudience;

    @ApiModelProperty("前端展示排序")
    private Long sortOrder;

    @ApiModelProperty("是否删除0否1是")
    @TableField("is_delete")
    @TableLogic
    private Integer isDelete;

    @ApiModelProperty("项目详情 富文本")
    private String detail;

    @ApiModelProperty("已完成有效订单总数（冗余，用于热门排序）")
    private Long salesCompleted;

}
