aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/formats/json/patient/label/ApiPatientLabel.scala
diff options
context:
space:
mode:
authorMarvin Bertin <marvin.bertin@gmail.com>2017-10-10 11:54:20 -0700
committerMarvin Bertin <marvin.bertin@gmail.com>2017-10-10 11:54:20 -0700
commit19a70318ecee81872fffe23c03d83e725610911d (patch)
tree984510310c95856fcdcb463d9a242f9773795266 /src/main/scala/xyz/driver/pdsuidomain/formats/json/patient/label/ApiPatientLabel.scala
parent05aa114cfd22228f0457b6457ce441af5eabfc60 (diff)
parent4f83461cba1f78e607ca2a4edb6fa26f6e16e732 (diff)
downloadrest-query-19a70318ecee81872fffe23c03d83e725610911d.tar.gz
rest-query-19a70318ecee81872fffe23c03d83e725610911d.tar.bz2
rest-query-19a70318ecee81872fffe23c03d83e725610911d.zip
fix merge conflicts with master
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/patient/label/ApiPatientLabel.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/patient/label/ApiPatientLabel.scala32
1 files changed, 20 insertions, 12 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/patient/label/ApiPatientLabel.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/patient/label/ApiPatientLabel.scala
index fc8687b..cc8532d 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/patient/label/ApiPatientLabel.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/patient/label/ApiPatientLabel.scala
@@ -4,7 +4,7 @@ import xyz.driver.pdsuidomain.entities.PatientLabel
import play.api.data.validation.ValidationError
import play.api.libs.functional.syntax._
import play.api.libs.json._
-import xyz.driver.pdsuicommon.domain.FuzzyValue
+import xyz.driver.entities.labels.LabelValue
final case class ApiPatientLabel(id: Long,
labelId: Long,
@@ -20,25 +20,33 @@ object ApiPatientLabel {
implicit val apiPatientLabelJsonFormat: Format[ApiPatientLabel] = (
(JsPath \ "id").format[Long] and
(JsPath \ "labelId").format[Long] and
- (JsPath \ "primaryValue").formatNullable[String](Format(Reads.of[String].filter(ValidationError("unknown value"))({
- case x if FuzzyValue.fromString.isDefinedAt(x) => true
- case _ => false
- }), Writes.of[String])) and
- (JsPath \ "verifiedPrimaryValue").formatNullable[String](Format(Reads.of[String].filter(ValidationError("unknown value"))({
- case x if FuzzyValue.fromString.isDefinedAt(x) => true
- case _ => false
- }), Writes.of[String])) and
+ (JsPath \ "primaryValue").formatNullable[String](
+ Format(Reads
+ .of[String]
+ .filter(ValidationError("unknown value"))({
+ case x if LabelValue.fromString(x).isDefined => true
+ case _ => false
+ }),
+ Writes.of[String])) and
+ (JsPath \ "verifiedPrimaryValue").formatNullable[String](
+ Format(Reads
+ .of[String]
+ .filter(ValidationError("unknown value"))({
+ case x if LabelValue.fromString(x).isDefined => true
+ case _ => false
+ }),
+ Writes.of[String])) and
(JsPath \ "score").format[Int] and
(JsPath \ "isImplicitMatch").format[Boolean] and
(JsPath \ "isVisible").format[Boolean] and
(JsPath \ "isVerified").format[Boolean]
- ) (ApiPatientLabel.apply, unlift(ApiPatientLabel.unapply))
+ )(ApiPatientLabel.apply, unlift(ApiPatientLabel.unapply))
def fromDomain(patientLabel: PatientLabel, isVerified: Boolean): ApiPatientLabel = ApiPatientLabel(
id = patientLabel.id.id,
labelId = patientLabel.labelId.id,
- primaryValue = patientLabel.primaryValue.map(FuzzyValue.valueToString),
- verifiedPrimaryValue = patientLabel.verifiedPrimaryValue.map(FuzzyValue.valueToString),
+ primaryValue = patientLabel.primaryValue.map(_.toString),
+ verifiedPrimaryValue = patientLabel.verifiedPrimaryValue.map(_.toString),
score = patientLabel.score,
isImplicitMatch = patientLabel.isImplicitMatch,
isVisible = patientLabel.isVisible,