-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding Bankverbindung and Erreichbarkeit COM objects (#466)
* 🔧 Update tax-related properties and add bank details * adding Erreichbarkeit as COM * Erreichbarkeit * format * adding proto messages * remove BOM * Land in proto * proto index starts from 3 * fix indexes * fixing JsonPropertyOrder numbers * Update BO4E/COM/Bankverbindung.cs Co-authored-by: konstantin <[email protected]> * file-scoped namespaces * improve docstrings * Using TimeOnly and new COM class `Zeitfenster` * adding JsonProperties * using Zeitfenster in proto * Update BO4E/BO/Zeitfenster.cs Co-authored-by: konstantin <[email protected]> * Update BO4E/BO/Zeitfenster.cs Co-authored-by: konstantin <[email protected]> * Update BO4E/BO/Zeitfenster.cs Co-authored-by: konstantin <[email protected]> * using ParseExact * move it to COM folder * adding TestZeitfenster * namespace ebene * remove unnecessary properties from Bankverbindung * generated schemas --------- Co-authored-by: konstantin <[email protected]>
- Loading branch information
1 parent
c9038e1
commit 05abfd3
Showing
34 changed files
with
3,573 additions
and
111 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,97 +1,98 @@ | ||
<Project Sdk="Microsoft.NET.Sdk"> | ||
<PropertyGroup> | ||
<TargetFramework>netstandard2.0</TargetFramework> | ||
<RootNamespace>BO4E</RootNamespace> | ||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> | ||
<PackageId>Hochfrequenz.BO4Enet</PackageId> | ||
<Authors>Hochfrequenz Untenehmensberatung GmbH</Authors> | ||
<Product>BO4E .net core bindings</Product> | ||
<RepositoryUrl>https://github.com/Hochfrequenz/BO4E-dotnet/</RepositoryUrl> | ||
|
||
<VersionPrefix>0.2.50</VersionPrefix> | ||
<AssemblyName>BO4Enet</AssemblyName> | ||
<GeneratePackageOnBuild>false</GeneratePackageOnBuild> | ||
<PublishRepositoryUrl>true</PublishRepositoryUrl> | ||
|
||
<!-- Optional: Embed source files that are not tracked by the source control manager to the PDB --> | ||
<EmbedUntrackedSources>true</EmbedUntrackedSources> | ||
|
||
<!-- Optional: Include PDB in the built .nupkg --> | ||
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder> | ||
<PackageProjectUrl>https://github.com/Hochfrequenz/BO4E-dotnet/</PackageProjectUrl> | ||
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance> | ||
<PackageLicenseFile>LICENSE.txt</PackageLicenseFile> | ||
|
||
<RepositoryType>git</RepositoryType> | ||
<IncludeSymbols>true</IncludeSymbols> | ||
<DebugType>Embedded</DebugType> | ||
<EmbedAllSources>True</EmbedAllSources> | ||
<LangVersion>latest</LangVersion> | ||
<DocumentationFile>BO4Enet.xml</DocumentationFile> | ||
<Nullable>annotations</Nullable> | ||
</PropertyGroup> | ||
|
||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'"> | ||
<Optimize>false</Optimize> | ||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors> | ||
</PropertyGroup> | ||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'"> | ||
<DefineConstants>DEBUG</DefineConstants> | ||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors> | ||
</PropertyGroup> | ||
|
||
<ItemGroup> | ||
<Compile Remove="BO\NewFolder\**" /> | ||
<Compile Remove="json-schema-files\**" /> | ||
<EmbeddedResource Remove="BO\NewFolder\**" /> | ||
<EmbeddedResource Remove="json-schema-files\**" /> | ||
<None Remove="BO\NewFolder\**" /> | ||
<None Remove="json-schema-files\**" /> | ||
<None Include="..\LICENSE.txt"> | ||
<Pack>True</Pack> | ||
<PackagePath /> | ||
</None> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<None Remove="CentralEuropeStandardTime.json" /> | ||
<None Remove="protobuf-files\BO4E.BO.Angebot.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Ansprechpartner.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Benachrichtigung.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Energiemenge.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Geschaeftspartner.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Kosten.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Marktlokation.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Messlokation.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Preisblatt.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Rechnung.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Region.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Vertrag.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Zaehler.proto" /> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<EmbeddedResource Include="meta\CentralEuropeStandardTime.json"> | ||
<CopyToOutputDirectory>Always</CopyToOutputDirectory> | ||
</EmbeddedResource> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<PackageReference Include="Enums.NET" Version="5.0.0" /> | ||
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="8.0.1" /> | ||
<PackageReference Include="Microsoft.Extensions.Logging" Version="7.0.0" /> | ||
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="7.0.0" /> | ||
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" /> | ||
<PackageReference Include="Newtonsoft.Json.Schema" Version="4.0.1" /> | ||
<PackageReference Include="Polyfill" Version="6.1.1"> | ||
<PrivateAssets>all</PrivateAssets> | ||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> | ||
</PackageReference> | ||
<PackageReference Include="protobuf-net" Version="3.2.30" /> | ||
<PackageReference Include="SourceLink.Copy.PdbFiles" Version="2.8.3" PrivateAssets="All" /> | ||
<PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" /> | ||
<PackageReference Include="System.Text.Encodings.Web" Version="8.0.0" /> | ||
<PackageReference Include="System.Text.Json" Version="8.0.4" /> | ||
</ItemGroup> | ||
|
||
</Project> | ||
<Project Sdk="Microsoft.NET.Sdk"> | ||
<PropertyGroup> | ||
<TargetFramework>netstandard2.0</TargetFramework> | ||
<RootNamespace>BO4E</RootNamespace> | ||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> | ||
<PackageId>Hochfrequenz.BO4Enet</PackageId> | ||
<Authors>Hochfrequenz Untenehmensberatung GmbH</Authors> | ||
<Product>BO4E .net core bindings</Product> | ||
<RepositoryUrl>https://github.com/Hochfrequenz/BO4E-dotnet/</RepositoryUrl> | ||
|
||
<VersionPrefix>0.2.50</VersionPrefix> | ||
<AssemblyName>BO4Enet</AssemblyName> | ||
<GeneratePackageOnBuild>false</GeneratePackageOnBuild> | ||
<PublishRepositoryUrl>true</PublishRepositoryUrl> | ||
|
||
<!-- Optional: Embed source files that are not tracked by the source control manager to the PDB --> | ||
<EmbedUntrackedSources>true</EmbedUntrackedSources> | ||
|
||
<!-- Optional: Include PDB in the built .nupkg --> | ||
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder> | ||
<PackageProjectUrl>https://github.com/Hochfrequenz/BO4E-dotnet/</PackageProjectUrl> | ||
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance> | ||
<PackageLicenseFile>LICENSE.txt</PackageLicenseFile> | ||
|
||
<RepositoryType>git</RepositoryType> | ||
<IncludeSymbols>true</IncludeSymbols> | ||
<DebugType>Embedded</DebugType> | ||
<EmbedAllSources>True</EmbedAllSources> | ||
<LangVersion>latest</LangVersion> | ||
<DocumentationFile>BO4Enet.xml</DocumentationFile> | ||
<Nullable>annotations</Nullable> | ||
</PropertyGroup> | ||
|
||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'"> | ||
<Optimize>false</Optimize> | ||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors> | ||
</PropertyGroup> | ||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'"> | ||
<DefineConstants>DEBUG</DefineConstants> | ||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors> | ||
</PropertyGroup> | ||
|
||
<ItemGroup> | ||
<Compile Remove="BO\NewFolder\**" /> | ||
<Compile Remove="json-schema-files\**" /> | ||
<EmbeddedResource Remove="BO\NewFolder\**" /> | ||
<EmbeddedResource Remove="json-schema-files\**" /> | ||
<None Remove="BO\NewFolder\**" /> | ||
<None Remove="json-schema-files\**" /> | ||
<None Include="..\LICENSE.txt"> | ||
<Pack>True</Pack> | ||
<PackagePath /> | ||
</None> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<None Remove="CentralEuropeStandardTime.json" /> | ||
<None Remove="protobuf-files\BO4E.BO.Angebot.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Ansprechpartner.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Benachrichtigung.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Energiemenge.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Geschaeftspartner.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Kosten.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Marktlokation.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Messlokation.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Preisblatt.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Rechnung.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Region.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Vertrag.proto" /> | ||
<None Remove="protobuf-files\BO4E.BO.Zaehler.proto" /> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<EmbeddedResource Include="meta\CentralEuropeStandardTime.json"> | ||
<CopyToOutputDirectory>Always</CopyToOutputDirectory> | ||
</EmbeddedResource> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<PackageReference Include="Enums.NET" Version="5.0.0" /> | ||
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="8.0.1" /> | ||
<PackageReference Include="Microsoft.Extensions.Logging" Version="7.0.0" /> | ||
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="7.0.0" /> | ||
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" /> | ||
<PackageReference Include="Newtonsoft.Json.Schema" Version="4.0.1" /> | ||
<PackageReference Include="Polyfill" Version="6.1.1"> | ||
<PrivateAssets>all</PrivateAssets> | ||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> | ||
</PackageReference> | ||
<PackageReference Include="Portable.System.DateTimeOnly" Version="8.0.1" /> | ||
<PackageReference Include="protobuf-net" Version="3.2.30" /> | ||
<PackageReference Include="SourceLink.Copy.PdbFiles" Version="2.8.3" PrivateAssets="All" /> | ||
<PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" /> | ||
<PackageReference Include="System.Text.Encodings.Web" Version="8.0.0" /> | ||
<PackageReference Include="System.Text.Json" Version="8.0.4" /> | ||
</ItemGroup> | ||
|
||
</Project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
using System.Text.Json.Serialization; | ||
using BO4E.ENUM; | ||
using BO4E.meta; | ||
using Newtonsoft.Json; | ||
using ProtoBuf; | ||
|
||
namespace BO4E.COM; | ||
|
||
/// <summary>Enthält eine Bankverbindung</summary> | ||
[ProtoContract] | ||
public class Bankverbindung : COM | ||
{ | ||
/// <summary>IBAN</summary> | ||
[DataCategory(DataCategory.FINANCE)] | ||
[JsonProperty(PropertyName = "iban", Required = Required.Default, Order = 3)] | ||
[JsonPropertyName("iban")] | ||
[ProtoMember(3)] | ||
[JsonPropertyOrder(3)] | ||
public string? IBAN { get; set; } | ||
|
||
/// <summary>Der kontoinhaber</summary> | ||
[DataCategory(DataCategory.FINANCE)] | ||
[JsonProperty(PropertyName = "kontoinhaber", Required = Required.Default, Order = 4)] | ||
[JsonPropertyName("kontoinhaber")] | ||
[ProtoMember(4)] | ||
[JsonPropertyOrder(4)] | ||
public string? Kontoinhaber { get; set; } | ||
|
||
/// <summary>Die Bankkennung, BIC</summary> | ||
[DataCategory(DataCategory.FINANCE)] | ||
[JsonProperty(PropertyName = "bankkennung", Required = Required.Default, Order = 5)] | ||
[JsonPropertyName("bankkennung")] | ||
[ProtoMember(5)] | ||
[JsonPropertyOrder(5)] | ||
public string? Bankkennung { get; set; } | ||
|
||
/// <summary>Der Bankname</summary> | ||
[DataCategory(DataCategory.FINANCE)] | ||
[JsonProperty(PropertyName = "bankname", Required = Required.Default, Order = 6)] | ||
[JsonPropertyName("bankname")] | ||
[ProtoMember(6)] | ||
[JsonPropertyOrder(6)] | ||
public string? Bankname { get; set; } | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
using System.Text.Json.Serialization; | ||
|
||
using Newtonsoft.Json; | ||
|
||
using ProtoBuf; | ||
|
||
namespace BO4E.COM; | ||
|
||
/// <summary> | ||
/// Die Erreichbarkeit eines Unternehmens an Werktagen. | ||
/// </summary> | ||
[ProtoContract] | ||
public class Erreichbarkeit : COM | ||
{ | ||
/// <summary>Erreichbarkeit am Montag</summary> | ||
[JsonProperty(PropertyName = "montagErreichbarkeit", Required = Required.Default, Order = 3)] | ||
[JsonPropertyName("montagErreichbarkeit")] | ||
[ProtoMember(3)] | ||
[JsonPropertyOrder(3)] | ||
public Zeitfenster? MontagErreichbarkeit { get; set; } | ||
|
||
/// <summary>Erreichbarkeit am Dienstag</summary> | ||
[JsonProperty(PropertyName = "dienstagErreichbarkeit", Required = Required.Default, Order = 4)] | ||
[JsonPropertyName("dienstagErreichbarkeit")] | ||
[ProtoMember(4)] | ||
[JsonPropertyOrder(4)] | ||
public Zeitfenster? DienstagErreichbarkeit { get; set; } | ||
|
||
/// <summary>Erreichbarkeit am Mittwoch</summary> | ||
[JsonProperty(PropertyName = "mittwochErreichbarkeit", Required = Required.Default, Order = 5)] | ||
[JsonPropertyName("mittwochErreichbarkeit")] | ||
[ProtoMember(5)] | ||
[JsonPropertyOrder(5)] | ||
public Zeitfenster? MittwochErreichbarkeit { get; set; } | ||
|
||
/// <summary>Erreichbarkeit am Donnerstag</summary> | ||
[JsonProperty(PropertyName = "donnerstagErreichbarkeit", Required = Required.Default, Order = 6)] | ||
[JsonPropertyName("donnerstagErreichbarkeit")] | ||
[ProtoMember(6)] | ||
[JsonPropertyOrder(6)] | ||
public Zeitfenster? DonnerstagErreichbarkeit { get; set; } | ||
|
||
/// <summary>Erreichbarkeit am Freitag</summary> | ||
[JsonProperty(PropertyName = "freitagErreichbarkeit", Required = Required.Default, Order = 7)] | ||
[JsonPropertyName("freitagErreichbarkeit")] | ||
[ProtoMember(7)] | ||
[JsonPropertyOrder(7)] | ||
public Zeitfenster? FreitagErreichbarkeit { get; set; } | ||
|
||
/// <summary>Mittagspause (Ausschluss der Erreichbarkeit)</summary> | ||
[JsonProperty(PropertyName = "mittagspause", Required = Required.Default, Order = 8)] | ||
[JsonPropertyName("mittagspause")] | ||
[ProtoMember(8)] | ||
[JsonPropertyOrder(8)] | ||
public Zeitfenster? Mittagspause { get; set; } | ||
} |
Oops, something went wrong.