25 lines
648 B
Scala
25 lines
648 B
Scala
|
|
package lu.foyer
|
||
|
|
package clients
|
||
|
|
|
||
|
|
import zio.schema.*
|
||
|
|
|
||
|
|
import java.time.LocalDate
|
||
|
|
|
||
|
|
enum ClientState derives Schema:
|
||
|
|
case Actif(
|
||
|
|
lastName: ClientLastName,
|
||
|
|
firstName: ClientFirstName,
|
||
|
|
birthDate: ClientBirthDate,
|
||
|
|
drivingLicenseDate: Option[ClientDrivingLicenseDate],
|
||
|
|
phoneNumber: Option[PhoneNumberInput],
|
||
|
|
email: Option[Email],
|
||
|
|
address: Option[Address])
|
||
|
|
case Inactif(
|
||
|
|
lastName: ClientLastName,
|
||
|
|
firstName: ClientFirstName,
|
||
|
|
birthDate: ClientBirthDate,
|
||
|
|
drivingLicenseDate: Option[ClientDrivingLicenseDate],
|
||
|
|
phoneNumber: Option[PhoneNumberInput],
|
||
|
|
email: Option[Email],
|
||
|
|
address: Option[Address])
|