' Options: 'Date: 2024-12-27 08:51:53 'Version: 8.12 'Tip: To override a DTO option, remove "''" prefix before updating 'BaseUrl: https://taxfiling.pwc.de ' '''GlobalNamespace: '''MakePartial: True '''MakeVirtual: True '''MakeDataContractsExtensible: False '''AddReturnMarker: True '''AddDescriptionAsComments: True '''AddDataContractAttributes: False '''AddIndexesToDataMembers: False '''AddGeneratedCodeAttributes: False '''AddResponseStatus: False '''AddImplicitVersion: '''InitializeCollections: True '''ExportValueTypes: False 'IncludeTypes: RetrieveCustomer.* '''ExcludeTypes: '''AddNamespaces: '''AddDefaultXmlNamespace: http://schemas.servicestack.net/types Imports System Imports System.Collections Imports System.Collections.Generic Imports System.Runtime.Serialization Imports ServiceStack Imports ServiceStack.DataAnnotations Imports System.Net Imports PwC.Metering.Core.Domain.Concretes.Models Imports PwC.Metering.Core.Services.Contracts.Requests Imports PwC.Metering.Core.Services.Contracts.Responses Imports PwC.Metering.Core.Domain.Concretes.Interfaces Namespace Global Namespace PwC.Metering.Core.Domain.Concretes.Interfaces ''' ''' Specifies that a data type should have a 'Name' property. ''' Public Interface IHasName ''' '''The 'Name' property. ''' Property Name As String End Interface ''' ''' Specifies that a data type should have a 'UserName' property. ''' Public Interface IHasUserName Property UserName As String End Interface End Namespace Namespace PwC.Metering.Core.Domain.Concretes.Models ''' '''Represents a user account. ''' Public Partial Class Account Implements IHasUserName Public Sub New() Roles = New List(Of String) Permissions = New List(Of String) Meta = New Dictionary(Of String, String) End Sub ''' '''The unique identifier of the user account. ''' Public Overridable Property Id As Integer ''' '''The position of this instance in a collection of 'Account' instances ''' Public Overridable Property Index As Integer ''' '''The unique identifier of the customer associated with this account. ''' Public Overridable Property RefId As Nullable(Of Integer) ''' '''The string representation of the unique identifier of a reference that associates with this user account. This should have the same value as 'RefId'. ''' Public Overridable Property RefIdStr As String ''' '''The unique user name of the user account. ''' Public Overridable Property UserName As String ''' '''The electronic mail address of the user account. ''' Public Overridable Property Email As String ''' '''The friendly name of the user account. ''' Public Overridable Property DisplayName As String ''' '''The first name of the owner (natural person) of the user account. ''' Public Overridable Property FirstName As String ''' '''The last name of the owner (natural person) of the user account. ''' Public Overridable Property LastName As String ''' '''The unique identifier of the customer associated with this account. ''' Public Overridable Property FullName As String ''' '''The gender of the owner (natural person) of the user account. ''' Public Overridable Property Gender As String ''' '''The language of the owner of teh user account. ''' Public Overridable Property Language As String ''' '''The company, where the user is an employee. ''' Public Overridable Property Company As String ''' '''The profile URL of the user account. ''' Public Overridable Property ProfileUrl As String ''' '''The roles assigned to the user account. ''' Public Overridable Property Roles As List(Of String) ''' '''The permissions assigned to the user account. ''' Public Overridable Property Permissions As List(Of String) ''' '''The primary e-mail address of the user. ''' Public Overridable Property PrimaryEmail As String ''' '''Random data to enhance the security of the user password. ''' Public Overridable Property Salt As String ''' '''The hash value of the user password that the PBKDF2 algorithm produces. ''' Public Overridable Property PasswordHash As String ''' '''The hash value of the user password that the DigestHa1 algorithm produces. ''' Public Overridable Property DigestHa1Hash As String ''' '''The number of times the user account tried to sign in but failed. ''' Public Overridable Property InvalidLoginAttempts As Integer ''' '''The last time the user account attempted a sign in. ''' Public Overridable Property LastLoginAttempt As Nullable(Of Date) ''' '''The date and time when the user acount was denied access. ''' Public Overridable Property LockedDate As Nullable(Of Date) ''' '''The date and time when the user account was created. ''' Public Overridable Property CreatedDate As Date ''' '''The date and time when the user account was last modified. ''' Public Overridable Property ModifiedDate As Date ''' '''The telephone number of the owner of the user account. ''' Public Overridable Property PhoneNumber As String ''' '''The birth date of the owner of the user account ''' Public Overridable Property BirthDate As Nullable(Of Date) ''' '''The string representation of the birth date of the user account. ''' Public Overridable Property BirthDateRaw As String ''' '''The mail address of the user account. ''' Public Overridable Property Address As String ''' '''Additional information for the specified 'Address' of the user. ''' Public Overridable Property Address2 As String ''' '''The city of the owner of the user account. ''' Public Overridable Property City As String ''' '''The state of the owner of the user account. ''' Public Overridable Property State As String ''' '''The country of the owner of the user account. It is recommended to use the name of the associated 'Customer'. ''' Public Overridable Property Country As String ''' '''The locale of the user account. ''' Public Overridable Property Culture As String ''' '''The mail address of the user account. ''' Public Overridable Property MailAddress As String ''' '''The nickname of the user of the user account. ''' Public Overridable Property Nickname As String ''' '''The postal code of the user account. ''' Public Overridable Property PostalCode As String ''' '''The time zone of the user of the user account. ''' Public Overridable Property TimeZone As String ''' '''Additional information to attach to the user account. ''' Public Overridable Property Meta As Dictionary(Of String, String) End Class ''' '''Represents a customer (business organization or entrepreneur). ''' Public Partial Class Customer Implements IHasName Public Sub New() Accounts = New List(Of Account) End Sub ''' '''The unique identifier of the customer. ''' Public Overridable Property Id As Integer ''' '''The position of this instance in a collection of 'Customer' instances ''' Public Overridable Property Index As Integer ''' '''Full name or organization name of customer. ''' Public Overridable Property Name As String ''' '''The country of residence or business of customer. ''' Public Overridable Property Country As String ''' '''The type of customer. ''' Public Overridable Property Type As CustomerType ''' '''The list of user accounts associated with this customer. ''' Public Overridable Property Accounts As List(Of Account) End Class Public Enum CustomerType Internal Network External End Enum End Namespace Namespace PwC.Metering.Core.Services.Contracts.Requests ''' '''Represents a service request to retrieve a customer. ''' Public Partial Class RetrieveCustomer Inherits RetrieveCustomerBase Implements IReturn(Of CustomerResponse) ''' '''The unique identifier of the customer to retrieve. ''' Public Overridable Property Id As Integer ''' '''Should the related accounts of the customer be included in the retrieved account? ''' Public Overridable Property IncludeAccounts As Nullable(Of Boolean) ''' '''Specifies the number of products to skip. Applicable only when 'IncludeAccounts' is true. ''' Public Overridable Property SkipAccounts As Nullable(Of Integer) ''' '''Specifies the number of products to include. Applicable only when 'IncludeAccounts' is true. ''' Public Overridable Property TakeAccounts As Nullable(Of Integer) End Class ''' '''Specifies a service request to retrieve a customer. ''' Public Partial Class RetrieveCustomerBase Implements IGet ''' '''The unique identifier of the customer to retrieve. ''' Public Overridable Property Id As Integer ''' '''Should the related accounts of the customer be included in the retrieved account? ''' Public Overridable Property IncludeAccounts As Nullable(Of Boolean) ''' '''Specifies the number of products to skip. Applicable only when 'IncludeAccounts' is true. ''' Public Overridable Property SkipAccounts As Nullable(Of Integer) ''' '''Specifies the number of products to include. Applicable only when 'IncludeAccounts' is true. ''' Public Overridable Property TakeAccounts As Nullable(Of Integer) End Class End Namespace Namespace PwC.Metering.Core.Services.Contracts.Responses ''' '''Represents a response from a service operation that encapsulates customer data. ''' Public Partial Class CustomerResponse Inherits ServiceResponseBase ''' '''The customer data of the response. ''' Public Overridable Property Customer As Customer ''' '''The index position of the reponse in a collection, if it were returned together with other responses. ''' Public Overridable Property Index As Long ''' '''Data structure that holds error information from a service operation. ''' Public Overridable Property ResponseStatus As ResponseStatus End Class ''' '''Specifies a base service response class that contains a structured error information. ''' Public Partial Class ServiceResponseBase ''' '''Data structure that holds error information from a service operation. ''' Public Overridable Property ResponseStatus As ResponseStatus End Class End Namespace End Namespace