84 lines
1.8 KiB
C#
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; }
|
|
}
|
|
}
|