From f4bd1f867020c9a6b5f3ec3fca11fbaa69e58f22 Mon Sep 17 00:00:00 2001 From: timgushue Date: Mon, 25 Sep 2017 13:32:15 -0700 Subject: Added slot and eligibility arms to entities, json and services --- .../services/EligibilityArmService.scala | 124 +++++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala new file mode 100644 index 0000000..fc28e5f --- /dev/null +++ b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala @@ -0,0 +1,124 @@ +package xyz.driver.pdsuidomain.services + +import xyz.driver.pdsuicommon.auth.AuthenticatedRequestContext +import xyz.driver.pdsuicommon.db._ +import xyz.driver.pdsuicommon.domain.LongId +import xyz.driver.pdsuicommon.error.DomainError +import xyz.driver.pdsuicommon.logging._ +import xyz.driver.pdsuidomain.entities.EligibilityArm + +import scala.concurrent.Future + +object EligibilityArmService { + + trait DefaultAccessDeniedError { + def userMessage: String = "Access denied" + } + + trait DefaultNotFoundError { + def userMessage: String = "EligibilityArm not found" + } + + sealed trait GetByIdReply + object GetByIdReply { + + final case class Entity(x: EligibilityArm) extends GetByIdReply + + type Error = GetByIdReply with DomainError + + case object NotFoundError extends GetByIdReply with DefaultNotFoundError with DomainError.NotFoundError + + case object AuthorizationError + extends GetByIdReply with DomainError.AuthorizationError with DefaultAccessDeniedError + + final case class CommonError(userMessage: String)(implicit requestContext: AuthenticatedRequestContext) + extends GetByIdReply with DomainError + } + + sealed trait GetListReply + object GetListReply { + type Error = GetListReply with DomainError + + final case class EntityList(xs: Seq[EligibilityArm], totalFound: Int) extends GetListReply + + case object AuthorizationError + extends GetListReply with DomainError.AuthorizationError with DefaultAccessDeniedError + } + + sealed trait UpdateReply + object UpdateReply { + + final case class Updated(updated: EligibilityArm) extends UpdateReply + + type Error = UpdateReply with DomainError + + case object NotFoundError extends UpdateReply with DefaultNotFoundError with DomainError.NotFoundError + + case object AuthorizationError + extends UpdateReply with DefaultAccessDeniedError with DomainError.AuthorizationError + + final case class CommonError(userMessage: String) extends UpdateReply with DomainError + + final case class AlreadyExistsError(x: EligibilityArm) extends UpdateReply with DomainError { + val userMessage = s"The arm with such name of trial already exists." + } + + implicit def toPhiString(reply: UpdateReply): PhiString = reply match { + case Updated(x) => phi"Updated($x)" + case x: Error => DomainError.toPhiString(x) + } + } + + sealed trait CreateReply + object CreateReply { + final case class Created(x: EligibilityArm) extends CreateReply + + type Error = CreateReply with DomainError + + case object AuthorizationError + extends CreateReply with DefaultAccessDeniedError with DomainError.AuthorizationError + + final case class CommonError(userMessage: String) extends CreateReply with DomainError + + final case class AlreadyExistsError(x: EligibilityArm) extends CreateReply with DomainError { + val userMessage = s"The arm with this name of trial already exists." + } + + implicit def toPhiString(reply: CreateReply): PhiString = reply match { + case Created(x) => phi"Created($x)" + case x: Error => DomainError.toPhiString(x) + } + } + + sealed trait DeleteReply + object DeleteReply { + case object Deleted extends DeleteReply + + type Error = DeleteReply with DomainError + + case object NotFoundError extends DeleteReply with DefaultNotFoundError with DomainError.NotFoundError + + case object AuthorizationError + extends DeleteReply with DefaultAccessDeniedError with DomainError.AuthorizationError + + final case class CommonError(userMessage: String) extends DeleteReply with DomainError + } +} + +trait EligibilityArmService { + + import EligibilityArmService._ + + def getAll(filter: SearchFilterExpr = SearchFilterExpr.Empty, + sorting: Option[Sorting] = None, + pagination: Option[Pagination] = None)( + implicit requestContext: AuthenticatedRequestContext): Future[GetListReply] + + def getById(armId: LongId[EligibilityArm])(implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] + + def create(draftEligibilityArm: EligibilityArm)(implicit requestContext: AuthenticatedRequestContext): Future[CreateReply] + + def update(origEligibilityArm: EligibilityArm, draftEligibilityArm: EligibilityArm)(implicit requestContext: AuthenticatedRequestContext): Future[UpdateReply] + + def delete(id: LongId[EligibilityArm])(implicit requestContext: AuthenticatedRequestContext): Future[DeleteReply] +} -- cgit v1.2.3 From 0ef0059e9b47430e52d6bad4ced5b1be7f3b1a0d Mon Sep 17 00:00:00 2001 From: timgushue Date: Tue, 26 Sep 2017 14:11:40 -0700 Subject: fixing test in CriterionFormatSuite --- src/main/scala/xyz/driver/pdsuidomain/entities/SlotArms.scala | 1 - .../formats/json/eligibilityarm/ApiEligibilityArm.scala | 4 ++-- .../formats/json/eligibilityarm/ApiEligibilityCreateArm.scala | 1 - .../pdsuidomain/formats/json/slotarm/ApiPartialSlotArm.scala | 1 - .../xyz/driver/pdsuidomain/formats/json/slotarm/ApiSlotArm.scala | 4 ++-- .../scala/xyz/driver/pdsuidomain/services/CriterionService.scala | 4 +++- .../xyz/driver/pdsuidomain/services/EligibilityArmService.scala | 9 ++++++--- .../scala/xyz/driver/pdsuidomain/services/SlotArmService.scala | 3 ++- .../formats/json/sprayformats/CriterionFormatSuite.scala | 4 ++-- 9 files changed, 17 insertions(+), 14 deletions(-) (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/entities/SlotArms.scala b/src/main/scala/xyz/driver/pdsuidomain/entities/SlotArms.scala index 8363c7e..932de38 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/entities/SlotArms.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/entities/SlotArms.scala @@ -18,4 +18,3 @@ object SlotArm { phi"Arm(id=$id, name=${Unsafe(x.name)}, trialId=${Unsafe(x.trialId)})" } } - diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm/ApiEligibilityArm.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm/ApiEligibilityArm.scala index 51821d8..e7eb022 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm/ApiEligibilityArm.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm/ApiEligibilityArm.scala @@ -24,7 +24,7 @@ object ApiEligibilityArm { (JsPath \ "name").format[String] and (JsPath \ "originalName").format[String] and (JsPath \ "trialId").format[String] - )(ApiEligibilityArm.apply, unlift(ApiEligibilityArm.unapply)) + )(ApiEligibilityArm.apply, unlift(ApiEligibilityArm.unapply)) def fromDomain(arm: EligibilityArm): ApiEligibilityArm = ApiEligibilityArm( id = arm.id.id, @@ -32,4 +32,4 @@ object ApiEligibilityArm { originalName = arm.originalName, trialId = arm.trialId.id ) -} \ No newline at end of file +} diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm/ApiEligibilityCreateArm.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm/ApiEligibilityCreateArm.scala index a31182f..6f55c10 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm/ApiEligibilityCreateArm.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/eligibilityarm/ApiEligibilityCreateArm.scala @@ -4,7 +4,6 @@ import xyz.driver.pdsuicommon.domain.{LongId, StringId} import xyz.driver.pdsuidomain.entities.EligibilityArm import play.api.libs.json.{Format, Json} - final case class ApiCreateEligibilityArm(name: String, trialId: String) { def toDomain = EligibilityArm( diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm/ApiPartialSlotArm.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm/ApiPartialSlotArm.scala index 06696fd..2f8e93f 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm/ApiPartialSlotArm.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm/ApiPartialSlotArm.scala @@ -1,6 +1,5 @@ package xyz.driver.pdsuidomain.formats.json.slotarm - import xyz.driver.pdsuidomain.entities.SlotArm import play.api.libs.json.{Format, Json} diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm/ApiSlotArm.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm/ApiSlotArm.scala index 2e26a01..375c1a2 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm/ApiSlotArm.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/slotarm/ApiSlotArm.scala @@ -24,7 +24,7 @@ object ApiSlotArm { (JsPath \ "name").format[String] and (JsPath \ "originalName").format[String] and (JsPath \ "trialId").format[String] - )(ApiSlotArm.apply, unlift(ApiSlotArm.unapply)) + )(ApiSlotArm.apply, unlift(ApiSlotArm.unapply)) def fromDomain(arm: SlotArm): ApiSlotArm = ApiSlotArm( id = arm.id.id, @@ -32,4 +32,4 @@ object ApiSlotArm { originalName = arm.originalName, trialId = arm.trialId.id ) -} \ No newline at end of file +} diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/CriterionService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/CriterionService.scala index fdefa65..7dbf0d9 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/CriterionService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/CriterionService.scala @@ -21,7 +21,9 @@ object CriterionService { def userMessage: String = "Access denied" } - final case class RichCriterion(criterion: Criterion, armIds: Seq[LongId[EligibilityArm]], labels: Seq[CriterionLabel]) + final case class RichCriterion(criterion: Criterion, + armIds: Seq[LongId[EligibilityArm]], + labels: Seq[CriterionLabel]) object RichCriterion { implicit def toPhiString(x: RichCriterion): PhiString = { import x._ diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala index fc28e5f..b34b34e 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala @@ -114,11 +114,14 @@ trait EligibilityArmService { pagination: Option[Pagination] = None)( implicit requestContext: AuthenticatedRequestContext): Future[GetListReply] - def getById(armId: LongId[EligibilityArm])(implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] + def getById(armId: LongId[EligibilityArm])( + implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] - def create(draftEligibilityArm: EligibilityArm)(implicit requestContext: AuthenticatedRequestContext): Future[CreateReply] + def create(draftEligibilityArm: EligibilityArm)( + implicit requestContext: AuthenticatedRequestContext): Future[CreateReply] - def update(origEligibilityArm: EligibilityArm, draftEligibilityArm: EligibilityArm)(implicit requestContext: AuthenticatedRequestContext): Future[UpdateReply] + def update(origEligibilityArm: EligibilityArm, draftEligibilityArm: EligibilityArm)( + implicit requestContext: AuthenticatedRequestContext): Future[UpdateReply] def delete(id: LongId[EligibilityArm])(implicit requestContext: AuthenticatedRequestContext): Future[DeleteReply] } diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/SlotArmService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/SlotArmService.scala index 3c55909..af7084b 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/SlotArmService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/SlotArmService.scala @@ -118,7 +118,8 @@ trait SlotArmService { def create(draftSlotArm: SlotArm)(implicit requestContext: AuthenticatedRequestContext): Future[CreateReply] - def update(origSlotArm: SlotArm, draftSlotArm: SlotArm)(implicit requestContext: AuthenticatedRequestContext): Future[UpdateReply] + def update(origSlotArm: SlotArm, draftSlotArm: SlotArm)( + implicit requestContext: AuthenticatedRequestContext): Future[UpdateReply] def delete(id: LongId[SlotArm])(implicit requestContext: AuthenticatedRequestContext): Future[DeleteReply] } diff --git a/src/test/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/CriterionFormatSuite.scala b/src/test/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/CriterionFormatSuite.scala index d24c4c1..9601834 100644 --- a/src/test/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/CriterionFormatSuite.scala +++ b/src/test/scala/xyz/driver/pdsuidomain/formats/json/sprayformats/CriterionFormatSuite.scala @@ -3,7 +3,7 @@ package xyz.driver.pdsuidomain.formats.json.sprayformats import spray.json._ import org.scalatest.{FlatSpec, Matchers} import xyz.driver.pdsuicommon.domain.{LongId, StringId} -import xyz.driver.pdsuidomain.entities.{Arm, Criterion, CriterionLabel} +import xyz.driver.pdsuidomain.entities.{EligibilityArm, Criterion, CriterionLabel} import xyz.driver.pdsuidomain.services.CriterionService.RichCriterion class CriterionFormatSuite extends FlatSpec with Matchers { @@ -35,7 +35,7 @@ class CriterionFormatSuite extends FlatSpec with Matchers { isDefining = true ) ) - val arms = List(LongId[Arm](20), LongId[Arm](21), LongId[Arm](21)) + val arms = List(LongId[EligibilityArm](20), LongId[EligibilityArm](21), LongId[EligibilityArm](21)) val richCriterion = RichCriterion( criterion = criterion, armIds = arms, -- cgit v1.2.3 From a38cb5bf77f1119533cb98565ea222a5bf877238 Mon Sep 17 00:00:00 2001 From: Marvin Bertin Date: Mon, 2 Oct 2017 13:33:21 -0700 Subject: add with disease for EligibilityArmService --- .../pdsuidomain/services/EligibilityArmService.scala | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala index b34b34e..af7cecb 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala @@ -5,7 +5,7 @@ import xyz.driver.pdsuicommon.db._ import xyz.driver.pdsuicommon.domain.LongId import xyz.driver.pdsuicommon.error.DomainError import xyz.driver.pdsuicommon.logging._ -import xyz.driver.pdsuidomain.entities.EligibilityArm +import xyz.driver.pdsuidomain.entities.{EligibilityArm, EligibilityArmWithDiseases} import scala.concurrent.Future @@ -22,7 +22,7 @@ object EligibilityArmService { sealed trait GetByIdReply object GetByIdReply { - final case class Entity(x: EligibilityArm) extends GetByIdReply + final case class Entity(x: EligibilityArmWithDiseases) extends GetByIdReply type Error = GetByIdReply with DomainError @@ -39,7 +39,7 @@ object EligibilityArmService { object GetListReply { type Error = GetListReply with DomainError - final case class EntityList(xs: Seq[EligibilityArm], totalFound: Int) extends GetListReply + final case class EntityList(xs: Seq[EligibilityArmWithDiseases], totalFound: Int) extends GetListReply case object AuthorizationError extends GetListReply with DomainError.AuthorizationError with DefaultAccessDeniedError @@ -48,7 +48,7 @@ object EligibilityArmService { sealed trait UpdateReply object UpdateReply { - final case class Updated(updated: EligibilityArm) extends UpdateReply + final case class Updated(updated: EligibilityArmWithDiseases) extends UpdateReply type Error = UpdateReply with DomainError @@ -59,7 +59,7 @@ object EligibilityArmService { final case class CommonError(userMessage: String) extends UpdateReply with DomainError - final case class AlreadyExistsError(x: EligibilityArm) extends UpdateReply with DomainError { + final case class AlreadyExistsError(x: EligibilityArmWithDiseases) extends UpdateReply with DomainError { val userMessage = s"The arm with such name of trial already exists." } @@ -71,7 +71,7 @@ object EligibilityArmService { sealed trait CreateReply object CreateReply { - final case class Created(x: EligibilityArm) extends CreateReply + final case class Created(x: EligibilityArmWithDiseases) extends CreateReply type Error = CreateReply with DomainError @@ -80,7 +80,7 @@ object EligibilityArmService { final case class CommonError(userMessage: String) extends CreateReply with DomainError - final case class AlreadyExistsError(x: EligibilityArm) extends CreateReply with DomainError { + final case class AlreadyExistsError(x: EligibilityArmWithDiseases) extends CreateReply with DomainError { val userMessage = s"The arm with this name of trial already exists." } @@ -117,10 +117,10 @@ trait EligibilityArmService { def getById(armId: LongId[EligibilityArm])( implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] - def create(draftEligibilityArm: EligibilityArm)( + def create(draftEligibilityArm: EligibilityArmWithDiseases)( implicit requestContext: AuthenticatedRequestContext): Future[CreateReply] - def update(origEligibilityArm: EligibilityArm, draftEligibilityArm: EligibilityArm)( + def update(origEligibilityArm: EligibilityArmWithDiseases, draftEligibilityArm: EligibilityArmWithDiseases)( implicit requestContext: AuthenticatedRequestContext): Future[UpdateReply] def delete(id: LongId[EligibilityArm])(implicit requestContext: AuthenticatedRequestContext): Future[DeleteReply] -- cgit v1.2.3 From 9347b0d5f8d21c6e6f42405965979c1633400501 Mon Sep 17 00:00:00 2001 From: Marvin Bertin Date: Wed, 4 Oct 2017 11:51:47 -0700 Subject: update EligibilityArmService with slot arm id parameter --- .../xyz/driver/pdsuidomain/services/EligibilityArmService.scala | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala index af7cecb..928b657 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala @@ -5,7 +5,7 @@ import xyz.driver.pdsuicommon.db._ import xyz.driver.pdsuicommon.domain.LongId import xyz.driver.pdsuicommon.error.DomainError import xyz.driver.pdsuicommon.logging._ -import xyz.driver.pdsuidomain.entities.{EligibilityArm, EligibilityArmWithDiseases} +import xyz.driver.pdsuidomain.entities.{EligibilityArm, EligibilityArmWithDiseases, SlotArm} import scala.concurrent.Future @@ -114,10 +114,13 @@ trait EligibilityArmService { pagination: Option[Pagination] = None)( implicit requestContext: AuthenticatedRequestContext): Future[GetListReply] - def getById(armId: LongId[EligibilityArm])( + def getByEligibilityId(armId: LongId[EligibilityArm])( implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] - def create(draftEligibilityArm: EligibilityArmWithDiseases)( + def getBysSlotId(armId: LongId[EligibilityArm])( + implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] + + def create(slotArmId: LongId[SlotArm], draftEligibilityArm: EligibilityArmWithDiseases)( implicit requestContext: AuthenticatedRequestContext): Future[CreateReply] def update(origEligibilityArm: EligibilityArmWithDiseases, draftEligibilityArm: EligibilityArmWithDiseases)( -- cgit v1.2.3 From b95572cfffa621a129488a9655c060dc418af6f4 Mon Sep 17 00:00:00 2001 From: Marvin Bertin Date: Wed, 4 Oct 2017 12:10:39 -0700 Subject: fix spelling for getBySlotId merthod --- .../scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala index 928b657..55f3a57 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala @@ -117,7 +117,7 @@ trait EligibilityArmService { def getByEligibilityId(armId: LongId[EligibilityArm])( implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] - def getBysSlotId(armId: LongId[EligibilityArm])( + def getBySlotId(armId: LongId[EligibilityArm])( implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] def create(slotArmId: LongId[SlotArm], draftEligibilityArm: EligibilityArmWithDiseases)( -- cgit v1.2.3 From 33948327a7c7b29a409165c493762853f3bf5a75 Mon Sep 17 00:00:00 2001 From: Marvin Bertin Date: Wed, 4 Oct 2017 16:03:05 -0700 Subject: fix getBySlotId return type --- .../scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala index 55f3a57..cf4fb37 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala @@ -118,7 +118,7 @@ trait EligibilityArmService { implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] def getBySlotId(armId: LongId[EligibilityArm])( - implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] + implicit requestContext: AuthenticatedRequestContext): Future[GetListReply] def create(slotArmId: LongId[SlotArm], draftEligibilityArm: EligibilityArmWithDiseases)( implicit requestContext: AuthenticatedRequestContext): Future[CreateReply] -- cgit v1.2.3 From 8c8eb25f90c9d169f256a5b51b5568faa2d93b53 Mon Sep 17 00:00:00 2001 From: Marvin Bertin Date: Wed, 4 Oct 2017 16:12:35 -0700 Subject: fix getBySlotId return type --- .../scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala index cf4fb37..8efb98b 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala @@ -117,7 +117,7 @@ trait EligibilityArmService { def getByEligibilityId(armId: LongId[EligibilityArm])( implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] - def getBySlotId(armId: LongId[EligibilityArm])( + def getBySlotId(armId: LongId[SlotArm])( implicit requestContext: AuthenticatedRequestContext): Future[GetListReply] def create(slotArmId: LongId[SlotArm], draftEligibilityArm: EligibilityArmWithDiseases)( -- cgit v1.2.3 From 54e1014da82dd35656f7d09599601337fa722971 Mon Sep 17 00:00:00 2001 From: Marvin Bertin Date: Thu, 5 Oct 2017 11:13:34 -0700 Subject: add sql parameters to getBySlotId --- .../xyz/driver/pdsuidomain/services/EligibilityArmService.scala | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala index 8efb98b..a56e30a 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala @@ -117,7 +117,10 @@ trait EligibilityArmService { def getByEligibilityId(armId: LongId[EligibilityArm])( implicit requestContext: AuthenticatedRequestContext): Future[GetByIdReply] - def getBySlotId(armId: LongId[SlotArm])( + def getBySlotId(armId: LongId[SlotArm], + filter: SearchFilterExpr = SearchFilterExpr.Empty, + sorting: Option[Sorting] = None, + pagination: Option[Pagination] = None)( implicit requestContext: AuthenticatedRequestContext): Future[GetListReply] def create(slotArmId: LongId[SlotArm], draftEligibilityArm: EligibilityArmWithDiseases)( -- cgit v1.2.3 From 0be360064e7b46eb0ebeac3bfde09d5e80c21d81 Mon Sep 17 00:00:00 2001 From: Marvin Bertin Date: Thu, 5 Oct 2017 14:11:19 -0700 Subject: add NoFoundError to CreateReply --- .../xyz/driver/pdsuidomain/services/EligibilityArmService.scala | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala') diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala index a56e30a..e250e8f 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/services/EligibilityArmService.scala @@ -19,6 +19,10 @@ object EligibilityArmService { def userMessage: String = "EligibilityArm not found" } + trait SlotArmNotFoundError { + def userMessage: String = "SlotArm not found" + } + sealed trait GetByIdReply object GetByIdReply { @@ -78,6 +82,8 @@ object EligibilityArmService { case object AuthorizationError extends CreateReply with DefaultAccessDeniedError with DomainError.AuthorizationError + case object NotFoundError extends CreateReply with SlotArmNotFoundError with DomainError.NotFoundError + final case class CommonError(userMessage: String) extends CreateReply with DomainError final case class AlreadyExistsError(x: EligibilityArmWithDiseases) extends CreateReply with DomainError { -- cgit v1.2.3