using RobotNet10.Shared.Enum; using RobotNet10.Shared.Numbers; namespace RobotNet10.RobotApp.Shared.DockStation; public class DockStationConfigDto { public Guid Id { get; set; } public string StationId { get; set; } = string.Empty; public string? ConfigName { get; set; } public string? Description { get; set; } public double X { get; set; } public double Y { get; set; } public double Yaw { get; set; } public double Width { get; set; } public double Length { get; set; } public DateTime CreatedAt { get; set; } public DateTime UpdatedAt { get; set; } public bool IsActive { get; set; } public List MarkerEntries { get; set; } = []; } public class DockStationMarkerEntryDto { public Guid Id { get; set; } public string MarkerId { get; set; } = string.Empty; public MarkerType Type { get; set; } public int Priority { get; set; } public string? DeviceId { get; set; } public string? Code { get; set; } public List ReferencePoints { get; set; } = []; } public class CreateDockStationConfigRequest { public string StationId { get; set; } = string.Empty; public string? ConfigName { get; set; } public string? Description { get; set; } public double X { get; set; } public double Y { get; set; } public double Yaw { get; set; } public double Width { get; set; } public double Length { get; set; } public bool IsActive { get; set; } = true; public List MarkerEntries { get; set; } = []; } public class UpdateDockStationConfigRequest { public string? StationId { get; set; } public string? ConfigName { get; set; } public string? Description { get; set; } public double? X { get; set; } public double? Y { get; set; } public double? Yaw { get; set; } public double? Width { get; set; } public double? Length { get; set; } public bool? IsActive { get; set; } public List? MarkerEntries { get; set; } } public class DockStationConfigSummaryDto { public Guid Id { get; set; } public string StationId { get; set; } = string.Empty; public string? ConfigName { get; set; } public string? Description { get; set; } public bool IsActive { get; set; } public int MarkerEntryCount { get; set; } public DateTime CreatedAt { get; set; } public DateTime UpdatedAt { get; set; } }