aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/formats/json/record
diff options
context:
space:
mode:
authorVyatcheslav Suharnikov <arz.freezy@gmail.com>2017-07-12 11:39:40 +0300
committerVyatcheslav Suharnikov <arz.freezy@gmail.com>2017-07-12 14:07:05 +0300
commite2313321736520e6acaeb9aaa6ab426e6a8415ff (patch)
treed95187e353f2b03644ec02d8a92711ce9ec69efb /src/main/scala/xyz/driver/pdsuidomain/formats/json/record
parent7ab16021fe2b7e1f7d9d7800458e737d015e7630 (diff)
downloadrest-query-e2313321736520e6acaeb9aaa6ab426e6a8415ff.tar.gz
rest-query-e2313321736520e6acaeb9aaa6ab426e6a8415ff.tar.bz2
rest-query-e2313321736520e6acaeb9aaa6ab426e6a8415ff.zip
PDSUI-2018 Change user type from LongId to StringId
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/record')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/record/ApiRecord.scala12
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/record/ApiUpdateRecord.scala14
2 files changed, 13 insertions, 13 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/record/ApiRecord.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/record/ApiRecord.scala
index 4197bc6..0e0b4d9 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/record/ApiRecord.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/record/ApiRecord.scala
@@ -16,9 +16,9 @@ final case class ApiRecord(id: Long,
lastUpdate: ZonedDateTime,
status: String,
previousStatus: Option[String],
- assignee: Option[Long],
- previousAssignee: Option[Long],
- lastActiveUser: Option[Long],
+ assignee: Option[String],
+ previousAssignee: Option[String],
+ lastActiveUser: Option[String],
meta: String)
object ApiRecord {
@@ -40,9 +40,9 @@ object ApiRecord {
(JsPath \ "lastUpdate").format[ZonedDateTime] and
(JsPath \ "status").format(statusFormat) and
(JsPath \ "previousStatus").formatNullable(statusFormat) and
- (JsPath \ "assignee").formatNullable[Long] and
- (JsPath \ "previousAssignee").formatNullable[Long] and
- (JsPath \ "lastActiveUser").formatNullable[Long] and
+ (JsPath \ "assignee").formatNullable[String] and
+ (JsPath \ "previousAssignee").formatNullable[String] and
+ (JsPath \ "lastActiveUser").formatNullable[String] and
(JsPath \ "meta").format(Format(Reads { x =>
JsSuccess(Json.stringify(x))
}, Writes[String](Json.parse)))
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/record/ApiUpdateRecord.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/record/ApiUpdateRecord.scala
index 0d17b66..47bc493 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/record/ApiUpdateRecord.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/record/ApiUpdateRecord.scala
@@ -1,21 +1,21 @@
package xyz.driver.pdsuidomain.formats.json.record
-import xyz.driver.pdsuidomain.entities.MedicalRecord.Meta
-import xyz.driver.pdsuidomain.entities._
-import xyz.driver.pdsuicommon.domain.{LongId, TextJson, User}
import org.davidbild.tristate.Tristate
import org.davidbild.tristate.contrib.play.ToJsPathOpsFromJsPath
import play.api.data.validation.ValidationError
import play.api.libs.functional.syntax._
import play.api.libs.json._
+import xyz.driver.pdsuicommon.domain.{StringId, TextJson, User}
import xyz.driver.pdsuicommon.json.JsonSerializer
+import xyz.driver.pdsuidomain.entities.MedicalRecord.Meta
+import xyz.driver.pdsuidomain.entities._
-final case class ApiUpdateRecord(status: Option[String], assignee: Tristate[Long], meta: Tristate[String]) {
+final case class ApiUpdateRecord(status: Option[String], assignee: Tristate[String], meta: Tristate[String]) {
def applyTo(orig: MedicalRecord): MedicalRecord = {
orig.copy(
status = status.map(MedicalRecordStatus.statusFromString).getOrElse(orig.status),
- assignee = assignee.map(LongId[User]).cata(Some(_), None, orig.assignee),
+ assignee = assignee.map(StringId[User]).cata(Some(_), None, orig.assignee),
meta = meta.cata(x => Some(TextJson(JsonSerializer.deserialize[List[Meta]](x))), None, orig.meta)
)
}
@@ -31,7 +31,7 @@ object ApiUpdateRecord {
case x if MedicalRecordStatus.statusFromString.isDefinedAt(x) => true
case _ => false
})) and
- (JsPath \ "assignee").readTristate[Long] and
+ (JsPath \ "assignee").readTristate[String] and
(JsPath \ "meta")
.readTristate(Reads { x =>
JsSuccess(Json.stringify(x))
@@ -44,7 +44,7 @@ object ApiUpdateRecord {
private val writes: Writes[ApiUpdateRecord] = (
(JsPath \ "status").writeNullable[String] and
- (JsPath \ "assignee").writeTristate[Long] and
+ (JsPath \ "assignee").writeTristate[String] and
(JsPath \ "meta").writeTristate(Writes[String](Json.parse))
)(unlift(ApiUpdateRecord.unapply))