Files
BeWoPlaner/Shared/DataContracts/PreisDC.cs

84 lines
1.8 KiB
C#
Raw Normal View History

2021-08-04 14:30:26 +02:00
using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
using BS.Shared.Core;
namespace BS.Shared.DataContracts
{
public class PreisDC : IDataContract
{
2021-08-11 12:06:56 +02:00
private List<CostRatePeriodDC> _CostRatePeriods;
2021-08-17 15:32:01 +02:00
[DataMember]
public bool IsSystemEntry { get; set; }
2021-08-11 12:06:56 +02:00
[DataMember]
2021-08-04 14:30:26 +02:00
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();
}
2021-08-11 12:06:56 +02:00
2021-08-17 15:32:01 +02:00
[DataMember]
public bool IsDefault { get; set; }
2021-08-11 12:06:56 +02:00
public bool DoNotCheckOverlapping { get; set; }
[DataMember]
public List<CostRatePeriodDC> CostRatePeriods
{
2021-08-17 15:32:01 +02:00
get => this._CostRatePeriods ?? (this._CostRatePeriods = new List<CostRatePeriodDC>());
2021-08-11 12:06:56 +02:00
2021-08-17 15:32:01 +02:00
set => this._CostRatePeriods = value;
2021-08-11 12:06:56 +02:00
}
[DataMember]
public ActivationTypeId ActivationType { get; set; }
2021-08-04 14:30:26 +02:00
}
}