Skip to content

Commit

Permalink
Abrechnungsdaten der Netzlokation (#563)
Browse files Browse the repository at this point in the history
* Abrechnungsdaten der Netzlokation

* Enable nullability
  • Loading branch information
JoschaMetze authored Oct 28, 2024
1 parent 297dd74 commit d5539d7
Show file tree
Hide file tree
Showing 5 changed files with 95 additions and 7 deletions.
9 changes: 9 additions & 0 deletions BO4E/BO/Netzlokation.cs
Original file line number Diff line number Diff line change
Expand Up @@ -134,4 +134,13 @@ public class Netzlokation : BusinessObject
[ProtoMember(15)]
[JsonPropertyOrder(21)]
public string? VorgelagerteLokationsId { get; set; }

/// <summary>
/// Abrechnungsdaten der Netzlokation
/// </summary>
[JsonProperty(Order = 22, PropertyName = "abrechnungsdaten")]
[JsonPropertyName("abrechnungsdaten")]
[ProtoMember(16)]
[JsonPropertyOrder(22)]
public List<Netzlokationsabrechnungsdaten>? Abrechnungsdaten { get; set; }
}
61 changes: 61 additions & 0 deletions BO4E/COM/Netzlokationsabrechnungsdaten.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
using System.Collections.Generic;
using System.Text.Json.Serialization;
using BO4E.ENUM;
using BO4E.meta;
using Newtonsoft.Json;
using ProtoBuf;

namespace BO4E.COM;

/// <summary>
/// Abrechnungsdaten der Netzlokation
/// </summary>
[ProtoContract]
[NonOfficial(NonOfficialCategory.REGULATORY_REQUIREMENTS)]
public class Netzlokationsabrechnungsdaten : COM
{
/// <summary>
/// Artikel oder Gruppen-ArtikelId
/// </summary>
[JsonProperty(PropertyName = "artikelId", Order = 4)]
[JsonPropertyOrder(4)]
[JsonPropertyName("artikelId")]
[ProtoMember(4)]
public string? ArtikelId { get; set; }

/// <summary>
/// Typ der ArtikelId (Einzel oder Gruppe)
/// </summary>
[JsonProperty(PropertyName = "artikelIdTyp", Order = 5)]
[JsonPropertyName("artikelIdTyp")]
[JsonPropertyOrder(5)]
[ProtoMember(5)]
public ENUM.ArtikelIdTyp? ArtikelIdTyp { get; set; }

/// <summary>
/// Zahler der Blindarbeit
/// </summary>
[JsonProperty(PropertyName = "blindarbeitszahler", Order = 10)]
[JsonPropertyName("blindarbeitszahler")]
[JsonPropertyOrder(10)]
[ProtoMember(10)]
public Blindarbeitszahler? Blindarbeitszahler { get; set; }

/// <summary>
/// Findet eine Abrechnung der Blindarbeit statt?
/// </summary>
[JsonProperty(PropertyName = "findetBlindarbeitsAbrechnungStatt", Order = 11)]
[JsonPropertyName("findetBlindarbeitsAbrechnungStatt")]
[JsonPropertyOrder(11)]
[ProtoMember(11)]
public bool? FindetBlindarbeitsAbrechnungStatt { get; set; }

/// <summary>
/// Ist der Lieferant bereit die Blindarbeit zu zahlen
/// </summary>
[JsonProperty(PropertyName = "lieferantBereitZurZahlungBlindarbeit", Order = 12)]
[JsonPropertyName("lieferantBereitZurZahlungBlindarbeit")]
[JsonPropertyOrder(12)]
[ProtoMember(12)]
public bool? LieferantBereitZurZahlungBlindarbeit { get; set; }
}
2 changes: 1 addition & 1 deletion BO4E/COM/Netznutzungsabrechnungsdaten.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
using BO4E.meta;
using Newtonsoft.Json;
using ProtoBuf;

#nullable enable
namespace BO4E.COM;

/// <summary>
Expand Down
18 changes: 18 additions & 0 deletions BO4E/ENUM/Blindarbeitszahler.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
using System.Runtime.Serialization;
using ProtoBuf;

namespace BO4E.ENUM;

/// <summary>Zahlung der Blindarbeit</summary>
public enum Blindarbeitszahler
{
/// <summary>Z10: Kunde</summary>
[ProtoEnum(Name = nameof(Blindarbeitszahler) + "_" + nameof(ANSCHLUSSNEHMER))]
[EnumMember(Value = "ANSCHLUSSNEHMER")]
ANSCHLUSSNEHMER,

/// <summary>Z11: Lieferant</summary>
[ProtoEnum(Name = nameof(Blindarbeitszahler) + "_" + nameof(LIEFERANT))]
[EnumMember(Value = "LIEFERANT")]
LIEFERANT,
}
12 changes: 6 additions & 6 deletions BO4E/protobuf-files/bo4e.proto
Original file line number Diff line number Diff line change
Expand Up @@ -1018,20 +1018,20 @@ enum Mengeneinheit {
Mengeneinheit_ZERO = 0;
WH = 2;
KW = 3;
KWH = 2000;
MW = 3000;
MWH = 2000000;
ANZAHL = 7;
KUBIKMETER = 11;
STUNDE = 13;
TAG = 17;
MONAT = 19;
JAHR = 228;
VAR = 23;
KVAR = 23000;
VARH = 29;
KVARH = 29000;
KWHK = 40;
JAHR = 228;
KWH = 2000;
MW = 3000;
KVAR = 23000;
KVARH = 29000;
MWH = 2000000;
}
enum Mengenoperator {
option (.protobuf_net.enumopt).namespace = "BO4E.ENUM";
Expand Down

0 comments on commit d5539d7

Please sign in to comment.