using System.ComponentModel.DataAnnotations; namespace AmtScanner.Api.Models; public class AmtDevice { [Key] public long Id { get; set; } [Required] public string IpAddress { get; set; } = string.Empty; public string? Hostname { get; set; } /// /// 系统 UUID(SMBIOS UUID,用于与操作系统绑定) /// public string? SystemUuid { get; set; } public int MajorVersion { get; set; } public int MinorVersion { get; set; } public ProvisioningState ProvisioningState { get; set; } public string? Description { get; set; } /// /// AMT 在线状态(端口是否可访问) /// public bool AmtOnline { get; set; } /// /// 操作系统在线状态(电源状态是否为开机) /// public bool OsOnline { get; set; } /// /// Windows 登录用户名 /// public string? WindowsUsername { get; set; } /// /// Windows 登录密码(加密存储) /// public string? WindowsPassword { get; set; } public DateTime DiscoveredAt { get; set; } public DateTime LastSeenAt { get; set; } } public enum ProvisioningState { UNKNOWN, PRE, IN, POST }