using System.Collections.Generic;

namespace NPP.SmartSchedue.Api.Contracts.Services.Time.Output;

/// <summary>
/// 批量配置结果
/// </summary>
public class BatchConfigResult
{
    /// <summary>
    /// 是否成功
    /// </summary>
    public bool IsSuccess { get; set; }

    /// <summary>
    /// 成功配置数量
    /// </summary>
    public int SuccessCount { get; set; }

    /// <summary>
    /// 失败配置数量
    /// </summary>
    public int FailureCount { get; set; }

    /// <summary>
    /// 错误信息列表
    /// </summary>
    public List<string> ErrorMessages { get; set; } = new List<string>();

    /// <summary>
    /// 配置详情
    /// </summary>
    public List<ConfigDetail> ConfigDetails { get; set; } = new List<ConfigDetail>();
}

/// <summary>
/// 配置详情
/// </summary>
public class ConfigDetail
{
    /// <summary>
    /// 班次ID
    /// </summary>
    public long ShiftId { get; set; }

    /// <summary>
    /// 规则ID
    /// </summary>
    public long RuleId { get; set; }

    /// <summary>
    /// 是否成功
    /// </summary>
    public bool IsSuccess { get; set; }

    /// <summary>
    /// 错误信息
    /// </summary>
    public string ErrorMessage { get; set; }
} 