using System.ComponentModel.DataAnnotations; namespace Fitness_core_BE.DTOs.AccessDevice { public class UnlinkedFingerprintDto { public Guid Id { get; set; } public int DeviceUserId { get; set; } public string DeviceEmployeeNo { get; set; } = string.Empty; public string? DeviceReportedName { get; set; } public string? DeviceUserType { get; set; } public int FingerprintCount { get; set; } public Guid DeviceId { get; set; } public string? DeviceName { get; set; } public DateTime DiscoveredAt { get; set; } } public class LinkFingerprintRequest { public Guid UnlinkedEnrollmentId { get; set; } } /// /// Body of POST client/customers/{id}/face-photo. The browser resizes and re-encodes to /// JPEG before sending, so this carries a ready-to-enrol image; a data: prefix is accepted. /// public class SetFacePhotoRequest { [Required] public string ImageBase64 { get; set; } = string.Empty; } public class AccessStatusDto { public long AccessProfileId { get; set; } public string AccessNumber { get; set; } = string.Empty; public string PersonType { get; set; } = string.Empty; public string DesiredAccessState { get; set; } = string.Empty; public string ProvisionStatus { get; set; } = "NoDevice"; public string ActualAccessState { get; set; } = "Unknown"; public int FingerprintCount { get; set; } public string? LastError { get; set; } public DateTime? LastSyncedAt { get; set; } public int DeviceCount { get; set; } public int SyncedDeviceCount { get; set; } } }