add fleet

This commit is contained in:
2024-03-12 17:56:11 +05:30
parent 67b7c5aa9a
commit 32d4ea28f5
6 changed files with 265 additions and 0 deletions

View File

@@ -7,6 +7,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize
import io.ebean.Model
import io.ebean.annotation.*
import io.ebean.annotation.Index
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STRestartNumber
import java.time.LocalDate
import java.time.LocalDateTime
import javax.persistence.*
@@ -517,4 +518,69 @@ open class Payment : BaseTenantModel() {
@ManyToOne
var vendor: Vendor? = null
}
data class FleetRenewal(val renewal : String, val date : LocalDate)
@Entity
open class Fleet : BaseTenantModel() {
fun patchValues(updated: Fleet) {
this.name = updated.name
this.type = updated.type
this.regNumber = updated.regNumber
this.model = updated.model
this.make = updated.make
this.driver = updated.driver
this.driverContact = updated.driverContact
this.mileage = updated.mileage
this.cost = updated.cost
this.insuranceRenewalDate = updated.insuranceRenewalDate
this.pollutionRenewalDate = updated.pollutionRenewalDate
this.fitnessRenewalDate = updated.fitnessRenewalDate
this.renewals = updated.renewals
}
var name: String = ""
var type: String = ""
var regNumber: String = ""
var model: String = ""
var make: String = ""
var driver: String = ""
var driverContact: String = ""
var mileage: Double = 0.0
var cost: Double = 0.0
var insuranceRenewalDate: LocalDate? = null
var pollutionRenewalDate: LocalDate? = null
var fitnessRenewalDate: LocalDate? = null
@DbJsonB
var renewals: List<FleetRenewal>?=null
}
@Entity
open class FleetType : BaseTenantModel() {
fun patchValues(updated: FleetType) {
this.name = updated.name
this.personIncharge = updated.personIncharge
}
var name: String = ""
var personIncharge: String = ""
}
@Entity
open class Vehicle : BaseTenantModel() {
fun patchValues(updated: Vehicle) {
this.name = updated.name
}
var name: String = ""
}
@Entity
open class Renewal : BaseTenantModel() {
fun patchValues(updated: Renewal) {
this.name = updated.name
}
var name: String = ""
}