diff options
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/services/UserHistoryService.scala')
-rw-r--r-- | src/main/scala/xyz/driver/pdsuidomain/services/UserHistoryService.scala | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/services/UserHistoryService.scala b/src/main/scala/xyz/driver/pdsuidomain/services/UserHistoryService.scala new file mode 100644 index 0000000..3034027 --- /dev/null +++ b/src/main/scala/xyz/driver/pdsuidomain/services/UserHistoryService.scala @@ -0,0 +1,31 @@ +package xyz.driver.pdsuidomain.services + +import xyz.driver.pdsuicommon.auth.AuthenticatedRequestContext +import xyz.driver.pdsuicommon.db.{Pagination, SearchFilterExpr, Sorting} +import xyz.driver.pdsuicommon.error.DomainError +import xyz.driver.pdsuidomain.entities.UserHistory + +import scala.concurrent.Future + +object UserHistoryService { + + sealed trait GetListReply + object GetListReply { + case class EntityList(xs: Seq[UserHistory], totalFound: Int) extends GetListReply + + case object AuthorizationError + extends GetListReply with DomainError.AuthorizationError { + def userMessage: String = "Access denied" + } + } +} + +trait UserHistoryService { + + import UserHistoryService._ + + def getAll(filter: SearchFilterExpr = SearchFilterExpr.Empty, + sorting: Option[Sorting] = None, + pagination: Option[Pagination] = None) + (implicit requestContext: AuthenticatedRequestContext): Future[GetListReply] +} |