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
|
}
|
|
/// <summary>
|
/// 设备运行状态(内存对象,不持久化)
|
/// </summary>
|
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;
|
}
|
}
|