package top.tqx.demo_1.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

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

@Data
public class KBRouteResponse implements Serializable {
    
    private static final long serialVersionUID = 1L;
    
    @JsonProperty("query")
    private String query;
    
    @JsonProperty("user_role")
    private String userRole;
    
    @JsonProperty("user_department")
    private String userDepartment;
    
    @JsonProperty("target_collections")
    private List<String> targetCollections;
    
    @JsonProperty("intent")
    private IntentData intent;
    
    @Data
    public static class IntentData implements Serializable {
        private static final long serialVersionUID = 1L;
        
        @JsonProperty("is_general")
        private Boolean isGeneral;
        
        @JsonProperty("department")
        private String department;
        
        @JsonProperty("confidence")
        private Double confidence;
        
        @JsonProperty("keywords")
        private List<String> keywords;
        
        @JsonProperty("reason")
        private String reason;
    }
}
