LSFE/LSFE.MobApp/Entities/Doctor/DoctorBackup.cs
2026-07-30 10:31:04 +08:00

228 lines
5.3 KiB
C#

using CommunityToolkit.Mvvm.ComponentModel;
using LSFE.MobApp.Entities.Location;
using SQLite;
using System.ComponentModel;
using System.Runtime.CompilerServices;
using System.Text;
using System.Threading.Tasks;
namespace LSFE.MobApp.Entities.Doctor
{
[Table("DoctorBackup")]
public class DoctorBackup : SyncEntity, INotifyPropertyChanged
{
private int _doctorId;
private string? _firstName;
private string? _lastName;
private string? _specialization;
private string? _middleInitial;
private int _institutionId;
private string? _institutionName;
private string? _emailAddress;
private string? _phoneNo;
private string? _address;
private string? _licenseNo;
private bool _isActive = true;
private byte _maxVisit;
private byte _specializationId;
private byte _stageLevelId;
private byte _status;
private string? _userId;
private string? _stageLevelName;
private DateTime _createdDate = DateTime.Now;
private DateTime _birthDate = DateTime.Now;
[PrimaryKey]
public Guid Id { get; set; } = Guid.NewGuid();
[Column("DoctorId"), NotNull]
public int DoctorId
{
get => _doctorId;
set
{
_doctorId = value;
OnPropertyChanged();
}
}
public string? FirstName
{
get => _firstName;
set
{
_firstName = value;
OnPropertyChanged();
}
}
public string? LastName
{
get => _lastName;
set
{
_lastName = value;
OnPropertyChanged();
}
}
public string? MiddleInitial
{
get => _middleInitial;
set
{
_middleInitial = value;
OnPropertyChanged();
}
}
public string? Specialization
{
get => _specialization;
set
{
_specialization = value;
OnPropertyChanged();
}
}
public string? EmailAddress
{
get => _emailAddress;
set
{
_emailAddress = value;
OnPropertyChanged();
}
}
public string? PhoneNo
{
get => _phoneNo;
set
{
_phoneNo = value;
OnPropertyChanged();
}
}
public string? Address
{
get => _address;
set
{
_address = value;
OnPropertyChanged();
}
}
public string? LicenseNo
{
get => _licenseNo;
set
{
_licenseNo = value;
OnPropertyChanged();
}
}
public DateTime BirthDate
{
get => _birthDate;
set
{
_birthDate = value;
OnPropertyChanged();
}
}
public byte MaxVisit
{
get => _maxVisit;
set
{
_maxVisit = value;
OnPropertyChanged();
}
}
public byte SpecializationId
{
get => _specializationId;
set
{
_specializationId = value;
OnPropertyChanged();
}
}
public byte StageLevelId
{
get => _stageLevelId;
set
{
_stageLevelId = value;
OnPropertyChanged();
}
}
public int InstitutionId
{
get => _institutionId;
set
{
_institutionId = value;
OnPropertyChanged();
}
}
public byte Status
{
get => _status;
set
{
_status = value;
OnPropertyChanged();
}
}
public string? UserId
{
get => _userId;
set
{
_userId = value;
OnPropertyChanged();
}
}
[Ignore]
public string? StageLevelName
{
get => _stageLevelName;
set
{
_stageLevelName = value;
OnPropertyChanged();
}
}
[Ignore] // This won't be stored, just for query results
public string? InstitutionName
{
get => _institutionName;
set
{
_institutionName = value;
OnPropertyChanged();
}
}
public bool IsActive
{
get => _isActive;
set
{
_isActive = value;
OnPropertyChanged();
}
}
public DateTime CreatedDate
{
get => _createdDate;
set
{
_createdDate = value;
OnPropertyChanged();
}
}
}
}