package com.jeesharp.business.modules.member.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

/**
 * 会员收藏切换请求 DTO（收藏/取消收藏共用入参）。
 *
 * @author jeesharp
 * @since 2026-05-20
 */
@Data
@Schema(description = "收藏切换请求")
public class MemberFavoriteToggleDTO {

    @NotBlank(message = "业务类型不能为空")
    @Schema(description = "业务类型：route/poi/topic/product", requiredMode = Schema.RequiredMode.REQUIRED)
    private String bizType;

    @NotBlank(message = "业务ID不能为空")
    @Schema(description = "业务对象ID", requiredMode = Schema.RequiredMode.REQUIRED)
    private String bizId;

    @NotBlank(message = "标题不能为空")
    @Schema(description = "标题快照", requiredMode = Schema.RequiredMode.REQUIRED)
    private String title;

    @Schema(description = "副标题快照")
    private String subtitle;

    @Schema(description = "封面快照")
    private String cover;

    @Schema(description = "小程序跳转路径")
    private String jumpPath;
}
