using System; using System.Diagnostics; using System.Runtime.Serialization; namespace BS.Shared.DataContracts { [DebuggerDisplay("{ResultType}: {Message}. {StartDate:dd.MM.yyyy HH:mm} - {EndDate:dd.MM.yyyy HH:mm}. {EmployeeName} {CustomerName}")] [DataContract] public class ServiceRecordValidationResultDC : IDataContract { [DataMember] public ServiceRecordValidationResult ResultType { get; set; } [DataMember] public String Message { get; set; } [DataMember] public DateTime StartDate { get; set; } [DataMember] public DateTime EndDate { get; set; } [DataMember] public decimal ApprovedHours { get; set; } //[DataMember] //public decimal ApprovedHours { get; set; } [DataMember] public decimal HoursNew { get; set; } [DataMember] public string EmployeeName { get; set; } [DataMember] public string CustomerName { get; set; } [DataMember] public bool Allow { get; set; } public override bool Equals(object obj) { if(obj is ServiceRecordValidationResultDC validationResult) { var areEqual = ResultType.Equals(validationResult.ResultType) && (Message?.Equals(validationResult.Message) ?? false) && StartDate.Equals(validationResult.StartDate) && EndDate.Equals(validationResult.EndDate) && ApprovedHours.Equals(validationResult.ApprovedHours) && HoursNew.Equals(validationResult.HoursNew) && (EmployeeName?.Equals(validationResult.EmployeeName) ?? false) && (CustomerName?.Equals(validationResult.CustomerName) ?? false) && Allow.Equals(validationResult.Allow); return areEqual; } return false; } } }