using System.Collections.Generic;

namespace CounterDrone.Core.Models
{
    /// <summary>想定完整配置（聚合 5 步配置）</summary>
    public class TaskFullConfig
    {
        public SimTask Task { get; set; } = new();
        public CombatScene Scene { get; set; } = new();
        public List<ControlZone> ControlZones { get; set; } = new();
        public List<TargetConfig> Targets { get; set; } = new();
        public List<EquipmentDeployment> Equipment { get; set; } = new();
        public CloudDispersal Cloud { get; set; } = new();
        /// <summary>多编队航路（多批次支持）</summary>
        public List<RoutePlan> Routes { get; set; } = new();
        /// <summary>按 GroupId 分组的航路点</summary>
        public Dictionary<string, List<Waypoint>> WaypointGroups { get; set; } = new();
    }

    /// <summary>分页结果</summary>
    public class PagedResult<T>
    {
        public List<T> Items { get; set; } = new();
        public int TotalCount { get; set; }
        public int Page { get; set; }
        public int PageSize { get; set; }
        public int TotalPages => (TotalCount + PageSize - 1) / PageSize;
    }
}
