package com.ylx.home.hot.domain.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;

/**
 * 首页热门推荐混合卡片VO
 * cardType=1：技师商户卡片（左图原型）
 * cardType=2：服务项目卡片（右图原型）
 */
@Data
@ApiModel("热门推荐卡片VO")
public class HotRecommendVO {

    // ===================== 通用字段（两种卡片都有） =====================
    @ApiModelProperty(value = "卡片类型：1=商户，2=服务项目")
    private Integer cardType;

    @ApiModelProperty(value = "封面图", notes = "商户=技师头像/形象照，项目=服务封面")
    private String coverImg;

    // ===================== 【cardType=1 商户专属字段】原型左侧卡片 =====================
    @ApiModelProperty(value = "商户ID", notes = "cardType=1生效")
    private Integer techId;

    @ApiModelProperty(value = "商户名称/昵称")
    private String teNickName;

    @ApiModelProperty(value = "商户评分")
    private Integer nStar;

    @ApiModelProperty(value = "已服务订单总数")
    private Integer serviceCount;

    @ApiModelProperty(value = "距离用户距离")
    private String distance;

    @ApiModelProperty(value = "服务标签集合")
    private List<String> tagList;

    // ===================== 【cardType=2 项目专属字段】原型右侧卡片 =====================
    @ApiModelProperty(value = "项目ID", notes = "cardType=2生效")
    private Integer projectId;

    @ApiModelProperty(value = "项目标题")
    private String projectTitle;

    @ApiModelProperty(value = "项目描述亮点")
    private String highlight;

    @ApiModelProperty(value = "服务时长文案")
    private String durationText;

    @ApiModelProperty(value = "起步标价")
    private BigDecimal priceMin;

    @ApiModelProperty(value = "总已售下单量")
    private Long salesCount;

    @ApiModelProperty(value = "服务标签: 1=按摩 2=同城陪玩")
    private Integer type;
}
