' Options: 'Date: 2024-12-03 18:08:37 'Version: 8.23 'Tip: To override a DTO option, remove "''" prefix before updating 'BaseUrl: https://api.bokamera.se ' '''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: UpdateResource.* '''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.Globalization Imports ServiceStack.Data Imports System.IO Imports BokaMera.API.ServiceModel.Interfaces Imports BokaMera.API.ServiceModel.Enums Imports BokaMera.API.ServiceModel.Dtos Namespace Global Namespace BokaMera.API.ServiceModel.Dtos Public Partial Class AddCustomField Public Overridable Property Id As Integer Public Overridable Property Value As String End Class Public Partial Class BookedCustomer Public Overridable Property Id As Guid Public Overridable Property Firstname As String Public Overridable Property Lastname As String Public Overridable Property Email As String Public Overridable Property Phone As String Public Overridable Property FacebookUserName As String Public Overridable Property ImageUrl As String Public Overridable Property CorporateIdentityNumber As String Public Overridable Property InvoiceAddress1 As String Public Overridable Property InvoiceAddress2 As String Public Overridable Property InvoiceCity As String Public Overridable Property InvoicePostalCode As String Public Overridable Property InvoiceCountryCode As String End Class Public Partial Class BookedTime Implements IBookedTime ''' '''Booking id ''' Public Overridable Property Id As Integer ''' '''The booked service ''' Public Overridable Property ServiceId As Integer ''' '''Booking start ''' Public Overridable Property From As Date ''' '''Booking end ''' Public Overridable Property To As Date ''' '''Number of booked spots ''' Public Overridable Property BookedSpots As Integer ''' '''Number of total spots for the service ''' Public Overridable Property TotalSpots As Integer ''' '''The pause after the booking ''' Public Overridable Property PauseAfterInMinutes As Integer ''' '''The booking status ''' Public Overridable Property StatusId As Integer Public Overridable Property Status As BookingStatusEnum ''' '''The customer the booking belongs to ''' Public Overridable Property Customer As BookedCustomer End Class Public Partial Class ResourceQueryResponse Public Sub New() Exceptions = New List(Of TimeException) Bookings = New List(Of BookedTime) End Sub ''' '''The resource id ''' Public Overridable Property Id As Integer ''' '''The resource name ''' Public Overridable Property Name As String ''' '''The resource description ''' Public Overridable Property Description As String ''' '''If resource is active or not ''' Public Overridable Property Active As Boolean ''' '''The resource color in scheduler in hexadecimal color code. Example: #00b0f0 for blue. ''' Public Overridable Property Color As String ''' '''The email of the resource ''' Public Overridable Property Email As String ''' '''The image url of the resource ''' Public Overridable Property ImageUrl As Uri ''' '''The mobile phone number of the resource ''' Public Overridable Property MobilePhone As String ''' '''Used by example code locks to know what access group the resource is assigned to ''' Public Overridable Property AccessGroup As String ''' '''If the resource should receive email notification when booked ''' Public Overridable Property EmailNotification As Boolean ''' '''If the resource should receive SMS notification when booked ''' Public Overridable Property SMSNotification As Boolean ''' '''If the resource should receive email reminders on bookings ''' Public Overridable Property SendEmailReminder As Nullable(Of Boolean) ''' '''If the resource should receive SMS reminders on bookings ''' Public Overridable Property SendSMSReminder As Nullable(Of Boolean) ''' '''The resource time exceptions ''' Public Overridable Property Exceptions As List(Of TimeException) ''' '''The resource bookings ''' Public Overridable Property Bookings As List(Of BookedTime) ''' '''Then date when the resource was created ''' Public Overridable Property Created As Date ''' '''Then date when the resource was updated ''' Public Overridable Property Updated As Date Public Overridable Property ResponseStatus As ResponseStatus End Class Public Partial Class TimeException Implements ITimeException Public Sub New() ResourceIds = New Integer(){} End Sub ''' '''Time exception id ''' Public Overridable Property Id As Integer ''' '''Indicates whether or not the time exception is recurring ''' Public Overridable Property IsRecurring As Boolean ''' '''Indicates whether the time exception is blocking the time or not ''' Public Overridable Property IsBlock As Boolean ''' '''The reason of the time exception, example: Vacation, doctors appointment, ... ''' Public Overridable Property ReasonText As String ''' '''The public reason of the time exception, example: Vacation, doctors appointment, ... ''' Public Overridable Property ReasonTextPublic As String ''' '''Time exception start ''' Public Overridable Property From As Date ''' '''Time exception end ''' Public Overridable Property To As Date ''' '''Resources that owns this exception ''' Public Overridable Property ResourceIds As Integer() End Class Public Partial Class UpdateResource Implements IReturn(Of ResourceQueryResponse) Implements ICompany Public Sub New() CustomFields = New List(Of AddCustomField) End Sub ''' '''Enter the company id, if blank company id and you are an admin, your company id will be used. ''' Public Overridable Property CompanyId As Nullable(Of Guid) ''' '''Id of the resource ''' Public Overridable Property Id As Integer ''' '''The resource name ''' Public Overridable Property Name As String ''' '''The resource description ''' Public Overridable Property Description As String ''' '''If resource is active or not ''' Public Overridable Property Active As Nullable(Of Boolean) ''' '''The resource color in scheduler ''' Public Overridable Property Color As String ''' '''The image url of the resource ''' Public Overridable Property ImageUrl As Uri ''' '''The email of the resource ''' Public Overridable Property Email As String ''' '''The mobile phone number of the resource ''' Public Overridable Property MobilePhone As String ''' '''Used by example code locks to know what access group the resource is assigned to ''' Public Overridable Property AccessGroup As String ''' '''If the resource should receive email notification when booked ''' Public Overridable Property EmailNotification As Nullable(Of Boolean) ''' '''If the resource should receive SMS notification when booked ''' Public Overridable Property SMSNotification As Nullable(Of Boolean) ''' '''If the resource should receive email reminders on bookings ''' Public Overridable Property SendEmailReminder As Nullable(Of Boolean) ''' '''If the resource should receive SMS reminders on bookings ''' Public Overridable Property SendSMSReminder As Nullable(Of Boolean) ''' '''If Custom Fields are added to the resource, here you will send the id and the value for each custom field to be saved ''' Public Overridable Property CustomFields As List(Of AddCustomField) End Class End Namespace Namespace BokaMera.API.ServiceModel.Enums Public Enum BookingStatusEnum Booked = 1 Unbooked = 2 Reserved = 3 Canceled = 4 AwaitingPayment = 5 AwaitingPaymentNoTimeLimit = 6 Payed = 7 AwaitingPaymentRequestFromAdmin = 8 AwaitingPaymentFromProvider = 9 Invoiced = 10 End Enum End Namespace Namespace BokaMera.API.ServiceModel.Interfaces Public Interface IBookedTime Implements IInterval Property Id As Integer Property ServiceId As Integer Property BookedSpots As Integer Property TotalSpots As Integer Property PauseAfterInMinutes As Integer Property Status As BookingStatusEnum Property StatusId As Integer Property Customer As BookedCustomer End Interface Public Interface ICompany Property CompanyId As Nullable(Of Guid) End Interface Public Interface IInterval Property From As Date Property To As Date End Interface Public Interface ITimeException Implements IInterval Property Id As Integer Property ReasonText As String Property IsBlock As Boolean Property ReasonTextPublic As String Property IsRecurring As Boolean Property ResourceIds As Integer() End Interface End Namespace End Namespace