/* Options: Date: 2026-10-13 05:42:07 Version: 10.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://vue-spa.web-templates.io //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: QueryBookings.* //ExcludeTypes: //DefaultImports: */ package dtos import ( ss "github.com/ServiceStack/servicestack-go" "time" ) type RoomType string const ( RoomTypeSingle RoomType = "Single" RoomTypeDouble = "Double" RoomTypeQueen = "Queen" RoomTypeTwin = "Twin" RoomTypeSuite = "Suite" ) type User struct { Id string `json:"id"` UserName string `json:"userName"` FirstName *string `json:"firstName,omitempty"` LastName *string `json:"lastName,omitempty"` DisplayName *string `json:"displayName,omitempty"` ProfileUrl *string `json:"profileUrl,omitempty"` } /** @description Booking Details */ type Booking struct { ss.AuditBase Id int `json:"id,omitempty"` Name string `json:"name"` RoomType RoomType `json:"roomType,omitempty"` RoomNumber int `json:"roomNumber,omitempty"` BookingStartDate time.Time `json:"bookingStartDate,omitempty"` BookingEndDate *time.Time `json:"bookingEndDate,omitempty"` Cost float64 `json:"cost,omitempty"` Notes *string `json:"notes,omitempty"` Cancelled *bool `json:"cancelled,omitempty"` Employee User `json:"employee"` } // @ValidateRequest(Validator="HasRole(`Employee`)") type QueryBookings struct { ss.QueryDb Id *int `json:"id,omitempty"` Ids []int `json:"ids,omitempty"` } func (QueryBookings) CreateResponse() (r ss.QueryResponse[Booking]) { return } func (QueryBookings) HttpMethod() string { return "GET" }