aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/formats/json/intervention/ApiPartialIntervention.scala
diff options
context:
space:
mode:
authortimgushue <tim@driver.xyz>2017-09-27 09:34:45 -0700
committertimgushue <tim@driver.xyz>2017-09-27 09:34:45 -0700
commite9d3e19f637614809aab39d9df2d1fcc6c78916e (patch)
tree29560b9b5bfb1b235c6429506f56fa9dab8d4510 /src/main/scala/xyz/driver/pdsuidomain/formats/json/intervention/ApiPartialIntervention.scala
parent0ef0059e9b47430e52d6bad4ced5b1be7f3b1a0d (diff)
parentc24679f1ae7d7ccc4e6693535b0aa3ac0e1ca225 (diff)
downloadrest-query-e9d3e19f637614809aab39d9df2d1fcc6c78916e.tar.gz
rest-query-e9d3e19f637614809aab39d9df2d1fcc6c78916e.tar.bz2
rest-query-e9d3e19f637614809aab39d9df2d1fcc6c78916e.zip
Merge branch 'master' into add-slot-eligibility-arms
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/intervention/ApiPartialIntervention.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/intervention/ApiPartialIntervention.scala9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/intervention/ApiPartialIntervention.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/intervention/ApiPartialIntervention.scala
index 74f16e1..28a8555 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/intervention/ApiPartialIntervention.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/intervention/ApiPartialIntervention.scala
@@ -16,6 +16,7 @@ final case class ApiPartialIntervention(name: Option[String],
typeId: Option[Long],
dosage: Option[String],
isActive: Option[Boolean],
+ deliveryMethod: Option[String],
arms: Option[List[Long]]) {
def applyTo(orig: InterventionWithArms): InterventionWithArms = {
@@ -26,7 +27,8 @@ final case class ApiPartialIntervention(name: Option[String],
name = name.getOrElse(origIntervention.name),
typeId = typeId.map(LongId(_)).orElse(origIntervention.typeId),
dosage = dosage.getOrElse(origIntervention.dosage),
- isActive = isActive.getOrElse(origIntervention.isActive)
+ isActive = isActive.getOrElse(origIntervention.isActive),
+ deliveryMethod = deliveryMethod.orElse(origIntervention.deliveryMethod)
),
arms = draftArmList.getOrElse(orig.arms)
)
@@ -50,7 +52,8 @@ final case class ApiPartialIntervention(name: Option[String],
originalType = Option(""),
dosage = dosage.getOrElse(""),
originalDosage = dosage.getOrElse(""),
- isActive = isActive.getOrElse(false)
+ isActive = isActive.getOrElse(false),
+ deliveryMethod = deliveryMethod
),
arms =
arms.map(_.map(x => InterventionArm(armId = LongId(x), interventionId = LongId(0)))).getOrElse(List.empty)
@@ -69,6 +72,7 @@ object ApiPartialIntervention {
(JsPath \ "typeId").readNullable[Long] and
(JsPath \ "dosage").readNullable[String] and
(JsPath \ "isActive").readNullable[Boolean] and
+ (JsPath \ "deliveryMethod").readNullable[String] and
(JsPath \ "arms").readNullable[List[Long]]
)(ApiPartialIntervention.apply _)
@@ -78,6 +82,7 @@ object ApiPartialIntervention {
(JsPath \ "typeId").writeNullable[Long] and
(JsPath \ "dosage").writeNullable[String] and
(JsPath \ "isActive").writeNullable[Boolean] and
+ (JsPath \ "deliveryMethod").writeNullable[String] and
(JsPath \ "arms").writeNullable[List[Long]]
)(unlift(ApiPartialIntervention.unapply))