/* Options: Date: 2025-09-15 16:40:22 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bookmore.com //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CreateServicePrice.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* @Route(Path="/services/prices/", Verbs="POST") @ValidateRequest(Validator="IsAuthenticated") open class CreateServicePrice : IReturn, ICompany { /** * The company id, if empty will use the company id for the user you are logged in with. */ @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") override var CompanyId:UUID? = null /** * The service id */ @ApiMember(Description="The service id", IsRequired=true) open var ServiceId:Int? = null /** * The price */ @ApiMember(Description="The price", IsRequired=true) open var Price:Double? = null /** * The price currency */ @ApiMember(Description="The price currency", IsRequired=true) open var CurrencyId:String? = null /** * The price calculation type id, 1 = Normal, price is for the service total duration, 2 = Price is per minute, 3 = Price is per hour, 4= Price is per day */ @ApiMember(Description="The price calculation type id, 1 = Normal, price is for the service total duration, 2 = Price is per minute, 3 = Price is per hour, 4= Price is per day", IsRequired=true) open var CalculationTypeId:Int? = null /** * The price VAT in percent */ @ApiMember(Description="The price VAT in percent", IsRequired=true) open var VAT:BigDecimal? = null /** * The price category if price has a category */ @ApiMember(Description="The price category if price has a category") open var Category:String? = null /** * The valid from date for the price. */ @ApiMember(Description="The valid from date for the price.") open var From:Date? = null /** * The valid to date for the price. */ @ApiMember(Description="The valid to date for the price.") open var To:Date? = null /** * If the price is only valid for specific days in week add a comma separated list of which days this day price belongs to, 1 = Monday .. 7 = Sunday. All old days connected will be removed on update. */ @ApiMember(Description="If the price is only valid for specific days in week add a comma separated list of which days this day price belongs to, 1 = Monday .. 7 = Sunday. All old days connected will be removed on update.") open var DaysOfWeek:ArrayList? = null /** * If the price is only valid for specific days in week add a comma separated list of which days this day price belongs to, 1 = Monday .. 7 = Sunday. All old days connected will be removed on update. */ @ApiMember(Description="If the price is only valid for specific days in week add a comma separated list of which days this day price belongs to, 1 = Monday .. 7 = Sunday. All old days connected will be removed on update.") open var FromTime:TimeSpan? = null /** * If the price is only valid for a specific time span during a time of day enter the FromTime and ToTime parameters. */ @ApiMember(Description="If the price is only valid for a specific time span during a time of day enter the FromTime and ToTime parameters.") open var ToTime:TimeSpan? = null companion object { private val responseType = ServicePriceResponse::class.java } override fun getResponseType(): Any? = CreateServicePrice.responseType } open class ServicePriceResponse { /** * The company id */ @ApiMember(Description="The company id") open var CompanyId:UUID? = null /** * The price id */ @ApiMember(Description="The price id") open var Id:Int? = null /** * The service id */ @ApiMember(Description="The service id") open var ServiceId:Int? = null /** * The price */ @ApiMember(Description="The price") open var Price:Double? = null /** * The price calculation type id, 1 = Normal, price is for the service total duration, 2 = Price is per minute, 3 = Price is per hour, 4= Price is per day */ @ApiMember(Description="The price calculation type id, 1 = Normal, price is for the service total duration, 2 = Price is per minute, 3 = Price is per hour, 4= Price is per day") open var CalculationTypeId:Int? = null /** * The price currency */ @ApiMember(Description="The price currency") open var CurrencyId:String? = null /** * The price sign */ @ApiMember(Description="The price sign") open var PriceSign:String? = null /** * The price VAT in percent */ @ApiMember(Description="The price VAT in percent") open var VAT:BigDecimal? = null /** * The price category if price has a category */ @ApiMember(Description="The price category if price has a category") open var Category:String? = null /** * The price text to display */ @ApiMember(Description="The price text to display") open var PriceText:String? = null /** * The valid from date for the price. */ @ApiMember(Description="The valid from date for the price.") open var From:Date? = null /** * The valid to date for the price. */ @ApiMember(Description="The valid to date for the price.") open var To:Date? = null /** * If the price is only valid for specific days in week add a comma separated list of which days this day price belongs to, 1 = Monday .. 7 = Sunday. All old days connected will be removed on update. */ @ApiMember(Description="If the price is only valid for specific days in week add a comma separated list of which days this day price belongs to, 1 = Monday .. 7 = Sunday. All old days connected will be removed on update.") open var DaysOfWeek:ArrayList? = null /** * If the price is only valid for specific days in week add a comma separated list of which days this day price belongs to, 1 = Monday .. 7 = Sunday. All old days connected will be removed on update. */ @ApiMember(Description="If the price is only valid for specific days in week add a comma separated list of which days this day price belongs to, 1 = Monday .. 7 = Sunday. All old days connected will be removed on update.") open var FromTime:TimeSpan? = null /** * If the price is only valid for a specific time span during a time of day enter the FromTime and ToTime parameters. */ @ApiMember(Description="If the price is only valid for a specific time span during a time of day enter the FromTime and ToTime parameters.") open var ToTime:TimeSpan? = null open var Service:ServiceInfoResponse? = null /** * If the price is only valid for a specific time span */ @ApiMember(Description="If the price is only valid for a specific time span") open var IsTimeSpecific:Boolean? = null /** * If the price is only valid for specific days of week */ @ApiMember(Description="If the price is only valid for specific days of week") open var IsDaysOfWeekSpecific:Boolean? = null } interface ICompany { var CompanyId:UUID? } open class GroupBookingSettings { open var Active:Boolean? = null open var Min:Int? = null open var Max:Int? = null } open class MultipleResourceSettings { open var Active:Boolean? = null open var Min:Int? = null open var Max:Int? = null } open class ServiceInfoResponse { open var Id:Int? = null open var Name:String? = null open var Description:String? = null open var ImageUrl:Uri? = null open var LengthInMinutes:Int? = null open var MaxNumberOfSpotsPerBooking:Int? = null open var MinNumberOfSpotsPerBooking:Int? = null open var GroupBooking:GroupBookingSettings? = null open var MultipleResource:MultipleResourceSettings? = null open var IsGroupBooking:Boolean? = null open var IsPaymentEnabled:Boolean? = null } open class DayOfWeekDto { open var DayOfWeekId:Int? = null open var DotNetDayOfWeekId:Int? = null open var DayOfWeek:String? = null }