' Options: 'Date: 2024-09-16 19:18:33 '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: SearchCustomersAsync.* '''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.Services.Contracts.Helpers Imports PwC.Metering.Core.Domain.Concretes.Models Imports PwC.Metering.Core.Services.Contracts.Requests Imports PwC.Metering.Core.Domain.Concretes.Interfaces Imports PwC.Metering.Core.Services.Contracts.Responses 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.Helpers Public Interface IPaginate Property Skip As Nullable(Of Integer) Property Take As Nullable(Of Integer) End Interface ''' '''The number of query results to skip. ''' Public Partial Class PaginationBase Implements IPaginate ''' '''The number of query results to skip. ''' Public Overridable Property Skip As Nullable(Of Integer) ''' '''The number of query results to include. ''' Public Overridable Property Take As Nullable(Of Integer) End Class End Namespace Namespace PwC.Metering.Core.Services.Contracts.Requests ''' '''Represents a service request to query customer data in an asynchronous operation. ''' Public Partial Class SearchCustomersAsync Inherits SearchCustomersBase Implements IReturn(Of CustomerQueryResponse) ''' '''The unique identifier of the customer. ''' Public Overridable Property CustomerId As Nullable(Of Integer) ''' '''The name of the customer. ''' Public Overridable Property Name As String ''' '''Search by using the name of the customer that starts with the specified value. ''' Public Overridable Property NameStartsWith As String ''' '''Search by using the name of the customer that ends with the specified value. ''' Public Overridable Property NameEndsWith As String ''' '''Search by using the name of the customer that contains the specified value. ''' Public Overridable Property NameContains As String ''' '''The country of residence or headquarters of customer. ''' Public Overridable Property Country As String ''' '''Search by using the country of the customer that starts with the specified value. ''' Public Overridable Property CountryStartsWith As String ''' '''Search by using the country of the customer that ends with the specified value. ''' Public Overridable Property CountryEndsWith As String ''' '''Search by using the country of the customer that contains the specified value. ''' Public Overridable Property CountryContains As String ''' '''The type of customer. ''' Public Overridable Property Type As Nullable(Of CustomerType) ''' '''Should related accounts be included in the retrieved customers? ''' Public Overridable Property IncludeAccounts As Nullable(Of Boolean) ''' '''Specifies the number of products to skip per customer. Applicable only when 'IncludeAccounts' is true. ''' Public Overridable Property SkipAccounts As Nullable(Of Integer) ''' '''Specifies the number of products to include per customer. Applicable only when 'IncludeAccounts' is true. ''' Public Overridable Property TakeAccounts As Nullable(Of Integer) ''' '''The number of query results to skip. ''' Public Overridable Property Skip As Nullable(Of Integer) ''' '''The number of query results to include. ''' Public Overridable Property Take As Nullable(Of Integer) End Class ''' '''Specifies a service to search for customers. ''' Public Partial Class SearchCustomersBase Inherits PaginationBase Implements IGet ''' '''The unique identifier of the customer. ''' Public Overridable Property CustomerId As Nullable(Of Integer) ''' '''The name of the customer. ''' Public Overridable Property Name As String ''' '''Search by using the name of the customer that starts with the specified value. ''' Public Overridable Property NameStartsWith As String ''' '''Search by using the name of the customer that ends with the specified value. ''' Public Overridable Property NameEndsWith As String ''' '''Search by using the name of the customer that contains the specified value. ''' Public Overridable Property NameContains As String ''' '''The country of residence or headquarters of customer. ''' Public Overridable Property Country As String ''' '''Search by using the country of the customer that starts with the specified value. ''' Public Overridable Property CountryStartsWith As String ''' '''Search by using the country of the customer that ends with the specified value. ''' Public Overridable Property CountryEndsWith As String ''' '''Search by using the country of the customer that contains the specified value. ''' Public Overridable Property CountryContains As String ''' '''The type of customer. ''' Public Overridable Property Type As Nullable(Of CustomerType) ''' '''Should related accounts be included in the retrieved customers? ''' Public Overridable Property IncludeAccounts As Nullable(Of Boolean) ''' '''Specifies the number of products to skip per customer. Applicable only when 'IncludeAccounts' is true. ''' Public Overridable Property SkipAccounts As Nullable(Of Integer) ''' '''Specifies the number of products to include per customer. Applicable only when 'IncludeAccounts' is true. ''' Public Overridable Property TakeAccounts As Nullable(Of Integer) ''' '''The number of query results to skip. ''' Public Overridable Property Skip As Nullable(Of Integer) ''' '''The number of query results to include. ''' Public Overridable Property Take As Nullable(Of Integer) End Class End Namespace Namespace PwC.Metering.Core.Services.Contracts.Responses ''' '''Represents a query response that contains a structured error information and encapsulates customers. ''' Public Partial Class CustomerQueryResponse Inherits QueryResponse(Of Customer) Public Sub New() Results = New List(Of Customer) Meta = New Dictionary(Of String, String) End Sub Public Overridable Property Offset As Integer Public Overridable Property Total As Integer Public Overridable Property Results As List(Of Customer) Public Overridable Property Meta As Dictionary(Of String, String) Public Overridable Property ResponseStatus As ResponseStatus End Class End Namespace End Namespace