aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala48
1 files changed, 48 insertions, 0 deletions
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)"
+ }
+}