/* Options: Date: 2024-06-29 12:00:51 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //Package: //GlobalNamespace: dtos //AddPropertyAccessors: True //SettersReturnThis: True //AddServiceStackTypes: True //AddResponseStatus: False //AddDescriptionAsComments: True //AddImplicitVersion: IncludeTypes: CreateRecurringSchedule.* //ExcludeTypes: //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.*; import java.util.*; import net.servicestack.client.*; public class dtos { @Route(Path="/schedules/recurring", Verbs="POST") @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) @ValidateRequest(Validator="IsAuthenticated") public static class CreateRecurringSchedule implements 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.") public UUID CompanyId = null; /** * The schedule name */ @ApiMember(Description="The schedule name") public String Name = null; /** * The schedule description */ @ApiMember(Description="The schedule description") public String Description = null; /** * If schedule is active or not */ @ApiMember(Description="If schedule is active or not") public Boolean Active = null; /** * Time interval for available times. Here you set the interval at which times should appear. For example, if you select the range 15minutes, and your service has an duration of 1 hour and opening hours are 9AM to 6PM you will see the following suggested times: 09AM-10PM 09:15AM-10:15PM, 09:30AM-10:30PM , ..... 04:45PM-05:45, 05:00PM-06:00PM */ @ApiMember(Description="Time interval for available times. Here you set the interval at which times should appear. For example, if you select the range 15minutes, and your service has an duration of 1 hour and opening hours are 9AM to 6PM you will see the following suggested times: 09AM-10PM 09:15AM-10:15PM, 09:30AM-10:30PM , ..... 04:45PM-05:45, 05:00PM-06:00PM", IsRequired=true) public Integer TimeInterval = null; /** * Allow bookings end time exceeds the opening hours Here you can choose whether it should be possible to make a reservation exceeding the opening hours. This should be ticked when a service duration is longer than 24 hours (possible to book over midnight). */ @ApiMember(Description="Allow bookings end time exceeds the opening hours Here you can choose whether it should be possible to make a reservation exceeding the opening hours. This should be ticked when a service duration is longer than 24 hours (possible to book over midnight).", IsRequired=true) public Boolean EnableBookingUntilClosingTime = null; /** * The timestamp to which the schedule is valid from */ @ApiMember(Description="The timestamp to which the schedule is valid from", IsRequired=true) public Date ValidFrom = null; /** * The timestamp to which the schedule is valid to */ @ApiMember(Description="The timestamp to which the schedule is valid to", IsRequired=true) public Date ValidTo = null; /** * The time for the schedule opening hours (starttime) */ @ApiMember(Description="The time for the schedule opening hours (starttime)", IsRequired=true) public TimeSpan StartTime = null; /** * The time for the schedule opening hours (endtime) */ @ApiMember(Description="The time for the schedule opening hours (endtime)", IsRequired=true) public TimeSpan EndTime = null; /** * The number of days the schedule is valid from todays date */ @ApiMember(Description="The number of days the schedule is valid from todays date", IsRequired=true) public Integer NumberOfScheduleDays = null; /** * If recurring, an array indicating which days of the week the schedule recures on where 1 = Monday .. 7 = Sunday. When recurring then the time portion of the Fields From and To indicates the time of day the recurrence occurs */ @ApiMember(Description="If recurring, an array indicating which days of the week the schedule recures on where 1 = Monday .. 7 = Sunday. When recurring then the time portion of the Fields From and To indicates the time of day the recurrence occurs") public ArrayList DaysOfWeek = null; /** * If not recuring, an array indicating which dates that are open for the schedule. */ @ApiMember(Description="If not recuring, an array indicating which dates that are open for the schedule.") public ArrayList ScheduleDates = null; /** * Schedule exceptions. For example closed on lunch time between 12AM and 1PM. These times will be removed from the recurring schedule. */ @ApiMember(Description="Schedule exceptions. For example closed on lunch time between 12AM and 1PM. These times will be removed from the recurring schedule.") public ArrayList Exceptions = null; /** * If the schedule is only connected to some resources, add them here. If empty, it will be used by all resources. */ @ApiMember(Description="If the schedule is only connected to some resources, add them here. If empty, it will be used by all resources.") public ArrayList Resources = null; /** * Set what services the schedule should be connected to. */ @ApiMember(Description="Set what services the schedule should be connected to.") public ArrayList Services = null; public UUID getCompanyId() { return CompanyId; } public CreateRecurringSchedule setCompanyId(UUID value) { this.CompanyId = value; return this; } public String getName() { return Name; } public CreateRecurringSchedule setName(String value) { this.Name = value; return this; } public String getDescription() { return Description; } public CreateRecurringSchedule setDescription(String value) { this.Description = value; return this; } public Boolean isActive() { return Active; } public CreateRecurringSchedule setActive(Boolean value) { this.Active = value; return this; } public Integer getTimeInterval() { return TimeInterval; } public CreateRecurringSchedule setTimeInterval(Integer value) { this.TimeInterval = value; return this; } public Boolean isEnableBookingUntilClosingTime() { return EnableBookingUntilClosingTime; } public CreateRecurringSchedule setEnableBookingUntilClosingTime(Boolean value) { this.EnableBookingUntilClosingTime = value; return this; } public Date getValidFrom() { return ValidFrom; } public CreateRecurringSchedule setValidFrom(Date value) { this.ValidFrom = value; return this; } public Date getValidTo() { return ValidTo; } public CreateRecurringSchedule setValidTo(Date value) { this.ValidTo = value; return this; } public TimeSpan getStartTime() { return StartTime; } public CreateRecurringSchedule setStartTime(TimeSpan value) { this.StartTime = value; return this; } public TimeSpan getEndTime() { return EndTime; } public CreateRecurringSchedule setEndTime(TimeSpan value) { this.EndTime = value; return this; } public Integer getNumberOfScheduleDays() { return NumberOfScheduleDays; } public CreateRecurringSchedule setNumberOfScheduleDays(Integer value) { this.NumberOfScheduleDays = value; return this; } public ArrayList getDaysOfWeek() { return DaysOfWeek; } public CreateRecurringSchedule setDaysOfWeek(ArrayList value) { this.DaysOfWeek = value; return this; } public ArrayList getScheduleDates() { return ScheduleDates; } public CreateRecurringSchedule setScheduleDates(ArrayList value) { this.ScheduleDates = value; return this; } public ArrayList getExceptions() { return Exceptions; } public CreateRecurringSchedule setExceptions(ArrayList value) { this.Exceptions = value; return this; } public ArrayList getResources() { return Resources; } public CreateRecurringSchedule setResources(ArrayList value) { this.Resources = value; return this; } public ArrayList getServices() { return Services; } public CreateRecurringSchedule setServices(ArrayList value) { this.Services = value; return this; } private static Object responseType = RecurringScheduleQueryResponse.class; public Object getResponseType() { return responseType; } } public static class RecurringScheduleQueryResponse { /** * The schedule id */ @ApiMember(Description="The schedule id") public Integer Id = null; /** * Name of the schedule */ @ApiMember(Description="Name of the schedule") public String Name = null; /** * Description of the schedule */ @ApiMember(Description="Description of the schedule") public String Description = null; /** * If the schedule is active or not */ @ApiMember(Description="If the schedule is active or not") public Boolean Active = null; /** * Time interval for available times Here you set the interval at which times should appear. For example, if you select the range 15minutes, and your service has an duration of 1 hour and opening hours are 9AM to 6PM you will see the following suggested times: 09AM-10PM 09:15AM-10:15PM, 09:30AM-10:30PM , ..... 04:45PM-05:45, 05:00PM-06:00PM */ @ApiMember(Description="Time interval for available times Here you set the interval at which times should appear. For example, if you select the range 15minutes, and your service has an duration of 1 hour and opening hours are 9AM to 6PM you will see the following suggested times: 09AM-10PM 09:15AM-10:15PM, 09:30AM-10:30PM , ..... 04:45PM-05:45, 05:00PM-06:00PM", IsRequired=true) public Integer TimeInterval = null; /** * The timestamp to which the schedule is valid from */ @ApiMember(Description="The timestamp to which the schedule is valid from", IsRequired=true) public Date ValidFrom = null; /** * The timestamp to which the schedule is valid to */ @ApiMember(Description="The timestamp to which the schedule is valid to", IsRequired=true) public Date ValidTo = null; /** * The time for the schedule opening hours (starttime) */ @ApiMember(Description="The time for the schedule opening hours (starttime)", IsRequired=true) public TimeSpan StartTime = null; /** * The time for the schedule opening hours (endtime) */ @ApiMember(Description="The time for the schedule opening hours (endtime)", IsRequired=true) public TimeSpan EndTime = null; /** * The number of days the schedule is valid from todays date */ @ApiMember(Description="The number of days the schedule is valid from todays date", IsRequired=true) public Integer NumberOfScheduleDays = null; /** * If the schedule is only connected to some specific resources. Note: You must have IncludeResources property to see this. */ @ApiMember(Description="If the schedule is only connected to some specific resources. Note: You must have IncludeResources property to see this.", IsRequired=true) public Boolean IsResourceSpecific = null; /** * The timestamp when the schedule was updated */ @ApiMember(Description="The timestamp when the schedule was updated", IsRequired=true) public Date UpdatedDate = null; /** * The timestamp when the schedule was created */ @ApiMember(Description="The timestamp when the schedule was created", IsRequired=true) public Date CreatedDate = null; /** * Allow bookings end time exceeds the opening hours Here you can choose whether it should be possible to make a reservation exceeding the opening hours. This should be ticked when a service duration is longer than 24 hours (possible to book over midnight). */ @ApiMember(Description="Allow bookings end time exceeds the opening hours Here you can choose whether it should be possible to make a reservation exceeding the opening hours. This should be ticked when a service duration is longer than 24 hours (possible to book over midnight).", IsRequired=true) public Boolean EnableBookingUntilClosingTime = null; /** * If recurring, an array indicating which days of the week the exception recures on where 1 = Monday .. 7 = Sunday. When recurring then the time portion of the Fields From and To indicates the time of day the recurrence occurs */ @ApiMember(Description="If recurring, an array indicating which days of the week the exception recures on where 1 = Monday .. 7 = Sunday. When recurring then the time portion of the Fields From and To indicates the time of day the recurrence occurs") public ArrayList DaysOfWeek = null; /** * The resources that is connected to the schedule */ @ApiMember(Description="The resources that is connected to the schedule") public ArrayList Resources = null; /** * The services that is connected to the schedule */ @ApiMember(Description="The services that is connected to the schedule") public ArrayList Services = null; /** * The exceptions that is added to the schedule */ @ApiMember(Description="The exceptions that is added to the schedule") public ArrayList Exceptions = null; /** * Schedule dates, used when the schedule is not a rolling schedule using days of week */ @ApiMember(Description="Schedule dates, used when the schedule is not a rolling schedule using days of week") public ArrayList ScheduleDates = null; public ResponseStatus ResponseStatus = null; public Integer getId() { return Id; } public RecurringScheduleQueryResponse setId(Integer value) { this.Id = value; return this; } public String getName() { return Name; } public RecurringScheduleQueryResponse setName(String value) { this.Name = value; return this; } public String getDescription() { return Description; } public RecurringScheduleQueryResponse setDescription(String value) { this.Description = value; return this; } public Boolean isActive() { return Active; } public RecurringScheduleQueryResponse setActive(Boolean value) { this.Active = value; return this; } public Integer getTimeInterval() { return TimeInterval; } public RecurringScheduleQueryResponse setTimeInterval(Integer value) { this.TimeInterval = value; return this; } public Date getValidFrom() { return ValidFrom; } public RecurringScheduleQueryResponse setValidFrom(Date value) { this.ValidFrom = value; return this; } public Date getValidTo() { return ValidTo; } public RecurringScheduleQueryResponse setValidTo(Date value) { this.ValidTo = value; return this; } public TimeSpan getStartTime() { return StartTime; } public RecurringScheduleQueryResponse setStartTime(TimeSpan value) { this.StartTime = value; return this; } public TimeSpan getEndTime() { return EndTime; } public RecurringScheduleQueryResponse setEndTime(TimeSpan value) { this.EndTime = value; return this; } public Integer getNumberOfScheduleDays() { return NumberOfScheduleDays; } public RecurringScheduleQueryResponse setNumberOfScheduleDays(Integer value) { this.NumberOfScheduleDays = value; return this; } public Boolean getIsResourceSpecific() { return IsResourceSpecific; } public RecurringScheduleQueryResponse setIsResourceSpecific(Boolean value) { this.IsResourceSpecific = value; return this; } public Date getUpdatedDate() { return UpdatedDate; } public RecurringScheduleQueryResponse setUpdatedDate(Date value) { this.UpdatedDate = value; return this; } public Date getCreatedDate() { return CreatedDate; } public RecurringScheduleQueryResponse setCreatedDate(Date value) { this.CreatedDate = value; return this; } public Boolean isEnableBookingUntilClosingTime() { return EnableBookingUntilClosingTime; } public RecurringScheduleQueryResponse setEnableBookingUntilClosingTime(Boolean value) { this.EnableBookingUntilClosingTime = value; return this; } public ArrayList getDaysOfWeek() { return DaysOfWeek; } public RecurringScheduleQueryResponse setDaysOfWeek(ArrayList value) { this.DaysOfWeek = value; return this; } public ArrayList getResources() { return Resources; } public RecurringScheduleQueryResponse setResources(ArrayList value) { this.Resources = value; return this; } public ArrayList getServices() { return Services; } public RecurringScheduleQueryResponse setServices(ArrayList value) { this.Services = value; return this; } public ArrayList getExceptions() { return Exceptions; } public RecurringScheduleQueryResponse setExceptions(ArrayList value) { this.Exceptions = value; return this; } public ArrayList getScheduleDates() { return ScheduleDates; } public RecurringScheduleQueryResponse setScheduleDates(ArrayList value) { this.ScheduleDates = value; return this; } public ResponseStatus getResponseStatus() { return ResponseStatus; } public RecurringScheduleQueryResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; } } public static interface ICompany { public UUID CompanyId = null; } public static class AddRecurringScheduleDate { /** * The date for the schedule opening (only date part is used here */ @ApiMember(Description="The date for the schedule opening (only date part is used here", IsRequired=true) public Date Date = null; /** * The time for the schedule opening hours (starttime) */ @ApiMember(Description="The time for the schedule opening hours (starttime)", IsRequired=true) public TimeSpan StartTime = null; /** * The time for the schedule opening hours (endtime) */ @ApiMember(Description="The time for the schedule opening hours (endtime)", IsRequired=true) public TimeSpan EndTime = null; public Date getDate() { return Date; } public AddRecurringScheduleDate setDate(Date value) { this.Date = value; return this; } public TimeSpan getStartTime() { return StartTime; } public AddRecurringScheduleDate setStartTime(TimeSpan value) { this.StartTime = value; return this; } public TimeSpan getEndTime() { return EndTime; } public AddRecurringScheduleDate setEndTime(TimeSpan value) { this.EndTime = value; return this; } } public static class ScheduleException { public TimeSpan StartTime = null; public TimeSpan EndTime = null; public TimeSpan getStartTime() { return StartTime; } public ScheduleException setStartTime(TimeSpan value) { this.StartTime = value; return this; } public TimeSpan getEndTime() { return EndTime; } public ScheduleException setEndTime(TimeSpan value) { this.EndTime = value; return this; } } public static class AddScheduleService { /** * The service id */ @ApiMember(Description="The service id", IsRequired=true) public Integer Id = null; public Integer getId() { return Id; } public AddScheduleService setId(Integer value) { this.Id = value; return this; } } public static class AddScheduleResource { /** * The resource id */ @ApiMember(Description="The resource id", IsRequired=true) public Integer Id = null; public Integer getId() { return Id; } public AddScheduleResource setId(Integer value) { this.Id = value; return this; } } public static class DayOfWeekDto { public Integer DayOfWeekId = null; public Integer DotNetDayOfWeekId = null; public String DayOfWeek = null; public Integer getDayOfWeekId() { return DayOfWeekId; } public DayOfWeekDto setDayOfWeekId(Integer value) { this.DayOfWeekId = value; return this; } public Integer getDotNetDayOfWeekId() { return DotNetDayOfWeekId; } public DayOfWeekDto setDotNetDayOfWeekId(Integer value) { this.DotNetDayOfWeekId = value; return this; } public String getDayOfWeek() { return DayOfWeek; } public DayOfWeekDto setDayOfWeek(String value) { this.DayOfWeek = value; return this; } } public static class ScheduleResources { public Integer Id = null; /** * Name of the resource */ @ApiMember(Description="Name of the resource") public String Name = null; /** * The image url of the resource */ @ApiMember(Description="The image url of the resource") public Uri ImageUrl = null; public Integer getId() { return Id; } public ScheduleResources setId(Integer value) { this.Id = value; return this; } public String getName() { return Name; } public ScheduleResources setName(String value) { this.Name = value; return this; } public Uri getImageUrl() { return ImageUrl; } public ScheduleResources setImageUrl(Uri value) { this.ImageUrl = value; return this; } } public static class ScheduleServices { public Integer Id = null; /** * Name of the service */ @ApiMember(Description="Name of the service") public String Name = null; /** * The image url of the service */ @ApiMember(Description="The image url of the service") public Uri ImageUrl = null; public Integer getId() { return Id; } public ScheduleServices setId(Integer value) { this.Id = value; return this; } public String getName() { return Name; } public ScheduleServices setName(String value) { this.Name = value; return this; } public Uri getImageUrl() { return ImageUrl; } public ScheduleServices setImageUrl(Uri value) { this.ImageUrl = value; return this; } } public static class RecurringScheduleExceptionResponse { /** * Start time of the schedule exception. */ @ApiMember(Description="Start time of the schedule exception.") public TimeSpan StartTime = null; /** * End time of the schedule exception. */ @ApiMember(Description="End time of the schedule exception.") public TimeSpan EndTime = null; public TimeSpan getStartTime() { return StartTime; } public RecurringScheduleExceptionResponse setStartTime(TimeSpan value) { this.StartTime = value; return this; } public TimeSpan getEndTime() { return EndTime; } public RecurringScheduleExceptionResponse setEndTime(TimeSpan value) { this.EndTime = value; return this; } } public static class RecurringScheduleDateResponse { public Integer Id = null; public Date Date = null; public TimeSpan StartTime = null; public TimeSpan EndTime = null; public ResponseStatus ResponseStatus = null; public Integer getId() { return Id; } public RecurringScheduleDateResponse setId(Integer value) { this.Id = value; return this; } public Date getDate() { return Date; } public RecurringScheduleDateResponse setDate(Date value) { this.Date = value; return this; } public TimeSpan getStartTime() { return StartTime; } public RecurringScheduleDateResponse setStartTime(TimeSpan value) { this.StartTime = value; return this; } public TimeSpan getEndTime() { return EndTime; } public RecurringScheduleDateResponse setEndTime(TimeSpan value) { this.EndTime = value; return this; } public ResponseStatus getResponseStatus() { return ResponseStatus; } public RecurringScheduleDateResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; } } }