package com.qqchen.deploy.backend.deploy.dto;

import com.qqchen.deploy.backend.framework.dto.BaseDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 团队环境通知配置DTO
 *
 * @author qqchen
 * @since 2025-11-11
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class TeamEnvironmentNotificationConfigDTO extends BaseDTO {

    /**
     * 团队ID
     */
    private Long teamId;

    /**
     * 环境ID
     */
    private Long environmentId;

    /**
     * 通知渠道ID
     */
    private Long notificationChannelId;

    /**
     * 是否启用审批前提醒
     */
    private Boolean preApprovalNotificationEnabled;

    /**
     * 审批前提醒模板ID
     */
    private Long preApprovalNotificationTemplateId;

    /**
     * 是否启用构建通知
     */
    private Boolean buildNotificationEnabled;

    /**
     * 构建通知模板ID
     */
    private Long buildNotificationTemplateId;

    /**
     * 构建失败时是否发送日志文件
     */
    private Boolean buildFailureFileEnabled;

    // ===== 扩展字段（非数据库字段） =====

    /**
     * 通知渠道名称（扩展字段，非数据库字段）
     */
    private String notificationChannelName;

    /**
     * 审批前提醒模板名称（扩展字段，非数据库字段）
     */
    private String preApprovalNotificationTemplateName;

    /**
     * 构建通知模板名称（扩展字段，非数据库字段）
     */
    private String buildNotificationTemplateName;
}
