From cd1b635b2ae90d9ac2d8b1779183a1fbd8c5fd5c Mon Sep 17 00:00:00 2001 From: vlad Date: Tue, 13 Jun 2017 16:12:20 -0700 Subject: Adding domain entities --- .../driver/pdsuidomain/entities/Intervention.scala | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala (limited to 'src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala new file mode 100644 index 0000000..6ff1a67 --- /dev/null +++ b/src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala @@ -0,0 +1,48 @@ +package xyz.driver.pdsuidomain.entities + +import xyz.driver.pdsuicommon.domain.{LongId, StringId} +import xyz.driver.pdsuicommon.logging._ + + +final case class InterventionType(id: LongId[InterventionType], name: String) + +object InterventionType { + implicit def toPhiString(x: InterventionType): PhiString = { + import x._ + phi"InterventionType(id=$id, name=${Unsafe(name)})" + } +} + +final case class InterventionArm(armId: LongId[Arm], interventionId: LongId[Intervention]) + +object InterventionArm { + implicit def toPhiString(x: InterventionArm): PhiString = { + import x._ + phi"InterventionArm(armId=$armId, interventionId=$interventionId)" + } +} + +final case class Intervention(id: LongId[Intervention], + trialId: StringId[Trial], + name: String, + originalName: String, + typeId: Option[LongId[InterventionType]], + originalType: Option[String], + description: String, + isActive: Boolean) + +object Intervention { + implicit def toPhiString(x: Intervention): PhiString = { + import x._ + phi"Intervention(id=$id, trialId=$trialId, name=${Unsafe(name)}, typeId=$typeId, isActive=$isActive)" + } +} + +final case class InterventionWithArms(intervention: Intervention, arms: List[InterventionArm]) + +object InterventionWithArms { + implicit def toPhiString(x: InterventionWithArms): PhiString = { + import x._ + phi"InterventionWithArms(intervention=$intervention, arms=$arms)" + } +} -- cgit v1.2.3