diff options
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/patientcriterion.scala')
-rw-r--r-- | src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/patientcriterion.scala | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/patientcriterion.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/patientcriterion.scala deleted file mode 100644 index f41c846..0000000 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/patientcriterion.scala +++ /dev/null @@ -1,64 +0,0 @@ -package xyz.driver.pdsuidomain.formats.json.sprayformats - -import spray.json._ -import xyz.driver.entities.labels.LabelValue -import xyz.driver.pdsuidomain.entities._ -import xyz.driver.pdsuidomain.services.PatientCriterionService.{DraftPatientCriterion, RichPatientCriterion} -import xyz.driver.formats.json.labels._ - -object patientcriterion { - import DefaultJsonProtocol._ - import common._ - - def applyUpdateToPatientCriterion(json: JsValue, orig: PatientCriterion): PatientCriterion = json match { - case JsObject(fields) => - val eligibilityStatus = fields - .get("eligibilityStatus") - .map(_.convertTo[Option[LabelValue]]) - .getOrElse(orig.eligibilityStatus) - - val verifiedEligibilityStatus = fields - .get("verifiedEligibilityStatus") - .map(_.convertTo[Option[LabelValue]]) - .getOrElse(orig.verifiedEligibilityStatus) - - orig.copy( - eligibilityStatus = eligibilityStatus, - verifiedEligibilityStatus = verifiedEligibilityStatus - ) - - case _ => deserializationError(s"Expected Json Object as partial PatientCriterion, but got $json") - } - - implicit val draftPatientCriterionFormat: RootJsonFormat[DraftPatientCriterion] = jsonFormat3( - DraftPatientCriterion.apply) - implicit val draftPatientCriterionListReader = new JsonReader[List[DraftPatientCriterion]] { - override def read(json: JsValue) = json.convertTo[List[JsValue]].map(_.convertTo[DraftPatientCriterion]) - } - - implicit val patientCriterionWriter: RootJsonWriter[RichPatientCriterion] = - new RootJsonWriter[RichPatientCriterion] { - override def write(obj: RichPatientCriterion): JsValue = { - JsObject( - "id" -> obj.patientCriterion.id.toJson, - "labelId" -> obj.labelId.toJson, - "nctId" -> obj.patientCriterion.nctId.toJson, - "criterionId" -> obj.patientCriterion.criterionId.toJson, - "criterionText" -> obj.patientCriterion.criterionText.toJson, - "criterionValue" -> obj.patientCriterion.criterionValue.map { - case true => "Yes" - case false => "No" - }.toJson, - "criterionIsDefining" -> obj.patientCriterion.criterionIsDefining.toJson, - "criterionIsCompound" -> obj.patientCriterion.criterionValue.isEmpty.toJson, - "arms" -> obj.armList.map(_.armName).toJson, - "eligibilityStatus" -> obj.patientCriterion.eligibilityStatus.toJson, - "verifiedEligibilityStatus" -> obj.patientCriterion.verifiedEligibilityStatus.toJson, - "isVerified" -> obj.patientCriterion.isVerified.toJson, - "isVisible" -> obj.patientCriterion.isVisible.toJson, - "lastUpdate" -> obj.patientCriterion.lastUpdate.toJson - ) - } - } - -} |