diff options
author | Marvin Bertin <marvin.bertin@gmail.com> | 2017-10-10 16:31:00 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-10-10 16:31:00 -0700 |
commit | 385a9a99e5a95c3d623cddd927c37564e32dbd2d (patch) | |
tree | 0671a39174899dce09ade3c571ef21bab6172e0e /src/main/scala/xyz/driver/pdsuidomain/formats/json/document | |
parent | 0653b90dddc294fddb0e81059aef00b202113d78 (diff) | |
parent | 9c95eb7247cb0818af9a9e4afe884698360f994c (diff) | |
download | rest-query-385a9a99e5a95c3d623cddd927c37564e32dbd2d.tar.gz rest-query-385a9a99e5a95c3d623cddd927c37564e32dbd2d.tar.bz2 rest-query-385a9a99e5a95c3d623cddd927c37564e32dbd2d.zip |
Merge pull request #35 from drivergroup/trial-46-disease-entity
Trial 46 disease entity
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/document')
-rw-r--r-- | src/main/scala/xyz/driver/pdsuidomain/formats/json/document/ApiDocument.scala | 5 | ||||
-rw-r--r-- | src/main/scala/xyz/driver/pdsuidomain/formats/json/document/ApiPartialDocument.scala | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/document/ApiDocument.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/document/ApiDocument.scala index 1869ff3..3f1ecfe 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/document/ApiDocument.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/document/ApiDocument.scala @@ -2,7 +2,6 @@ package xyz.driver.pdsuidomain.formats.json.document import java.time.{LocalDate, ZoneId, ZonedDateTime} import xyz.driver.pdsuicommon.domain.{LongId, StringId, TextJson} -import xyz.driver.pdsuicommon.json.JsonSerializer import xyz.driver.pdsuidomain.entities._ import play.api.data.validation.ValidationError @@ -20,6 +19,7 @@ final case class ApiDocument(id: Long, provider: Option[String], providerTypeId: Option[Long], requiredType: Option[String], + institutionName: Option[String], status: Option[String], previousStatus: Option[String], assignee: Option[String], @@ -46,6 +46,7 @@ final case class ApiDocument(id: Long, providerName = this.provider, providerTypeId = this.providerTypeId.map(LongId(_)), requiredType = this.requiredType.map(extractRequiredType), + institutionName = this.institutionName, meta = this.meta.map(x => TextJson(JsonSerializer.deserialize[Document.Meta](x))), startDate = this.startDate, endDate = this.endDate, @@ -74,6 +75,7 @@ object ApiDocument { (JsPath \ "provider").formatNullable[String] and (JsPath \ "providerTypeId").formatNullable[Long] and (JsPath \ "requiredType").formatNullable[String] and + (JsPath \ "institutionName").formatNullable[String] and (JsPath \ "status").formatNullable(statusFormat) and (JsPath \ "previousStatus").formatNullable(statusFormat) and (JsPath \ "assignee").formatNullable[String] and @@ -96,6 +98,7 @@ object ApiDocument { provider = document.providerName, providerTypeId = document.providerTypeId.map(_.id), requiredType = document.requiredType.map(Document.RequiredType.requiredTypeToString), + institutionName = document.institutionName, status = Option(Document.Status.statusToString(document.status)), previousStatus = document.previousStatus.map(Document.Status.statusToString), assignee = document.assignee.map(_.id), diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/document/ApiPartialDocument.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/document/ApiPartialDocument.scala index eae0c62..032ddf6 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/document/ApiPartialDocument.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/document/ApiPartialDocument.scala @@ -23,6 +23,7 @@ final case class ApiPartialDocument(recordId: Option[Long], endDate: Tristate[LocalDate], provider: Tristate[String], providerTypeId: Tristate[Long], + institutionName: Tristate[String], status: Option[String], assignee: Tristate[String], meta: Tristate[String]) { @@ -42,6 +43,7 @@ final case class ApiPartialDocument(recordId: Option[Long], providerName = provider.cata(Some(_), None, orig.providerName), providerTypeId = providerTypeId.map(LongId[ProviderType]).cata(Some(_), None, orig.providerTypeId), requiredType = orig.requiredType, + institutionName = institutionName.cata(Some(_), None, orig.institutionName), meta = meta.cata(x => Some(TextJson(JsonSerializer.deserialize[Meta](x))), None, orig.meta), startDate = startDate.cata(Some(_), None, orig.startDate), endDate = endDate.cata(Some(_), None, orig.endDate), @@ -67,6 +69,7 @@ final case class ApiPartialDocument(recordId: Option[Long], providerName = provider.toOption, providerTypeId = providerTypeId.map(LongId[ProviderType]).toOption, requiredType = None, + institutionName = institutionName.toOption, meta = meta.map(x => TextJson(JsonSerializer.deserialize[Meta](x))).toOption, previousStatus = None, assignee = None, @@ -90,6 +93,7 @@ object ApiPartialDocument { (JsPath \ "endDate").readTristate[LocalDate] and (JsPath \ "provider").readTristate[String] and (JsPath \ "providerTypeId").readTristate[Long] and + (JsPath \ "institutionName").readTristate[String] and (JsPath \ "status").readNullable[String]( Reads .of[String] @@ -115,6 +119,7 @@ object ApiPartialDocument { (JsPath \ "endDate").writeTristate[LocalDate] and (JsPath \ "provider").writeTristate[String] and (JsPath \ "providerTypeId").writeTristate[Long] and + (JsPath \ "institutionName").writeTristate[String] and (JsPath \ "status").writeNullable[String] and (JsPath \ "assignee").writeTristate[String] and (JsPath \ "meta").writeTristate(Writes[String](Json.parse)) |