Files
TrisolarisServer/src/main/kotlin/com/android/trisolarisserver/controller/dto/RateDtos.kt
androidlover5842 ff301d80fa
All checks were successful
build-and-deploy / build-deploy (push) Successful in 1m34s
Return average rate for calendar range
2026-01-29 11:28:58 +05:30

74 lines
1.5 KiB
Kotlin

package com.android.trisolarisserver.controller.dto
import java.time.LocalDate
import java.util.UUID
data class RatePlanCreateRequest(
val code: String,
val name: String,
val roomTypeCode: String,
val baseRate: Long,
val currency: String? = null
)
data class RatePlanUpdateRequest(
val name: String,
val baseRate: Long,
val currency: String? = null
)
data class RatePlanResponse(
val id: UUID,
val propertyId: UUID,
val roomTypeId: UUID,
val roomTypeCode: String,
val code: String,
val name: String,
val baseRate: Long,
val currency: String
)
data class RateCalendarRangeUpsertRequest(
val from: String,
val to: String,
val rate: Long
)
data class RateCalendarResponse(
val id: UUID,
val ratePlanId: UUID,
val rateDate: LocalDate,
val rate: Long
)
data class RateCalendarAverageResponse(
val ratePlanId: UUID,
val from: LocalDate,
val to: LocalDate,
val averageRate: Double,
val days: Int,
val currency: String
)
data class RoomStayRateChangeRequest(
val effectiveAt: String,
val nightlyRate: Long,
val rateSource: String,
val ratePlanCode: String? = null,
val currency: String? = null
)
data class RoomStayRateChangeResponse(
val oldRoomStayId: UUID,
val newRoomStayId: UUID,
val effectiveAt: String
)
data class RateResolveResponse(
val roomTypeCode: String,
val rateDate: LocalDate,
val rate: Long,
val currency: String,
val ratePlanCode: String? = null
)