/* Options: Date: 2024-12-22 21:43:54 Version: 8.51 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://blazor-gallery.servicestack.net //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: QueryBookings.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* import com.google.gson.annotations.* import com.google.gson.reflect.* /** * Find Bookings */ @Route(Path="/bookings", Verbs="GET") // @Route(Path="/bookings/{Id}", Verbs="GET") open class QueryBookings : QueryDb(), IReturn> { open var id:Int? = null companion object { private val responseType = object : TypeToken>(){}.type } override fun getResponseType(): Any? = QueryBookings.responseType } @DataContract open class QueryResponse { @DataMember(Order=1) open var offset:Int? = null @DataMember(Order=2) open var total:Int? = null @DataMember(Order=3) open var results:ArrayList? = null @DataMember(Order=4) open var meta:HashMap? = null @DataMember(Order=5) open var responseStatus:ResponseStatus? = null } open class QueryDb : QueryBase() { } /** * Booking Details */ open class Booking : AuditBase() { open var id:Int? = null open var name:String? = null open var roomType:RoomType? = null open var roomNumber:Int? = null open var bookingStartDate:Date? = null open var bookingEndDate:Date? = null open var cost:BigDecimal? = null @References(Type=Coupon::class) open var couponId:String? = null open var discount:Coupon? = null open var notes:String? = null open var cancelled:Boolean? = null } /** * Discount Coupons */ open class Coupon { open var id:String? = null open var description:String? = null open var discount:Int? = null open var expiryDate:Date? = null } enum class RoomType { Single, Double, Queen, Twin, Suite, } @DataContract open class AuditBase { @DataMember(Order=1) open var createdDate:Date? = null @DataMember(Order=2) @Required() open var createdBy:String? = null @DataMember(Order=3) open var modifiedDate:Date? = null @DataMember(Order=4) @Required() open var modifiedBy:String? = null @DataMember(Order=5) open var deletedDate:Date? = null @DataMember(Order=6) open var deletedBy:String? = null } @DataContract open class QueryBase { @DataMember(Order=1) open var skip:Int? = null @DataMember(Order=2) open var take:Int? = null @DataMember(Order=3) open var orderBy:String? = null @DataMember(Order=4) open var orderByDesc:String? = null @DataMember(Order=5) open var include:String? = null @DataMember(Order=6) open var fields:String? = null @DataMember(Order=7) open var meta:HashMap? = null }