aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/entities
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/entities')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/DirectReport.scala14
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/LinkedPatient.scala2
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/MedicalRecord.scala48
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/Message.scala6
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/RawPatientDocument.scala20
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/RawTrialLabel.scala26
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala25
7 files changed, 70 insertions, 71 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/DirectReport.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/DirectReport.scala
index c09a1d8..42ac55b 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/DirectReport.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/DirectReport.scala
@@ -32,10 +32,10 @@ object DirectReport {
}
}
-case class DirectReport(id: UuidId[DirectReport],
- patientId: UuidId[Patient],
- reportType: ReportType,
- date: LocalDate,
- documentType: String,
- providerType: String,
- providerName: String)
+final case class DirectReport(id: UuidId[DirectReport],
+ patientId: UuidId[Patient],
+ reportType: ReportType,
+ date: LocalDate,
+ documentType: String,
+ providerType: String,
+ providerName: String)
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/LinkedPatient.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/LinkedPatient.scala
index 28f279f..d10310a 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/LinkedPatient.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/LinkedPatient.scala
@@ -11,4 +11,4 @@ object LinkedPatient {
}
}
-case class LinkedPatient(userId: StringId[User], patientId: UuidId[Patient], trialId: StringId[Trial])
+final case class LinkedPatient(userId: StringId[User], patientId: UuidId[Patient], trialId: StringId[Trial])
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/MedicalRecord.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/MedicalRecord.scala
index 9f38283..3b53945 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/MedicalRecord.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/MedicalRecord.scala
@@ -32,11 +32,11 @@ object MedicalRecord {
object Meta {
- case class Duplicate(predicted: Option[Boolean],
- startPage: Double,
- endPage: Double,
- startOriginalPage: Double,
- endOriginalPage: Option[Double])
+ final case class Duplicate(predicted: Option[Boolean],
+ startPage: Double,
+ endPage: Double,
+ startOriginalPage: Double,
+ endOriginalPage: Option[Double])
extends Meta {
override val metaType = "duplicate"
override def confirmed: Duplicate = copy(predicted = predicted.map(_ => false))
@@ -50,7 +50,7 @@ object MedicalRecord {
}
}
- case class Reorder(predicted: Option[Boolean], items: Seq[Int]) extends Meta {
+ final case class Reorder(predicted: Option[Boolean], items: Seq[Int]) extends Meta {
override val metaType = "reorder"
override def confirmed: Reorder = copy(predicted = predicted.map(_ => false))
}
@@ -62,7 +62,7 @@ object MedicalRecord {
}
}
- case class Rotation(predicted: Option[Boolean], items: Map[String, Int]) extends Meta {
+ final case class Rotation(predicted: Option[Boolean], items: Map[String, Int]) extends Meta {
override val metaType = "rotation"
override def confirmed: Rotation = copy(predicted = predicted.map(_ => false))
}
@@ -129,7 +129,7 @@ object MedicalRecord {
case object Empty extends PdfSource
/** @param createResource Constructor of the resource which is represents the file */
- case class Channel(createResource: () => ReadableByteChannel) extends PdfSource
+ final case class Channel(createResource: () => ReadableByteChannel) extends PdfSource
}
implicit def toPhiString(x: MedicalRecord): PhiString = {
@@ -139,22 +139,22 @@ object MedicalRecord {
}
}
-case class MedicalRecord(id: LongId[MedicalRecord],
- status: MedicalRecord.Status,
- previousStatus: Option[MedicalRecord.Status],
- assignee: Option[StringId[User]],
- previousAssignee: Option[StringId[User]],
- lastActiveUserId: Option[StringId[User]],
- patientId: UuidId[Patient],
- requestId: RecordRequestId,
- disease: String,
- caseId: Option[CaseId],
- physician: Option[String],
- sourceName: String,
- meta: Option[TextJson[List[Meta]]],
- predictedMeta: Option[TextJson[List[Meta]]],
- predictedDocuments: Option[TextJson[List[Document]]],
- lastUpdate: LocalDateTime) {
+final case class MedicalRecord(id: LongId[MedicalRecord],
+ status: MedicalRecord.Status,
+ previousStatus: Option[MedicalRecord.Status],
+ assignee: Option[StringId[User]],
+ previousAssignee: Option[StringId[User]],
+ lastActiveUserId: Option[StringId[User]],
+ patientId: UuidId[Patient],
+ requestId: RecordRequestId,
+ disease: String,
+ caseId: Option[CaseId],
+ physician: Option[String],
+ sourceName: String,
+ meta: Option[TextJson[List[Meta]]],
+ predictedMeta: Option[TextJson[List[Meta]]],
+ predictedDocuments: Option[TextJson[List[Document]]],
+ lastUpdate: LocalDateTime) {
import MedicalRecord.Status._
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/Message.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/Message.scala
index f02f481..3bdbac8 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/Message.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/Message.scala
@@ -24,10 +24,10 @@ object Message {
implicit def toPhiString(x: Message): PhiString = {
import x._
- val entityId = recordId
- .orElse(documentId)
- .orElse(patientId)
+ val entityId: Option[String] = recordId
.map(_.toString)
+ .orElse(documentId.map(_.toString))
+ .orElse(patientId.map(_.toString))
phi"Message(id=$id, userId=$userId, isDraft=$isDraft, entityId=${Unsafe(entityId)}"
}
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/RawPatientDocument.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/RawPatientDocument.scala
index 8e72023..b66483c 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/RawPatientDocument.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/RawPatientDocument.scala
@@ -5,16 +5,16 @@ import java.time.LocalDate
import xyz.driver.pdsuicommon.domain.{LongId, UuidId}
import xyz.driver.pdsuicommon.logging._
-case class RawPatientDocument(disease: String,
- patientId: UuidId[Patient],
- requestId: RecordRequestId,
- recordId: LongId[MedicalRecord],
- recordStatus: MedicalRecord.Status,
- documentId: LongId[Document],
- documentType: String,
- documentProviderType: String,
- documentStartDate: LocalDate,
- documentStatus: Document.Status)
+final case class RawPatientDocument(disease: String,
+ patientId: UuidId[Patient],
+ requestId: RecordRequestId,
+ recordId: LongId[MedicalRecord],
+ recordStatus: MedicalRecord.Status,
+ documentId: LongId[Document],
+ documentType: String,
+ documentProviderType: String,
+ documentStartDate: LocalDate,
+ documentStatus: Document.Status)
object RawPatientDocument {
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/RawTrialLabel.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/RawTrialLabel.scala
index 82204c2..9e69c87 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/RawTrialLabel.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/RawTrialLabel.scala
@@ -5,19 +5,19 @@ import java.time.LocalDateTime
import xyz.driver.pdsuicommon.domain.{LongId, StringId, UuidId}
import xyz.driver.pdsuicommon.logging._
-case class RawTrialLabel(nctId: StringId[Trial],
- trialId: UuidId[Trial],
- condition: String,
- lastReviewed: LocalDateTime,
- armName: String,
- armId: LongId[Arm],
- labelId: LongId[Label],
- value: Option[Boolean],
- criterionId: LongId[Criterion],
- criteria: String,
- criterionArmId: LongId[Arm],
- isCompound: Boolean,
- isDefining: Boolean)
+final case class RawTrialLabel(nctId: StringId[Trial],
+ trialId: UuidId[Trial],
+ condition: String,
+ lastReviewed: LocalDateTime,
+ armName: String,
+ armId: LongId[Arm],
+ labelId: LongId[Label],
+ value: Option[Boolean],
+ criterionId: LongId[Criterion],
+ criteria: String,
+ criterionArmId: LongId[Arm],
+ isCompound: Boolean,
+ isDefining: Boolean)
object RawTrialLabel {
diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala
index 3fe8176..2f90820 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/entities/Trial.scala
@@ -52,16 +52,15 @@ object Trial {
implicit def toPhiString(x: Status): PhiString = Unsafe(Utils.getClassSimpleName(x.getClass))
}
- case class PdfSource(path: Path) extends AnyVal
+ final case class PdfSource(path: Path) extends AnyVal
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, " +
- phi"isSummaryReviewed=$isSummaryReviewed, isCriteriaReviewed=$isCriteriaReviewed)"
+ phi"lastActiveUserId=$lastActiveUserId, assignee=$assignee, previousAssignee=$previousAssignee, "
}
- case class Locations(locations: List[String])
+ final case class Locations(locations: List[String])
sealed trait Condition
@@ -71,7 +70,14 @@ object Trial {
case object Lung extends Condition
case object Prostate extends Condition
- val All = Set(Breast, Lung, Prostate)
+ 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)
}
}
@@ -93,14 +99,7 @@ final case class Trial(id: StringId[Trial],
overviewTemplate: String,
isUpdated: Boolean,
title: String,
- originalTitle: String,
- isSummaryReviewed: Boolean,
- isCriteriaReviewed: Boolean,
- eligibilityCriteriaChecksum: String,
- briefSummaryChecksum: String,
- detailedDescriptionChecksum: String,
- armDescriptionChecksum: String) {
-
+ originalTitle: String) {
import Trial.Status._
if (previousStatus.nonEmpty) {