package com.rj.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import jakarta.validation.constraints.NotBlank;

/**
 * 客户画像分析请求DTO
 * 
 * @author 李中华
 * @date 2025/1/3
 */
@Data
@Schema(description = "客户画像分析工作流请求参数")
public class CustomerProfileAnalysisRequestDto {

    @NotBlank(message = "对话内容不能为空")
    @Schema(description = "对话内容", example = "客户：你好，我想了解一下沃尔沃XC60这款车。\n顾问：您好！很高兴为您介绍沃尔沃XC60。", required = true)
    private String chat;

    @NotBlank(message = "沟通时间不能为空")
    @Schema(description = "沟通时间", example = "2025-01-03 10:30:00", required = true)
    private String communicateDate;

    @NotBlank(message = "分析场景不能为空")
    @Schema(description = "分析场景", example = "customer_profile_analysis", required = true)
    private String analysisScene;

    @NotBlank(message = "AI分析请求ID不能为空")
    @Schema(description = "AI分析请求ID", example = "ai_req_20250103_001", required = true)
    private String aiAnalysisRequestId;

    @NotBlank(message = "业务ID不能为空")
    @Schema(description = "业务ID：根据分析不同传不同的值 1-unionId 2-通话ID 3-客流ID 4-试驾ID", example = "union_12345", required = true)
    private String businessId;

    @NotBlank(message = "客户流程ID不能为空")
    @Schema(description = "客户流程ID", example = "flow_67890", required = true)
    private String customerFlowId;

    @NotBlank(message = "业务类型不能为空")
    @Schema(description = "业务类型", example = "wechat_chat", required = true)
    private String businessType;
}
