aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/entities
diff options
context:
space:
mode:
authorKseniya Tomskikh <ktomskih@datamonsters.co>2017-10-11 16:56:06 +0700
committerGitHub <noreply@github.com>2017-10-11 16:56:06 +0700
commit3375f1beeab7af9a6732d6fce8762c3a3038e1f3 (patch)
treee4f1ad85a2ea17c76bcc844420d5f97bfd116e23 /src/main/scala/xyz/driver/pdsuidomain/entities
parentbbbcaf35a6081dba24dbb9a9aeb9d25fc2ca60be (diff)
parent85c78f58f0428d13795aa0419ff42471513a34d6 (diff)
downloadrest-query-3375f1beeab7af9a6732d6fce8762c3a3038e1f3.tar.gz
rest-query-3375f1beeab7af9a6732d6fce8762c3a3038e1f3.tar.bz2
rest-query-3375f1beeab7af9a6732d6fce8762c3a3038e1f3.zip
Merge pull request #37 from drivergroup/add-slot-eligibility-armsv0.8.1
Add slot eligibility arms
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/entities')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/Criterion.scala2
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/EligibilityArm.scala42
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala2
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/SlotArmEligibilityArm.scala13
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/SlotArms.scala20
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala2
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialArm.scala6
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialLabelCriterion.scala4
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialWithLabels.scala3
9 files changed, 83 insertions, 11 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/Criterion.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/Criterion.scala
index 2432251..26ced22 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/Criterion.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/Criterion.scala
@@ -30,7 +30,7 @@ object Criterion {
}
}
-final case class CriterionArm(criterionId: LongId[Criterion], armId: LongId[Arm])
+final case class CriterionArm(criterionId: LongId[Criterion], armId: LongId[EligibilityArm])
object CriterionArm {
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/EligibilityArm.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/EligibilityArm.scala
new file mode 100644
index 0000000..50b49ad
--- /dev/null
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/EligibilityArm.scala
@@ -0,0 +1,42 @@
+package xyz.driver.pdsuidomain.entities
+
+import java.time.LocalDateTime
+
+import xyz.driver.entities.patient.CancerType
+import xyz.driver.pdsuicommon.domain.{LongId, StringId}
+import xyz.driver.pdsuicommon.logging._
+
+final case class EligibilityArm(id: LongId[EligibilityArm],
+ name: String,
+ originalName: String,
+ trialId: StringId[Trial],
+ deleted: Option[LocalDateTime] = None)
+
+object EligibilityArm {
+
+ implicit def toPhiString(x: EligibilityArm): PhiString = {
+ import x._
+ phi"Arm(id=$id, name=${Unsafe(x.name)}, trialId=${Unsafe(x.trialId)})"
+ }
+}
+
+final case class EligibilityArmDisease(eligibilityArmId: LongId[EligibilityArm], disease: CancerType)
+
+object EligibilityArmDisease {
+
+ implicit def toPhiString(x: EligibilityArmDisease): PhiString = {
+ phi"EligibilityArmDisease(eligibilityArmId=${Unsafe(x.eligibilityArmId)}, disease=${Unsafe(x.disease)})"
+ }
+
+}
+
+final case class EligibilityArmWithDiseases(eligibilityArm: EligibilityArm,
+ eligibilityArmDiseases: Seq[EligibilityArmDisease])
+
+object EligibilityArmWithDiseases {
+
+ implicit def toPhiString(x: EligibilityArmWithDiseases): PhiString = {
+ import x._
+ phi"EligibilityArmWithDiseases(eligibilityArm=$eligibilityArm, eligibilityArmDiseases=$eligibilityArmDiseases)"
+ }
+}
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala
index cc831cd..f02bedc 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/Intervention.scala
@@ -188,7 +188,7 @@ object InterventionType {
}
}
-final case class InterventionArm(armId: LongId[Arm], interventionId: LongId[Intervention])
+final case class InterventionArm(armId: LongId[SlotArm], interventionId: LongId[Intervention])
object InterventionArm {
implicit def toPhiString(x: InterventionArm): PhiString = {
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/SlotArmEligibilityArm.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/SlotArmEligibilityArm.scala
new file mode 100644
index 0000000..70114de
--- /dev/null
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/SlotArmEligibilityArm.scala
@@ -0,0 +1,13 @@
+package xyz.driver.pdsuidomain.entities
+
+import xyz.driver.pdsuicommon.domain.LongId
+import xyz.driver.pdsuicommon.logging._
+
+final case class SlotArmEligibilityArm(slotArmId: LongId[SlotArm], eligibilityArmId: LongId[EligibilityArm])
+
+object SlotArmEligibilityArm {
+ implicit def toPhiString(x: SlotArmEligibilityArm): PhiString = {
+ import x._
+ phi"SlotArmEligibilityArm(slotArmId=$slotArmId, eligibilityArmId=$eligibilityArmId)"
+ }
+}
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/SlotArms.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/SlotArms.scala
new file mode 100644
index 0000000..932de38
--- /dev/null
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/SlotArms.scala
@@ -0,0 +1,20 @@
+package xyz.driver.pdsuidomain.entities
+
+import java.time.LocalDateTime
+
+import xyz.driver.pdsuicommon.domain.{LongId, StringId}
+import xyz.driver.pdsuicommon.logging._
+
+final case class SlotArm(id: LongId[SlotArm],
+ name: String,
+ originalName: String,
+ trialId: StringId[Trial],
+ deleted: Option[LocalDateTime] = None)
+
+object SlotArm {
+
+ implicit def toPhiString(x: SlotArm): PhiString = {
+ import x._
+ phi"Arm(id=$id, name=${Unsafe(x.name)}, trialId=${Unsafe(x.trialId)})"
+ }
+}
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala
index 7584e9c..ac5feef 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala
@@ -2,7 +2,6 @@ package xyz.driver.pdsuidomain.entities
import java.time.LocalDateTime
-import xyz.driver.entities.patient.CancerType
import xyz.driver.pdsuicommon.domain.{LongId, StringId, User, UuidId}
import xyz.driver.pdsuicommon.logging._
import xyz.driver.pdsuicommon.utils.Utils
@@ -69,7 +68,6 @@ final case class Trial(id: StringId[Trial],
previousAssignee: Option[StringId[User]],
lastActiveUserId: Option[StringId[User]],
lastUpdate: LocalDateTime,
- disease: CancerType,
phase: String,
hypothesisId: Option[UuidId[Hypothesis]],
studyDesignId: Option[LongId[StudyDesign]],
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialArm.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialArm.scala
index 5a9a406..fbac0df 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialArm.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialArm.scala
@@ -2,14 +2,14 @@ package xyz.driver.pdsuidomain.entities.export.trial
import xyz.driver.pdsuicommon.domain._
import xyz.driver.pdsuicommon.logging._
-import xyz.driver.pdsuidomain.entities.Arm
+import xyz.driver.pdsuidomain.entities.EligibilityArm
-final case class ExportTrialArm(armId: LongId[Arm], armName: String)
+final case class ExportTrialArm(armId: LongId[EligibilityArm], armName: String, diseaseList: Seq[String])
object ExportTrialArm {
implicit def toPhiString(x: ExportTrialArm): PhiString = {
import x._
- phi"ExportTrialArm(armId=$armId, armName=${Unsafe(armName)})"
+ phi"ExportTrialArm(armId=$armId, armName=${Unsafe(armName)}, diseaseList=${Unsafe(diseaseList)})"
}
}
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialLabelCriterion.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialLabelCriterion.scala
index 385bbbe..8376e34 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialLabelCriterion.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialLabelCriterion.scala
@@ -3,12 +3,12 @@ package xyz.driver.pdsuidomain.entities.export.trial
import xyz.driver.entities.labels.Label
import xyz.driver.pdsuicommon.domain._
import xyz.driver.pdsuicommon.logging._
-import xyz.driver.pdsuidomain.entities.{Arm, Criterion}
+import xyz.driver.pdsuidomain.entities.{Criterion, EligibilityArm}
final case class ExportTrialLabelCriterion(criterionId: LongId[Criterion],
value: Option[Boolean],
labelId: LongId[Label],
- armIds: Set[LongId[Arm]],
+ armIds: Set[LongId[EligibilityArm]],
criteria: String,
isCompound: Boolean,
isDefining: Boolean)
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialWithLabels.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialWithLabels.scala
index 3a9434b..3681945 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialWithLabels.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/export/trial/ExportTrialWithLabels.scala
@@ -8,7 +8,6 @@ import xyz.driver.pdsuidomain.entities.Trial
final case class ExportTrialWithLabels(nctId: StringId[Trial],
trialId: UuidId[Trial],
- disease: String,
lastReviewed: LocalDateTime,
labelVersion: Long,
arms: List[ExportTrialArm],
@@ -18,7 +17,7 @@ object ExportTrialWithLabels {
implicit def toPhiString(x: ExportTrialWithLabels): PhiString = {
import x._
- phi"TrialWithLabels(nctId=$nctId, trialId=$trialId, disease=${Unsafe(disease)}, " +
+ phi"TrialWithLabels(nctId=$nctId, trialId=$trialId}, " +
phi"lastReviewed=$lastReviewed, labelVersion=${Unsafe(labelVersion)}, arms=$arms, criteria=$criteria)"
}
}