/* Options: Date: 2026-10-08 22:19:18 Version: 6.21 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://cert.cendyn.com/CenResServiceR2Test //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: StayHistoryRequest.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.* import java.util.* import net.servicestack.client.* import com.google.gson.annotations.* import com.google.gson.reflect.* @Route(Path="/v2/stayhistory/{Query}", Verbs="GET") // @Route(Path="/v2/stayhistory/{Query}/{CendynPropertyId}", Verbs="GET") open class StayHistoryRequest : IReturn { var cendynPropertyId:String? = null var query:StayHistoryQueryType? = null var id:String? = null companion object { private val responseType = StayHistoryResponse::class.java } override fun getResponseType(): Any? = StayHistoryRequest.responseType } open class StayHistoryResponse : CenResResponse() { var records:ArrayList = ArrayList() } enum class StayHistoryQueryType { ProfileId, ResId, } enum class RequestStatus { Success, Warning, Error, NotAuthorized, Failure, } open class CenResResponse { var status:RequestStatus? = null var statusMessage:String? = null var recordsReturned:Int? = null var recordsAvailable:Int? = null var pageNumber:Int? = null var pageSize:Int? = null } open class StayHistory { var cendynPropertyID:String? = null var resortID:String? = null var externalProfileID1:String? = null var externalResId1:String? = null var crsBookNo:String? = null var resortBookNo:String? = null var resortLegNo:Int? = null var confirmationID:String? = null var reservationStatus:String? = null var hasDailyRooms:Boolean? = null var rateRoomType:String? = null var actualArrivalDate:Date? = null var actualDepartureDate:Date? = null var bookDate:Date? = null var bookedArrivalDate:Date? = null var bookedDepartureDate:Date? = null var compYN:String? = null var adults:Int? = null var children:Int? = null var roomCategory:String? = null var roomNumber:String? = null var rateAmount:BigDecimal? = null var rateCode:String? = null var rateAmountCurrencyCode:String? = null var currencyCode:String? = null var sourceCode:String? = null var marketCode:String? = null var travelAgentID:String? = null var companyID:String? = null var channel:String? = null var paymentMethod:String? = null var rateCurrencyCode:String? = null var totalRevenue:BigDecimal? = null var roomRevenue:BigDecimal? = null var fbRevenue:BigDecimal? = null var membershipType:String? = null var membershipID:String? = null var transactionID:String? = null var transactionStatus:String? = null var uniqueIDs:ArrayList = ArrayList() var stayHistoryRevenueCollection:ArrayList = ArrayList() var stayHistoryDailyRateCollection:ArrayList = ArrayList() } open class StayHistoryRevenue { var recordStatus:String? = null @DataMember(IsRequired=true) var revenueGroup:String? = null @DataMember(IsRequired=true) var revenueType:String? = null @DataMember(IsRequired=true) var amount:BigDecimal? = null var currencyCode:String? = null var folioWindow:String? = null var transactionDate:Date? = null var inactiveDate:Date? = null } open class UniqueIDType { var id:String? = null @SerializedName("type") var Type:String? = null var context:String? = null } open class StayHistoryDailyRate { var recordStatus:String? = null var transactionDate:Date? = null var rateCode:String? = null var marketCode:String? = null var amount:BigDecimal? = null var currencyCode:String? = null var roomNumber:String? = null var resourceID:String? = null var pseudoRoom:String? = null var roomCategory:String? = null var rateRoomType:String? = null var inactiveDate:Date? = null }