/* Options: Date: 2024-06-26 10:35:58 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: TestDateSchedule.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.* import java.util.* import net.servicestack.client.* @Route(Path="/schedules/date/test", Verbs="POST") @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) @ValidateRequest(Validator="IsAuthenticated") open class TestDateSchedule : IReturn, ICompany, IInterval { /** * 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.") var CompanyId:UUID? = null /** * The dates for the schedule. This is the actual timeslots. */ @ApiMember(Description="The dates for the schedule. This is the actual timeslots.", IsRequired=true) var ScheduleDates:ArrayList = ArrayList() /** * From what datetime to show available times */ @ApiMember(DataType="dateTime", Description="From what datetime to show available times", IsRequired=true, ParameterType="query") var From:Date? = null /** * To what datetime to show available times */ @ApiMember(DataType="dateTime", Description="To what datetime to show available times", IsRequired=true, ParameterType="query") var To:Date? = null /** * The Service Duration */ @ApiMember(Description="The Service Duration") var ServiceId:Int? = null companion object { private val responseType = AvailableTimesResponse::class.java } override fun getResponseType(): Any? = TestDateSchedule.responseType } open class AvailableTimesResponse { var CompanyId:UUID? = null var ServiceId:Int? = null var TimesFreeTextSingle:String? = null var TimesFreeTextMultiple:String? = null var Times:ArrayList = ArrayList() } open interface ICompany { var CompanyId:UUID? } open interface IInterval { var From:Date? var To:Date? } open class AddDateScheduleDate { /** * The from date for the timeslot */ @ApiMember(Description="The from date for the timeslot", IsRequired=true) var From:Date? = null /** * The to date for the timeslot */ @ApiMember(Description="The to date for the timeslot", IsRequired=true) var To:Date? = null } open class AvailableTimesSum : IAvailableTime { var From:Date? = null var To:Date? = null var Free:Int? = null var FreeSpots:Int? = null var ExceptionTexts:ArrayList = ArrayList() } open class ExceptionText { var Reason:String? = null var ReasonPublic:String? = null } open interface IAvailableTime : IInterval { var Free:Int? }