namespace RobotNet10.FleetManager.Services.TrafficControl.Models; /// /// Represents an edge reservation for a robot /// public class EdgeReservation { /// /// Edge ID (Guid from database) /// public Guid EdgeId { get; set; } /// /// Edge ID string (VDMA LIF edgeId) /// public string EdgeIdString { get; set; } = string.Empty; /// /// Start Node ID of the edge /// public Guid StartNodeId { get; set; } /// /// End Node ID of the edge /// public Guid EndNodeId { get; set; } /// /// Robot ID that reserved this edge /// public string RobotId { get; set; } = string.Empty; /// /// Order ID associated with this reservation /// public string OrderId { get; set; } = string.Empty; /// /// When the reservation was created /// public DateTime ReservedAt { get; set; } = DateTime.UtcNow; /// /// When the reservation expires (based on edge length and robot speed) /// public DateTime ReservedUntil { get; set; } /// /// Reservation status /// public ReservationStatus Status { get; set; } = ReservationStatus.Reserved; }