using DTS.Common.Base.Classes; using DTS.Common.Interface.TestMetaData; using DTS.Common.Utilities.Logging; using System; using System.ComponentModel; using System.Data; using System.IO; using System.Xml; using System.Xml.Serialization; namespace DTS.Common.Classes.LabratoryDetails { public class LabratoryDetailsDbRecord : Base.BasePropertyChanged, ILabratoryDetailsDbRecord { private int _labratoryId = -1; [Browsable(false)] [ReadOnly(true)] public int LabratoryId { get => _labratoryId; set => SetProperty(ref _labratoryId, value, "LabratoryId"); } private string _name = ""; [Browsable(false)] [ReadOnly(true)] public string Name { get => _name; set => SetProperty(ref _name, value, "Name"); } private string _labratoryName = string.Empty; [DisplayResource("LabratoryName")] public string LabratoryName { get => _labratoryName; set => SetProperty(ref _labratoryName, value, "LabratoryName"); } private string _labratoryContactName = string.Empty; [DisplayResource("LabratoryContactName")] public string LabratoryContactName { get => _labratoryContactName; set => SetProperty(ref _labratoryContactName, value, "LabratoryContactName"); } private string _labratoryContactPhone = "NOVALUE"; [DisplayResource("LabratoryContactPhone")] public string LabratoryContactPhone { get => _labratoryContactPhone; set => SetProperty(ref _labratoryContactPhone, value, "LabratoryContactPhone"); } private string _labratoryContactFax = "NOVALUE"; [DisplayResource("LabratoryContactFax")] public string LabratoryContactFax { get => _labratoryContactFax; set => SetProperty(ref _labratoryContactFax, value, "LabratoryContactFax"); } private string _labratoryContactEmail = "NOVALUE"; [DisplayResource("LabratoryContactEmail")] public string LabratoryContactEmail { get => _labratoryContactEmail; set => SetProperty(ref _labratoryContactEmail, value, "LabratoryContactEmail"); } private string _labratoryTestRefNumber = string.Empty; [DisplayResource("LabratoryTestRefNumber")] public string LabratoryTestRefNumber { get => _labratoryTestRefNumber; set => SetProperty(ref _labratoryTestRefNumber, value, "LabratoryTestRefNumber"); } private string _labratoryProjectRefNumber = string.Empty; [DisplayResource("LabratoryProjectRefNumber")] public string LabratoryProjectRefNumber { get => _labratoryProjectRefNumber; set => SetProperty(ref _labratoryProjectRefNumber, value, "LabratoryProjectRefNumber"); } private DateTime _lastModified = DateTime.MinValue; [Browsable(false)] [ReadOnly(true)] public DateTime LastModified { get => _lastModified; set => SetProperty(ref _lastModified, value, "LastModified"); } private string _lastModifiedBy = ""; [Browsable(false)] [ReadOnly(true)] public string LastModifiedBy { get => _lastModifiedBy; set => SetProperty(ref _lastModifiedBy, value, "LastModifiedBy"); } private bool _localOnly = false; [Browsable(false)] [ReadOnly(true)] public bool LocalOnly { get => _localOnly; set => SetProperty(ref _localOnly, value, "LocalOnly"); } private int _version = -1; [Browsable(false)] [ReadOnly(true)] public int Version { get => _version; set => SetProperty(ref _version, value, "Version"); } public LabratoryDetailsDbRecord(ILabratoryDetailsDbRecord labratoryDetailsDbRecord) { Name = labratoryDetailsDbRecord.Name; LabratoryName = labratoryDetailsDbRecord.LabratoryName; LabratoryContactName = labratoryDetailsDbRecord.LabratoryContactName; LabratoryContactPhone = labratoryDetailsDbRecord.LabratoryContactPhone; LabratoryContactFax = labratoryDetailsDbRecord.LabratoryContactFax; LabratoryContactEmail = labratoryDetailsDbRecord.LabratoryContactEmail; LabratoryTestRefNumber = labratoryDetailsDbRecord.LabratoryTestRefNumber; LabratoryProjectRefNumber = labratoryDetailsDbRecord.LabratoryProjectRefNumber; LastModified = labratoryDetailsDbRecord.LastModified; LastModifiedBy = labratoryDetailsDbRecord.LastModifiedBy; LocalOnly = labratoryDetailsDbRecord.LocalOnly; Version = labratoryDetailsDbRecord.Version; } public LabratoryDetailsDbRecord() { } public LabratoryDetailsDbRecord(IDataReader reader) { Name = Utility.GetString(reader, "Name"); LabratoryName = Utility.GetString(reader, "LabratoryName"); LabratoryContactName = Utility.GetString(reader, "LabratoryContactName"); LabratoryContactPhone = Utility.GetString(reader, "LabratoryContactPhone"); LabratoryContactFax = Utility.GetString(reader, "LabratoryContactFax"); LabratoryContactEmail = Utility.GetString(reader, "LabratoryContactEmail"); LabratoryTestRefNumber = Utility.GetString(reader, "LabratoryTestRefNumber"); LabratoryProjectRefNumber = Utility.GetString(reader, "LabratoryProjectRefNumber"); LastModified = Utility.GetDateTime(reader, "LastModified", DateTime.MinValue); LastModifiedBy = Utility.GetString(reader, "LastModifiedBy"); LocalOnly = Utility.GetBool(reader, "LocalOnly"); Version = Utility.GetInt(reader, "Version"); } public bool IsInvalidBlank() { return string.IsNullOrWhiteSpace(Name); } } }