using System; using CommunityToolkit.Mvvm.ComponentModel; namespace Plugin.DeviceDebug.Entity { public enum DeviceConnectionState { Connected, Disconnected, Connecting, Error } public enum DeviceHealth { Healthy, Degraded, Fault } public enum ReservationStatus { Available, ProductionReserved, MaintenanceReserved, RecoveryRequired } /// /// 设备运行状态(内存对象,不持久化) /// public partial class DeviceRuntimeStatus : ObservableObject { [ObservableProperty] private string _deviceId = string.Empty; [ObservableProperty] private DeviceConnectionState _connectionState = DeviceConnectionState.Disconnected; [ObservableProperty] private DeviceHealth _health = DeviceHealth.Healthy; [ObservableProperty] private string _lastError = string.Empty; [ObservableProperty] private DateTime? _lastErrorTime; [ObservableProperty] private ReservationStatus _reservationStatus = ReservationStatus.Available; [ObservableProperty] private string _effectiveVersion = string.Empty; [ObservableProperty] private int _reconnectCount; [ObservableProperty] private double _communicationLatencyMs; } }