diff options
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/entities')
7 files changed, 69 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..f5c6974 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,13 @@ object Trial { case object Lung extends Condition case object Prostate extends Condition - val All = Set(Breast, Lung, Prostate) + def fromString(condition: String): Condition = condition match { + case "Breast" => Breast + case "Lung" => Lung + case "Prostate" => Prostate + } + + val All: Set[Condition] = Set(Breast, Lung, Prostate) } } @@ -93,14 +98,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) { |