package com.unicorn.hgzero.ai.biz.domain;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 제안사항 도메인 모델
 * AI가 제안하는 논의사항 또는 결정사항
 */
@Getter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Suggestion {

    /**
     * 제안 ID
     */
    private String id;

    /**
     * 제안 유형 (DISCUSSION, DECISION)
     */
    private SuggestionType type;

    /**
     * 제안 내용
     */
    private String content;

    /**
     * 우선순위 (HIGH, MEDIUM, LOW)
     */
    private String priority;

    /**
     * 제안 이유
     */
    private String reason;

    /**
     * 신뢰도 점수 (0-1)
     */
    private Double confidence;

    /**
     * 관련 안건
     */
    private String relatedAgenda;

    /**
     * 예상 소요 시간 (분)
     */
    private Integer estimatedTime;

    /**
     * 참여자 목록 (결정사항인 경우)
     */
    private List<String> participants;

    /**
     * 카테고리 (결정사항인 경우: 기술, 일정, 리소스, 정책, 기타)
     */
    private String category;

    /**
     * 원문 발췌 (결정사항인 경우)
     */
    private String extractedFrom;

    /**
     * 배경 설명 (결정사항인 경우)
     */
    private String context;

    /**
     * 제안 유형
     */
    public enum SuggestionType {
        DISCUSSION,  // 논의사항
        DECISION     // 결정사항
    }
}
