import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
public static class GetFacilitySchedule extends ApiServiceRequest
{
public Integer facilityId = null;
public Date start = null;
public Date end = null;
public Integer getFacilityId() { return facilityId; }
public GetFacilitySchedule setFacilityId(Integer value) { this.facilityId = value; return this; }
public Date getStart() { return start; }
public GetFacilitySchedule setStart(Date value) { this.start = value; return this; }
public Date getEnd() { return end; }
public GetFacilitySchedule setEnd(Date value) { this.end = value; return this; }
}
public static class ApiServiceRequest implements IServiceRequest, IHasApiKey, IHasDeviceInfo
{
/**
* The API Key required for authentication
*/
@ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)
public String apiKey = null;
/**
* Latitude of the user making this request
*/
@ApiMember(DataType="double", Description="Latitude of the user making this request")
public Double latitude = null;
/**
* Longitude of the user making this request
*/
@ApiMember(DataType="double", Description="Longitude of the user making this request")
public Double longitude = null;
public String getApiKey() { return apiKey; }
public ApiServiceRequest setApiKey(String value) { this.apiKey = value; return this; }
public Double getLatitude() { return latitude; }
public ApiServiceRequest setLatitude(Double value) { this.latitude = value; return this; }
public Double getLongitude() { return longitude; }
public ApiServiceRequest setLongitude(Double value) { this.longitude = value; return this; }
}
public static class GetFacilityScheduleResponse extends ApiServiceResponse
{
public ArrayList<ScheduleDayData> schedule = null;
public String bookAheadMaxDate = null;
public Integer openHour = null;
public Integer closeHour = null;
public Integer duration = null;
public Boolean isCoordinator = null;
public Integer facilityTimeOffset = null;
public FacilityData facility = null;
public String venueName = null;
public Boolean allowGuests = null;
public Boolean allowExtraRequirements = null;
public Boolean allowBookingInProgress = null;
public ArrayList<ScheduleDayData> getSchedule() { return schedule; }
public GetFacilityScheduleResponse setSchedule(ArrayList<ScheduleDayData> value) { this.schedule = value; return this; }
public String getBookAheadMaxDate() { return bookAheadMaxDate; }
public GetFacilityScheduleResponse setBookAheadMaxDate(String value) { this.bookAheadMaxDate = value; return this; }
public Integer getOpenHour() { return openHour; }
public GetFacilityScheduleResponse setOpenHour(Integer value) { this.openHour = value; return this; }
public Integer getCloseHour() { return closeHour; }
public GetFacilityScheduleResponse setCloseHour(Integer value) { this.closeHour = value; return this; }
public Integer getDuration() { return duration; }
public GetFacilityScheduleResponse setDuration(Integer value) { this.duration = value; return this; }
public Boolean getIsCoordinator() { return isCoordinator; }
public GetFacilityScheduleResponse setIsCoordinator(Boolean value) { this.isCoordinator = value; return this; }
public Integer getFacilityTimeOffset() { return facilityTimeOffset; }
public GetFacilityScheduleResponse setFacilityTimeOffset(Integer value) { this.facilityTimeOffset = value; return this; }
public FacilityData getFacility() { return facility; }
public GetFacilityScheduleResponse setFacility(FacilityData value) { this.facility = value; return this; }
public String getVenueName() { return venueName; }
public GetFacilityScheduleResponse setVenueName(String value) { this.venueName = value; return this; }
public Boolean isAllowGuests() { return allowGuests; }
public GetFacilityScheduleResponse setAllowGuests(Boolean value) { this.allowGuests = value; return this; }
public Boolean isAllowExtraRequirements() { return allowExtraRequirements; }
public GetFacilityScheduleResponse setAllowExtraRequirements(Boolean value) { this.allowExtraRequirements = value; return this; }
public Boolean isAllowBookingInProgress() { return allowBookingInProgress; }
public GetFacilityScheduleResponse setAllowBookingInProgress(Boolean value) { this.allowBookingInProgress = value; return this; }
}
public static class ApiServiceResponse implements IServiceResponse
{
public String description = null;
public String heading = null;
public Boolean wasSuccessful = null;
public Object modelState = null;
public String getDescription() { return description; }
public ApiServiceResponse setDescription(String value) { this.description = value; return this; }
public String getHeading() { return heading; }
public ApiServiceResponse setHeading(String value) { this.heading = value; return this; }
public Boolean isWasSuccessful() { return wasSuccessful; }
public ApiServiceResponse setWasSuccessful(Boolean value) { this.wasSuccessful = value; return this; }
public Object getModelState() { return modelState; }
public ApiServiceResponse setModelState(Object value) { this.modelState = value; return this; }
}
public static class ScheduleDayData
{
public String date = null;
public ArrayList<SlotData> slots = null;
public String getDate() { return date; }
public ScheduleDayData setDate(String value) { this.date = value; return this; }
public ArrayList<SlotData> getSlots() { return slots; }
public ScheduleDayData setSlots(ArrayList<SlotData> value) { this.slots = value; return this; }
}
public static class SlotData
{
public String start = null;
public String end = null;
public SlotStatus status = null;
public Integer bookingId = null;
public Boolean remindStart = null;
public Boolean remind30Mins = null;
public Boolean remind1Hour = null;
public Boolean remind6Hours = null;
public Boolean remind12Hours = null;
public Boolean remind1Day = null;
public Boolean remind1Week = null;
public BigDecimal billableAmount = null;
public String bookedByName = null;
public Double billableHours = null;
public Double slotLength = null;
public GuestData userData = null;
public String extraRequirements = null;
public String getStart() { return start; }
public SlotData setStart(String value) { this.start = value; return this; }
public String getEnd() { return end; }
public SlotData setEnd(String value) { this.end = value; return this; }
public SlotStatus getStatus() { return status; }
public SlotData setStatus(SlotStatus value) { this.status = value; return this; }
public Integer getBookingId() { return bookingId; }
public SlotData setBookingId(Integer value) { this.bookingId = value; return this; }
public Boolean isRemindStart() { return remindStart; }
public SlotData setRemindStart(Boolean value) { this.remindStart = value; return this; }
public Boolean isRemind30Mins() { return remind30Mins; }
public SlotData setRemind30Mins(Boolean value) { this.remind30Mins = value; return this; }
public Boolean isRemind1Hour() { return remind1Hour; }
public SlotData setRemind1Hour(Boolean value) { this.remind1Hour = value; return this; }
public Boolean isRemind6Hours() { return remind6Hours; }
public SlotData setRemind6Hours(Boolean value) { this.remind6Hours = value; return this; }
public Boolean isRemind12Hours() { return remind12Hours; }
public SlotData setRemind12Hours(Boolean value) { this.remind12Hours = value; return this; }
public Boolean isRemind1Day() { return remind1Day; }
public SlotData setRemind1Day(Boolean value) { this.remind1Day = value; return this; }
public Boolean isRemind1Week() { return remind1Week; }
public SlotData setRemind1Week(Boolean value) { this.remind1Week = value; return this; }
public BigDecimal getBillableAmount() { return billableAmount; }
public SlotData setBillableAmount(BigDecimal value) { this.billableAmount = value; return this; }
public String getBookedByName() { return bookedByName; }
public SlotData setBookedByName(String value) { this.bookedByName = value; return this; }
public Double getBillableHours() { return billableHours; }
public SlotData setBillableHours(Double value) { this.billableHours = value; return this; }
public Double getSlotLength() { return slotLength; }
public SlotData setSlotLength(Double value) { this.slotLength = value; return this; }
public GuestData getUserData() { return userData; }
public SlotData setUserData(GuestData value) { this.userData = value; return this; }
public String getExtraRequirements() { return extraRequirements; }
public SlotData setExtraRequirements(String value) { this.extraRequirements = value; return this; }
}
public static enum SlotStatus
{
@SerializedName("0") Available(0),
@SerializedName("1") Closed(1),
@SerializedName("2") Booked(2),
@SerializedName("3") UserBooked(3),
@SerializedName("4") GroupBooked(4),
@SerializedName("5") ToBook(5);
private final int value;
SlotStatus(final int intValue) { value = intValue; }
public int getValue() { return value; }
}
public static class GuestData
{
public String name = null;
public String emailAddress = null;
public String mobileNumber = null;
public ArrayList<UserCustomFieldData> userCustomFields = null;
public Boolean isAlreadyUser = null;
public Integer systemUserId = null;
public String getName() { return name; }
public GuestData setName(String value) { this.name = value; return this; }
public String getEmailAddress() { return emailAddress; }
public GuestData setEmailAddress(String value) { this.emailAddress = value; return this; }
public String getMobileNumber() { return mobileNumber; }
public GuestData setMobileNumber(String value) { this.mobileNumber = value; return this; }
public ArrayList<UserCustomFieldData> getUserCustomFields() { return userCustomFields; }
public GuestData setUserCustomFields(ArrayList<UserCustomFieldData> value) { this.userCustomFields = value; return this; }
public Boolean getIsAlreadyUser() { return isAlreadyUser; }
public GuestData setIsAlreadyUser(Boolean value) { this.isAlreadyUser = value; return this; }
public Integer getSystemUserId() { return systemUserId; }
public GuestData setSystemUserId(Integer value) { this.systemUserId = value; return this; }
}
public static class UserCustomFieldData
{
public UUID id = null;
public String value = null;
public String name = null;
public Boolean optional = null;
public UUID getId() { return id; }
public UserCustomFieldData setId(UUID value) { this.id = value; return this; }
public String getValue() { return value; }
public UserCustomFieldData setValue(String value) { this.value = value; return this; }
public String getName() { return name; }
public UserCustomFieldData setName(String value) { this.name = value; return this; }
public Boolean isOptional() { return optional; }
public UserCustomFieldData setOptional(Boolean value) { this.optional = value; return this; }
}
public static class FacilityData
{
public Integer facilityId = null;
public String facilityGuid = null;
public String name = null;
public String description = null;
public String nextAvailable = null;
public Boolean hasNextAvailable = null;
public ArrayList<RatesItem> rates = null;
public String themeColor = null;
public String bookingNotes = null;
public Integer leadTime = null;
public Integer venueId = null;
public Boolean allowExtraRequirements = null;
public Integer getFacilityId() { return facilityId; }
public FacilityData setFacilityId(Integer value) { this.facilityId = value; return this; }
public String getFacilityGuid() { return facilityGuid; }
public FacilityData setFacilityGuid(String value) { this.facilityGuid = value; return this; }
public String getName() { return name; }
public FacilityData setName(String value) { this.name = value; return this; }
public String getDescription() { return description; }
public FacilityData setDescription(String value) { this.description = value; return this; }
public String getNextAvailable() { return nextAvailable; }
public FacilityData setNextAvailable(String value) { this.nextAvailable = value; return this; }
public Boolean isHasNextAvailable() { return hasNextAvailable; }
public FacilityData setHasNextAvailable(Boolean value) { this.hasNextAvailable = value; return this; }
public ArrayList<RatesItem> getRates() { return rates; }
public FacilityData setRates(ArrayList<RatesItem> value) { this.rates = value; return this; }
public String getThemeColor() { return themeColor; }
public FacilityData setThemeColor(String value) { this.themeColor = value; return this; }
public String getBookingNotes() { return bookingNotes; }
public FacilityData setBookingNotes(String value) { this.bookingNotes = value; return this; }
public Integer getLeadTime() { return leadTime; }
public FacilityData setLeadTime(Integer value) { this.leadTime = value; return this; }
public Integer getVenueId() { return venueId; }
public FacilityData setVenueId(Integer value) { this.venueId = value; return this; }
public Boolean isAllowExtraRequirements() { return allowExtraRequirements; }
public FacilityData setAllowExtraRequirements(Boolean value) { this.allowExtraRequirements = value; return this; }
}
public static class RatesItem
{
public BigDecimal rate = null;
public Integer minutes = null;
public BigDecimal getRate() { return rate; }
public RatesItem setRate(BigDecimal value) { this.rate = value; return this; }
public Integer getMinutes() { return minutes; }
public RatesItem setMinutes(Integer value) { this.minutes = value; return this; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsonl/reply/GetFacilitySchedule HTTP/1.1
Host: reservation.api.dev.86degrees.com
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"facilityId":0,"start":"0001-01-01T00:00:00.0000000","end":"0001-01-01T00:00:00.0000000","apiKey":"String","latitude":0,"longitude":0}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"schedule":[{"date":"String","slots":[{"start":"String","end":"String","status":0,"bookingId":0,"remindStart":false,"remind30Mins":false,"remind1Hour":false,"remind6Hours":false,"remind12Hours":false,"remind1Day":false,"remind1Week":false,"billableAmount":0,"bookedByName":"String","billableHours":0,"slotLength":0,"extraRequirements":"String"}]}],"bookAheadMaxDate":"String","openHour":0,"closeHour":0,"duration":0,"isCoordinator":false,"facilityTimeOffset":0,"venueName":"String","allowGuests":false,"allowExtraRequirements":false,"allowBookingInProgress":false,"description":"String","heading":"String","wasSuccessful":false,"modelState":{}}