From b5e0d5f91b52013bc11ef3ea586a54bb001577bc Mon Sep 17 00:00:00 2001 From: vlad Date: Sun, 1 Oct 2017 12:50:54 -0700 Subject: Fixing IN in filters, Model from EVLS added to common, Reusing domain model labels --- .../pdsuidomain/fakes/entities/eligibility.scala | 72 ++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 src/main/scala/xyz/driver/pdsuidomain/fakes/entities/eligibility.scala (limited to 'src/main/scala/xyz/driver/pdsuidomain/fakes/entities/eligibility.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/eligibility.scala b/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/eligibility.scala new file mode 100644 index 0000000..7dc50be --- /dev/null +++ b/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/eligibility.scala @@ -0,0 +1,72 @@ +package xyz.driver.pdsuidomain.fakes.entities + +import xyz.driver.core.generators +import xyz.driver.entities.clinic.{ClinicalRecord, TestOrder} +import xyz.driver.entities.patient.CancerType +import xyz.driver.entities.report.Report +import xyz.driver.fakes +import xyz.driver.pdsuidomain.entities.eligibility._ + +object eligibility { + import xyz.driver.core.generators._ + + def nextMolecularEvidenceDocument(): MolecularEvidenceDocument = + MolecularEvidenceDocument( + documentType = xyz.driver.pdsuidomain.fakes.entities.rep.DocumentGen.nextDocumentType(), + providerType = xyz.driver.pdsuidomain.fakes.entities.rep.MedicalRecordGen.nextProviderType(), + providerName = nextOption(nextString(100)), + date = nextOption(nextDate()), + reportId = nextId[Report](), + reportType = fakes.entities.assays.nextAssayType(), + isDriverDocument = nextBoolean() + ) + + def nextClinicalEvidenceDocument(): ClinicalEvidenceDocument = + ClinicalEvidenceDocument( + documentType = xyz.driver.pdsuidomain.fakes.entities.rep.DocumentGen.nextDocumentType(), + providerType = xyz.driver.pdsuidomain.fakes.entities.rep.MedicalRecordGen.nextProviderType(), + providerName = nextOption(nextString(100)), + date = nextOption(nextDate()), + documentId = nextId[ClinicalEvidenceDocument](), + requestId = nextId[ClinicalRecord](), + isDriverDocument = nextBoolean() + ) + + def nextEvidenceDocument(): EvidenceDocument = + oneOf[EvidenceDocument](nextMolecularEvidenceDocument(), + nextClinicalEvidenceDocument(), + nextClinicalEvidenceDocument()) // For more clinical documents + + def nextEvidence(): Evidence = + Evidence( + evidenceId = Option(nextId[Evidence]()), + evidenceText = nextString(100), + labelValue = xyz.driver.fakes.entities.labels.nextLabelValue(), + nextEvidenceDocument(), + isPrimaryValue = nextOption(nextBoolean()) + ) + + def nextLabelWithEvidence(): LabelWithEvidence = + LabelWithEvidence(label = fakes.entities.labels.nextLabel(), evidence = Seq.empty) + + def nextLabelMismatchRank(): LabelMismatchRank = + LabelMismatchRank( + label = fakes.entities.labels.nextLabel(), + score = nextInt(100), + trials = seqOf(xyz.driver.pdsuidomain.fakes.entities.export.nextExportTrialWithLabels()), + evidence = seqOf(nextEvidence()) + ) + + def nextMismatchRankedLabels(): MismatchRankedLabels = + MismatchRankedLabels(data = seqOf(nextLabelMismatchRank()), labelVersion = nextInt(100)) + + def nextMatchedPatient(): MatchedPatient = + MatchedPatient( + patientId = nextId[MatchedPatient](), + name = fakes.entities.common.nextFullName[MatchedPatient](), + birthDate = nextDate(), + orderId = nextId[TestOrder](), + disease = generators.oneOf[CancerType](CancerType.Breast, CancerType.Lung, CancerType.Prostate), + patientDataStatus = fakes.entities.process.nextProcessStepExecutionStatus() + ) +} -- cgit v1.2.3 From c5b7f009479930b82f0fb839971eeb2c457dcef0 Mon Sep 17 00:00:00 2001 From: vlad Date: Sun, 1 Oct 2017 13:07:43 -0700 Subject: Slight changes in naming --- .../scala/xyz/driver/pdsuidomain/entities/eligibility.scala | 4 ++-- .../xyz/driver/pdsuidomain/fakes/entities/eligibility.scala | 10 +++++----- .../pdsuidomain/formats/json/sprayformats/eligibility.scala | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) (limited to 'src/main/scala/xyz/driver/pdsuidomain/fakes/entities/eligibility.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/eligibility.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/eligibility.scala index 0d0965b..1a900ac 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/entities/eligibility.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/entities/eligibility.scala @@ -54,8 +54,8 @@ object eligibility { evidence: Seq[Evidence]) final case class MismatchRankedLabels(data: Seq[LabelMismatchRank], labelVersion: Int) - final case class MatchedPatient(patientId: Id[Patient], - name: FullName[Patient], + final case class MatchedPatient(patientId: Id[xyz.driver.entities.patient.Patient], + name: FullName[xyz.driver.entities.patient.Patient], birthDate: Date, orderId: Id[TestOrder], disease: CancerType, diff --git a/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/eligibility.scala b/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/eligibility.scala index 7dc50be..5f3321c 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/eligibility.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/fakes/entities/eligibility.scala @@ -2,7 +2,7 @@ package xyz.driver.pdsuidomain.fakes.entities import xyz.driver.core.generators import xyz.driver.entities.clinic.{ClinicalRecord, TestOrder} -import xyz.driver.entities.patient.CancerType +import xyz.driver.entities.patient.{CancerType, Patient} import xyz.driver.entities.report.Report import xyz.driver.fakes import xyz.driver.pdsuidomain.entities.eligibility._ @@ -46,8 +46,8 @@ object eligibility { isPrimaryValue = nextOption(nextBoolean()) ) - def nextLabelWithEvidence(): LabelWithEvidence = - LabelWithEvidence(label = fakes.entities.labels.nextLabel(), evidence = Seq.empty) + def nextLabelEvidence(): LabelEvidence = + LabelEvidence(label = fakes.entities.labels.nextLabel(), evidence = Seq.empty) def nextLabelMismatchRank(): LabelMismatchRank = LabelMismatchRank( @@ -62,8 +62,8 @@ object eligibility { def nextMatchedPatient(): MatchedPatient = MatchedPatient( - patientId = nextId[MatchedPatient](), - name = fakes.entities.common.nextFullName[MatchedPatient](), + patientId = nextId[Patient](), + name = fakes.entities.common.nextFullName[Patient](), birthDate = nextDate(), orderId = nextId[TestOrder](), disease = generators.oneOf[CancerType](CancerType.Breast, CancerType.Lung, CancerType.Prostate), diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/eligibility.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/eligibility.scala index 30ceae2..b836e1c 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/eligibility.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/eligibility.scala @@ -92,7 +92,7 @@ object eligibility { } } - implicit def labelWithEvidenceJsonFormat: RootJsonFormat[LabelWithEvidence] = jsonFormat2(LabelWithEvidence) + implicit def labelWithEvidenceJsonFormat: RootJsonFormat[LabelEvidence] = jsonFormat2(LabelEvidence) implicit def labelRankingFormat: RootJsonFormat[LabelMismatchRank] = jsonFormat4(LabelMismatchRank) implicit def labelRankingsFormat: RootJsonFormat[MismatchRankedLabels] = jsonFormat2(MismatchRankedLabels) -- cgit v1.2.3