diff options
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialLabelCriterion.scala')
-rw-r--r-- | src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialLabelCriterion.scala | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialLabelCriterion.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialLabelCriterion.scala index 2564efe..df1ebb4 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialLabelCriterion.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialLabelCriterion.scala @@ -1,9 +1,10 @@ package xyz.driver.pdsuidomain.formats.json.export -import xyz.driver.pdsuicommon.domain.FuzzyValue import play.api.libs.functional.syntax._ import play.api.libs.json._ +import xyz.driver.pdsuicommon.domain.{FuzzyValue, LongId} import xyz.driver.pdsuidomain.entities.export.trial.ExportTrialLabelCriterion +import xyz.driver.pdsuidomain.entities.{Arm, Criterion, Label} final case class ApiExportTrialLabelCriterion(value: String, labelId: String, @@ -11,7 +12,20 @@ final case class ApiExportTrialLabelCriterion(value: String, criterionText: String, armIds: List[String], isCompound: Boolean, - isDefining: Boolean) + isDefining: Boolean) { + + def toDomain: ExportTrialLabelCriterion = { + ExportTrialLabelCriterion( + LongId[Criterion](criterionId.toLong), + FuzzyValue.fromString.lift(value).map(_ == FuzzyValue.Yes), + LongId[Label](labelId.toLong), + armIds.map(armId => LongId[Arm](armId.toLong)).toSet, + criterionText, + isCompound, + isDefining + ) + } +} object ApiExportTrialLabelCriterion { |