aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala105
1 files changed, 0 insertions, 105 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala
deleted file mode 100644
index db4def2..0000000
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala
+++ /dev/null
@@ -1,105 +0,0 @@
-package xyz.driver.pdsuidomain.entities
-
-import java.time.LocalDateTime
-
-import xyz.driver.pdsuicommon.domain.{LongId, StringId, User, UuidId}
-import xyz.driver.pdsuicommon.logging._
-import xyz.driver.pdsuicommon.utils.Utils
-import xyz.driver.pdsuidomain.entities.Trial.{Condition, Status}
-
-final case class StudyDesign(id: LongId[StudyDesign], name: String)
-
-object StudyDesign {
- implicit def toPhiString(x: StudyDesign): PhiString = {
- import x._
- phi"StudyDesign(id=$id, category=${Unsafe(name)})"
- }
-}
-
-object Trial {
-
- sealed trait Status {
- def oneOf(xs: Status*): Boolean = xs.contains(this)
- def oneOf(xs: Set[Status]): Boolean = xs.contains(this)
- }
-
- object Status {
- case object New extends Status
- case object ReviewSummary extends Status
- case object Summarized extends Status
- case object PendingUpdate extends Status
- case object Update extends Status
- case object ReviewCriteria extends Status
- case object Done extends Status
- case object Flagged extends Status
- case object Archived extends Status
-
- val All = Set[Status](
- New,
- ReviewSummary,
- Summarized,
- PendingUpdate,
- Update,
- ReviewCriteria,
- Done,
- Flagged,
- Archived
- )
-
- val AllPrevious = Set[Status](New, ReviewSummary, Summarized, ReviewCriteria)
-
- implicit def toPhiString(x: Status): PhiString = Unsafe(Utils.getClassSimpleName(x.getClass))
- }
-
- implicit def toPhiString(x: Trial): PhiString = {
- import x._
- phi"Trial(id=$id, externalId=$externalId, status=$status, previousStatus=$previousStatus, " +
- phi"lastActiveUserId=$lastActiveUserId, assignee=$assignee, previousAssignee=$previousAssignee, "
- }
-
- final case class Locations(locations: List[String])
-
- sealed trait Condition
-
- object Condition {
-
- case object Breast extends Condition
- case object Lung extends Condition
- case object Prostate extends Condition
-
- def fromString(condition: String): Option[Condition] = condition match {
- case "Breast" => Some(Breast)
- case "Lung" => Some(Lung)
- case "Prostate" => Some(Prostate)
- case _ => None
- }
-
- val All: Set[Condition] = Set(Breast, Lung, Prostate)
- }
-}
-
-final case class Trial(id: StringId[Trial],
- externalId: UuidId[Trial],
- status: Status,
- assignee: Option[StringId[User]],
- previousStatus: Option[Status],
- previousAssignee: Option[StringId[User]],
- lastActiveUserId: Option[StringId[User]],
- lastUpdate: LocalDateTime,
- condition: Condition,
- phase: String,
- hypothesisId: Option[UuidId[Hypothesis]],
- studyDesignId: Option[LongId[StudyDesign]],
- originalStudyDesign: Option[String],
- isPartner: Boolean,
- overview: Option[String],
- overviewTemplate: String,
- isUpdated: Boolean,
- title: String,
- originalTitle: String) {
- import Trial.Status._
-
- if (previousStatus.nonEmpty) {
- assert(AllPrevious.contains(previousStatus.get), s"Previous status has invalid value: ${previousStatus.get}")
- }
-}