/* Options: Date: 2026-08-17 09:14:39 Version: 6.10 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://stubbur-app.azurewebsites.net //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: RefreshmentsOverviewRequest.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.* import java.util.* import net.servicestack.client.* @Route(Path="/sales/refreshments/overview", Verbs="POST") open class RefreshmentsOverviewRequest : IReturn { var ownerId:Int? = null var seriesId:Int? = null var fromUtc:Date? = null var toUtc:Date? = null var compareFromUtc:Date? = null var compareToUtc:Date? = null var bucket:String? = null var topEventsLimit:Int? = null var recentOrdersLimit:Int? = null companion object { private val responseType = RefreshmentsOverviewResult::class.java } override fun getResponseType(): Any? = RefreshmentsOverviewRequest.responseType } open class RefreshmentsOverviewResult { var current:RefreshmentsKpis? = null var previous:RefreshmentsKpis? = null var delta:RefreshmentsDeltas? = null var trend:ArrayList = ArrayList() var previousTrend:ArrayList = ArrayList() var products:ArrayList = ArrayList() var events:ArrayList = ArrayList() var byHourOfDay:ArrayList = ArrayList() var byDayOfWeek:ArrayList = ArrayList() var byPaymentMethod:ArrayList = ArrayList() var recentOrders:ArrayList = ArrayList() var hasAnyDataEver:Boolean? = null var bucket:String? = null var freshnessUtc:Date? = null var statusCode:Int? = null var message:String? = null } open class SalesTrendBucket { var bucket:Date? = null var revenue:BigDecimal? = null var tickets:Int? = null } open class SalesHourBucket { var hour:Int? = null var revenue:BigDecimal? = null var orders:Int? = null var tickets:Int? = null } open class SalesDowBucket { var dow:Int? = null var revenue:BigDecimal? = null var orders:Int? = null var tickets:Int? = null } open class RefreshmentsKpis { var revenue:BigDecimal? = null var refunded:BigDecimal? = null var units:Int? = null var orders:Int? = null var aov:BigDecimal? = null var unitsPerOrder:BigDecimal? = null var attendance:Int? = null var perCap:BigDecimal? = null } open class RefreshmentsDeltas { var revenue:KpiDelta? = null var refunded:KpiDelta? = null var units:KpiDelta? = null var orders:KpiDelta? = null var aov:KpiDelta? = null var perCap:KpiDelta? = null } open class RefreshmentsProduct { var ticketTypeId:Int? = null var name:String? = null var units:Int? = null var revenue:BigDecimal? = null var orders:Int? = null var lastSoldAt:Date? = null } open class RefreshmentsEventRow { var eventId:Int? = null var eventName:String? = null var eventDate:Date? = null var revenue:BigDecimal? = null var units:Int? = null var orders:Int? = null var attendance:Int? = null var perCap:BigDecimal? = null } open class RefreshmentsPaymentMethodRow { var paymentMethodId:String? = null var revenue:BigDecimal? = null var units:Int? = null var orders:Int? = null } open class RefreshmentsRecentOrder { var ticketId:Int? = null var createdAt:Date? = null var eventName:String? = null var amount:BigDecimal? = null var units:Int? = null var paymentMethodId:String? = null } open class KpiDelta { var abs:BigDecimal? = null var pct:Double? = null var dir:String? = null }