aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkseniya <ktomskih@datamonsters.co>2017-09-25 17:33:08 +0700
committerKseniya Tomskikh <ktomskih@datamonsters.co>2017-09-25 18:22:40 +0700
commit4e13dd7bc86b24ca0b71f46e4ee3115f563cf9bd (patch)
tree88dba6212475f3001bf1cf78319033a022f2d2fc
parent969ddd91fd5fd6ad2f177be408e598b64f2d615c (diff)
downloadrest-query-0.3.19.tar.gz
rest-query-0.3.19.tar.bz2
rest-query-0.3.19.zip
Fixed ACL for interventionv0.3.19
-rw-r--r--src/main/scala/xyz/driver/pdsuicommon/acl/ACL.scala4
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/intervention/ApiPartialIntervention.scala1
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala5
3 files changed, 9 insertions, 1 deletions
diff --git a/src/main/scala/xyz/driver/pdsuicommon/acl/ACL.scala b/src/main/scala/xyz/driver/pdsuicommon/acl/ACL.scala
index f2a0ef0..180ebf9 100644
--- a/src/main/scala/xyz/driver/pdsuicommon/acl/ACL.scala
+++ b/src/main/scala/xyz/driver/pdsuicommon/acl/ACL.scala
@@ -168,8 +168,10 @@ object ACL extends PhiLogging {
object Intervention
extends BaseACL(
label = "intervention",
+ create = Set(TrialSummarizer, TrialAdmin),
read = Set(TrialSummarizer, TrialAdmin),
- update = Set(TrialSummarizer, TrialAdmin)
+ update = Set(TrialSummarizer, TrialAdmin),
+ delete = Set(TrialSummarizer, TrialAdmin)
)
object InterventionType
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 e7f69a9..74f16e1 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
@@ -23,6 +23,7 @@ final case class ApiPartialIntervention(name: Option[String],
val draftArmList = arms.map(_.map(x => InterventionArm(armId = LongId(x), interventionId = orig.intervention.id)))
orig.copy(
intervention = origIntervention.copy(
+ name = name.getOrElse(origIntervention.name),
typeId = typeId.map(LongId(_)).orElse(origIntervention.typeId),
dosage = dosage.getOrElse(origIntervention.dosage),
isActive = isActive.getOrElse(origIntervention.isActive)
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala
index 717c1a9..8651932 100644
--- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/intervention.scala
@@ -74,6 +74,10 @@ object intervention {
def applyUpdateToInterventionWithArms(json: JsValue, orig: InterventionWithArms): InterventionWithArms = json match {
case JsObject(fields) =>
+ val name = fields
+ .get("name")
+ .map(_.convertTo[String])
+
val typeId = fields
.get("typeId")
.map(_.convertTo[LongId[InterventionType]])
@@ -93,6 +97,7 @@ object intervention {
orig.copy(
intervention = origIntervention.copy(
+ name = name.getOrElse(origIntervention.name),
typeId = typeId.orElse(origIntervention.typeId),
dosage = dosage.getOrElse(origIntervention.dosage),
isActive = isActive.getOrElse(origIntervention.isActive)