package org.xyzh.api.workcase.vo;

import lombok.Data;
import lombok.EqualsAndHashCode;
import org.xyzh.common.vo.BaseVO;
import io.swagger.v3.oas.annotations.media.Schema;
import java.util.List;

/**
 * 客服人员配置VO
 * 用于前端展示客服人员信息
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Schema(description = "客服人员配置VO")
public class CustomerServiceVO extends BaseVO {
    private static final long serialVersionUID = 1L;
    
    @Schema(description = "员工ID（关联sys用户ID）")
    private String userId;
    
    @Schema(description = "员工姓名")
    private String username;
    
    @Schema(description = "员工工号")
    private String userCode;
    
    @Schema(description = "员工头像")
    private String avatar;
    
    @Schema(description = "状态：online-在线 busy-忙碌 offline-离线")
    private String status;
    
    @Schema(description = "状态名称")
    private String statusName;
    
    @Schema(description = "技能标签")
    private List<String> skillTags;
    
    @Schema(description = "最大并发接待数")
    private Integer maxConcurrent;
    
    @Schema(description = "当前工作量")
    private Integer currentWorkload;
    
    @Schema(description = "累计服务次数")
    private Integer totalServed;
    
    @Schema(description = "平均响应时间（秒）")
    private Integer avgResponseTime;
    
    @Schema(description = "平均响应时间（格式化）")
    private String avgResponseTimeFormatted;
    
    @Schema(description = "满意度评分（0-5）")
    private Double satisfactionScore;
    
    @Schema(description = "是否可接待（工作量未满）")
    private Boolean isAvailable;
}
