package org.xyzh.api.bidding.dto;

import lombok.Data;
import lombok.EqualsAndHashCode;
import org.xyzh.common.dto.BaseDTO;
import io.swagger.v3.oas.annotations.media.Schema;

/**
 * 投标文件DTO
 * 用于创建和更新投标文件
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Schema(description = "投标文件DTO")
public class BidResponseDTO extends BaseDTO {
    private static final long serialVersionUID = 1L;
    
    @Schema(description = "响应文件ID（更新时需要）")
    private String responseId;
    
    @Schema(description = "所属项目ID")
    private String projectId;
    
    @Schema(description = "响应类型：technical-技术标/commercial-商务标/comprehensive-综合标")
    private String responseType;
    
    @Schema(description = "文档名称")
    private String docName;
    
    @Schema(description = "文档大纲")
    private String outline;
    
    @Schema(description = "文档内容")
    private String content;
    
    @Schema(description = "生成方式：ai-AI生成/template-模板生成/manual-人工编写")
    private String generationMethod;
    
    @Schema(description = "使用的模板ID")
    private String templateId;
    
    @Schema(description = "使用的AI模型")
    private String aiModel;
    
    @Schema(description = "生成状态：draft-草稿/reviewing-审核中/approved-已批准/rejected-已拒绝/submitted-已提交")
    private String generationStatus;
    
    @Schema(description = "版本号")
    private Integer version;
    
    @Schema(description = "父版本ID")
    private String parentVersionId;
    
    @Schema(description = "审核意见")
    private String reviewComments;
}
