package shop.alien.entity.store.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import shop.alien.entity.store.StoreStaffConfig;

import java.io.Serializable;
import java.util.List;

/**
 * 员工详情（包含演出列表）VO
 * 用于返回员工基本信息和演出安排列表
 *
 * @author system
 * @since 2025-01-XX
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
@ApiModel(value = "StoreStaffDetailWithPerformanceVo对象", description = "员工详情（包含演出列表）")
public class StoreStaffDetailWithPerformanceVo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 员工基本信息
     */
    @ApiModelProperty(value = "员工基本信息")
    private StoreStaffConfig staffInfo;

    /**
     * 演出安排列表
     */
    @ApiModelProperty(value = "演出安排列表")
    private List<PerformanceScheduleVo> performanceScheduleList;

    /**
     * 是否今日演出（true-今日有演出，false-今日无演出）
     */
    @ApiModelProperty(value = "是否今日演出（true-今日有演出，false-今日无演出）")
    private Boolean hasPerformanceToday;

    /**
     * 是否喜欢（true-已喜欢，false-未喜欢）
     * 根据当前登录用户的token中的userid判断
     */
    @ApiModelProperty(value = "是否喜欢（true-已喜欢，false-未喜欢）")
    private Boolean isLiked;

    /**
     * 店铺名称
     */
    @ApiModelProperty(value = "店铺名称")
    private String storeName;

    /**
     * 店铺电话
     */
    @ApiModelProperty(value = "店铺电话")
    private String storePhone;
}

