/* Options: Date: 2025-04-29 10:56:08 Version: 8.61 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: DashboardReportRequest.* //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.* @Route(Path="/v1/reports", Verbs="POST") open class DashboardReportRequest : IReturn, IPost { /** * Report Name */ @ApiMember(Description="Report Name", IsRequired=true, ParameterType="body") open var reportName:String? = null /** * Filters */ @ApiMember(Description="Filters", IsRequired=true, ParameterType="body") open var filters:HashMap = HashMap() /** * Paging */ @ApiMember(Description="Paging", ParameterType="body") open var paging:ReportsPaging? = null /** * Sorting */ @ApiMember(Description="Sorting", ParameterType="body") open var sorting:HashMap = HashMap() companion object { private val responseType = DashboardReportResult::class.java } override fun getResponseType(): Any? = DashboardReportRequest.responseType } open class DashboardReportResult { open var totalCount:Int? = null open var reportResult:ArrayList? = null } open class ReportFilter { @SerializedName("type") open var Type:ReportFilterType? = null open var values:ArrayList? = null open var start:Date? = null open var end:Date? = null open var higherThan:Int? = null open var lowerThan:Int? = null } open class ReportsPaging { open var page:Int? = null open var pageSize:Int? = null } enum class ReportSortType { Asc, Desc, } enum class ReportFilterType { List, ListLike, Date, Range, }