From 4c9d4f0679f7b1f4ab179c8d3208cf207c81635a Mon Sep 17 00:00:00 2001 From: vlad Date: Fri, 21 Jul 2017 15:11:19 -0700 Subject: Export service separation --- .../json/export/ApiExportTrialWithLabels.scala | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialWithLabels.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialWithLabels.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialWithLabels.scala index de76ac0..e383a1f 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialWithLabels.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/export/ApiExportTrialWithLabels.scala @@ -1,9 +1,11 @@ package xyz.driver.pdsuidomain.formats.json.export -import java.time.ZoneId +import java.time.{Instant, ZoneId} import play.api.libs.functional.syntax._ import play.api.libs.json.{Format, JsPath} +import xyz.driver.pdsuicommon.domain.{StringId, UuidId} +import xyz.driver.pdsuidomain.entities.Trial import xyz.driver.pdsuidomain.entities.export.trial.ExportTrialWithLabels final case class ApiExportTrialWithLabels(nctId: String, @@ -12,7 +14,20 @@ final case class ApiExportTrialWithLabels(nctId: String, lastReviewed: Long, labelVersion: Long, arms: List[ApiExportTrialArm], - criteria: List[ApiExportTrialLabelCriterion]) + criteria: List[ApiExportTrialLabelCriterion]) { + + def toDomain: ExportTrialWithLabels = { + ExportTrialWithLabels( + StringId[Trial](nctId), + UuidId[Trial](trialId), + condition, + lastReviewed = Instant.ofEpochMilli(lastReviewed).atZone(ZoneId.of("Z")).toLocalDateTime, + labelVersion, + arms.map(_.toDomain), + criteria.map(_.toDomain) + ) + } +} object ApiExportTrialWithLabels { -- cgit v1.2.3