Files
BeWoPlaner/Shared/DataContracts/PreisDC.cs
2021-08-17 17:12:52 +02:00

84 lines
1.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
using BS.Shared.Core;
namespace BS.Shared.DataContracts
{
public class PreisDC : IDataContract
{
private List<CostRatePeriodDC> _CostRatePeriods;
[DataMember]
public bool IsSystemEntry { get; set; }
[DataMember]
public long? PreisOid { get; set; }
[DataMember]
public ActivationTypeId PreisIsActive { get; set; }
[DataMember]
public string PreisNotice { get; set; }
[DataMember]
public DateTime? PreisInsTs { get; set; }
[DataMember]
public string PreisInsUser { get; set; }
[DataMember]
public long? PreisVersion { get; set; }
[DataMember]
public string PreisUdpUser { get; set; }
[DataMember]
public SystemEntryID? PreisSystemEntryID { get; set; }
[DataMember]
public string Name { get; set; }
[DataMember]
public decimal? Betrag { get; set; }
public override string ToString()
{
return Name + " (" + (Betrag.HasValue ? Math.Round(Betrag.Value, 2) : 0) + " Std)";
}
public override bool Equals(object obj)
{
if (obj is PreisDC preis)
{
return PreisOid == preis.PreisOid;
}
return false;
}
public override int GetHashCode()
{
return GetType().Name.GetHashCode() ^ PreisOid.GetHashCode();
}
[DataMember]
public bool IsDefault { get; set; }
public bool DoNotCheckOverlapping { get; set; }
[DataMember]
public List<CostRatePeriodDC> CostRatePeriods
{
get => this._CostRatePeriods ?? (this._CostRatePeriods = new List<CostRatePeriodDC>());
set => this._CostRatePeriods = value;
}
[DataMember]
public ActivationTypeId ActivationType { get; set; }
}
}