mirror of
https://github.com/OpenBankProject/OBP-API.git
synced 2026-02-06 16:56:56 +00:00
move traits of connector to obp-commons
This commit is contained in:
parent
f2c808ebe1
commit
f67dbab998
@ -1,11 +1,9 @@
|
||||
package code.accountapplication
|
||||
|
||||
|
||||
import java.util.Date
|
||||
|
||||
import code.api.util.APIUtil
|
||||
import code.products.Products.ProductCode
|
||||
import code.remotedata.RemotedataAccountApplication
|
||||
import com.openbankproject.commons.model.{AccountApplication, ProductCode}
|
||||
import net.liftweb.common.Box
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
@ -29,15 +27,6 @@ trait AccountApplicationProvider {
|
||||
def updateStatus(accountApplicationId:String, status: String): Future[Box[AccountApplication]]
|
||||
}
|
||||
|
||||
trait AccountApplication {
|
||||
def accountApplicationId: String
|
||||
def productCode: ProductCode
|
||||
def userId: String
|
||||
def customerId: String
|
||||
def dateOfApplication: Date
|
||||
def status: String
|
||||
}
|
||||
|
||||
|
||||
class RemotedataAccountApplicationCaseClasses {
|
||||
case class getAll()
|
||||
|
||||
@ -3,10 +3,8 @@ package code.accountapplication
|
||||
import java.util.Date
|
||||
|
||||
import code.api.util.ErrorMessages
|
||||
import code.customer.MappedCustomer
|
||||
import code.model.dataAccess.ResourceUser
|
||||
import code.products.Products.ProductCode
|
||||
import code.util.MappedUUID
|
||||
import com.openbankproject.commons.model.{AccountApplication, ProductCode}
|
||||
import net.liftweb.common.{Box, Empty, Failure, Full}
|
||||
import net.liftweb.mapper._
|
||||
import net.liftweb.util.Helpers.tryo
|
||||
|
||||
@ -2,11 +2,9 @@ package code.accountattribute
|
||||
|
||||
/* For AccountAttribute */
|
||||
|
||||
import code.accountattribute.AccountAttribute.{AccountAttribute, AccountAttributeType}
|
||||
import code.api.util.APIUtil
|
||||
import code.products.Products.ProductCode
|
||||
import code.remotedata.RemotedataAccountAttribute
|
||||
import com.openbankproject.commons.model.{AccountId, BankId}
|
||||
import com.openbankproject.commons.model.{AccountAttribute, AccountAttributeType, AccountId, BankId, ProductCode}
|
||||
import net.liftweb.common.{Box, Logger}
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
@ -14,36 +12,6 @@ import scala.concurrent.Future
|
||||
|
||||
object AccountAttribute extends SimpleInjector {
|
||||
|
||||
object AccountAttributeType extends Enumeration{
|
||||
type ProductAttributeType = Value
|
||||
val STRING = Value("STRING")
|
||||
|
||||
val INTEGER = Value("INTEGER")
|
||||
|
||||
val DOUBLE = Value("DOUBLE")
|
||||
|
||||
val DATE_WITH_DAY = Value("DATE_WITH_DAY")
|
||||
}
|
||||
|
||||
|
||||
|
||||
trait AccountAttribute {
|
||||
def bankId: BankId
|
||||
|
||||
def accountId: AccountId
|
||||
|
||||
def productCode: ProductCode
|
||||
|
||||
def accountAttributeId: String
|
||||
|
||||
def name: String
|
||||
|
||||
def attributeType: AccountAttributeType.Value
|
||||
|
||||
def value: String
|
||||
}
|
||||
|
||||
|
||||
val accountAttributeProvider = new Inject(buildOne _) {}
|
||||
|
||||
def buildOne: AccountAttributeProvider =
|
||||
|
||||
@ -1,9 +1,7 @@
|
||||
package code.accountattribute
|
||||
|
||||
import code.accountattribute.AccountAttribute.{AccountAttribute, AccountAttributeType}
|
||||
import code.products.Products.ProductCode
|
||||
import code.util.{MappedUUID, UUIDString}
|
||||
import com.openbankproject.commons.model.{AccountId, BankId}
|
||||
import com.openbankproject.commons.model.{AccountAttribute, AccountAttributeType, AccountId, BankId, ProductCode}
|
||||
import net.liftweb.common.{Box, Empty, Full}
|
||||
import net.liftweb.mapper._
|
||||
import net.liftweb.util.Helpers.tryo
|
||||
|
||||
@ -28,14 +28,14 @@ package code.api
|
||||
|
||||
import code.api.JSONFactoryGateway.PayloadOfJwtJSON
|
||||
import code.api.util._
|
||||
import code.bankconnectors.{Connector, InboundAccountCommon}
|
||||
import code.bankconnectors.Connector
|
||||
import code.consumer.Consumers
|
||||
import code.model.dataAccess.AuthUser
|
||||
import code.model.{Consumer, User}
|
||||
import code.users.Users
|
||||
import code.util.Helper.MdcLoggable
|
||||
import com.nimbusds.jwt.JWTClaimsSet
|
||||
import com.openbankproject.commons.model.User
|
||||
import com.openbankproject.commons.model.{InboundAccountCommon, User}
|
||||
import net.liftweb.common._
|
||||
import net.liftweb.http._
|
||||
import net.liftweb.http.rest.RestHelper
|
||||
|
||||
@ -3,14 +3,12 @@ package code.api.ResourceDocs1_4_0
|
||||
import java.util.UUID.randomUUID
|
||||
|
||||
import code.api.builder.OBP_APIBuilder
|
||||
import code.api.UKOpenBanking.v2_0_0.OBP_UKOpenBanking_200
|
||||
import code.api.berlin.group.v1.OBP_BERLIN_GROUP_1
|
||||
import code.api.berlin.group.v1_3.OBP_BERLIN_GROUP_1_3
|
||||
|
||||
import code.api.cache.Caching
|
||||
import code.api.util.APIUtil._
|
||||
import code.api.util.ApiTag._
|
||||
import code.api.util.ApiRole._
|
||||
import code.api.util.ApiStandards.{ApiStandards => _, apply => _, _}
|
||||
import code.api.util.ApiStandards._
|
||||
import code.api.util._
|
||||
import code.api.v1_4_0.{APIMethods140, JSONFactory1_4_0, OBPAPI1_4_0}
|
||||
import code.api.v2_2_0.{APIMethods220, OBPAPI2_2_0}
|
||||
|
||||
@ -16,11 +16,11 @@ import code.api.v3_0_0.JSONFactory300.createBranchJsonV300
|
||||
import code.api.v3_0_0.custom.JSONFactoryCustom300
|
||||
import code.api.v3_0_0.{LobbyJsonV330, ScopeJson, _}
|
||||
import code.api.v3_1_0.{BadLoginStatusJson, ContactDetailsJson, InviteeJson, ObpApiLoopbackJson, _}
|
||||
import code.branches.Branches.{DriveUpString, _}
|
||||
import code.common._
|
||||
import code.sandbox.SandboxData
|
||||
import code.transactionrequests.TransactionRequests.TransactionRequestTypes._
|
||||
import code.api.builder.JsonFactory_APIBuilder
|
||||
import code.branches.Branches.{Branch, DriveUpString, LobbyString}
|
||||
import com.openbankproject.commons.model
|
||||
import com.openbankproject.commons.model.PinResetReason.{FORGOT, GOOD_SECURITY_PRACTICE}
|
||||
import com.openbankproject.commons.model._
|
||||
|
||||
@ -2,8 +2,6 @@ package code.api.util
|
||||
|
||||
import java.util.Date
|
||||
|
||||
import code.accountapplication.AccountApplication
|
||||
import code.accountattribute.AccountAttribute.{AccountAttribute, AccountAttributeType}
|
||||
import code.api.APIFailureNewStyle
|
||||
import code.api.util.APIUtil.{OBPReturnType, connectorEmptyResponse, createHttpParamsByUrlFuture, createQueriesByHttpParamsFuture, fullBoxOrException, unboxFull, unboxFullOrFail}
|
||||
import code.api.util.ErrorMessages._
|
||||
@ -13,39 +11,27 @@ import code.api.v2_1_0.OBPAPI2_1_0.Implementations2_1_0
|
||||
import code.api.v2_1_0.TransactionRequestCommonBodyJSON
|
||||
import code.api.v2_2_0.OBPAPI2_2_0.Implementations2_2_0
|
||||
import code.api.v3_0_0.OBPAPI3_0_0.Implementations3_0_0
|
||||
import code.api.v3_1_0.{ContactDetailsJson, InviteeJson}
|
||||
import code.api.v3_1_0.OBPAPI3_1_0.Implementations3_1_0
|
||||
import code.atms.Atms
|
||||
import code.atms.Atms.AtmId
|
||||
import code.bankconnectors.{Connector, ObpApiLoopback}
|
||||
import code.branches.Branches
|
||||
import code.branches.Branches.{Branch, BranchId, DriveUp, DriveUpString, Lobby, LobbyString}
|
||||
import code.common.{Address, Location, Meta, Routing}
|
||||
import code.branches.Branches.{Branch, DriveUpString, LobbyString}
|
||||
import code.common.Routing
|
||||
import code.consumer.Consumers
|
||||
import code.context.UserAuthContext
|
||||
import code.customeraddress.CustomerAddress
|
||||
import code.entitlement.Entitlement
|
||||
import code.entitlementrequest.EntitlementRequest
|
||||
import code.fx.{FXRate, MappedFXRate, fx}
|
||||
import code.meetings.{ContactDetails, Invitee, Meeting}
|
||||
import code.metadata.counterparties.Counterparties
|
||||
import code.model._
|
||||
import code.productattribute.ProductAttribute.{ProductAttribute, ProductAttributeType}
|
||||
import code.productcollection.ProductCollection
|
||||
import code.productcollectionitem.ProductCollectionItem
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.taxresidence.TaxResidence
|
||||
import code.products.Products.Product
|
||||
import code.transactionChallenge.ExpectedChallengeAnswer
|
||||
import code.transactionrequests.TransactionRequests.TransactionRequest
|
||||
import code.util.Helper
|
||||
import code.views.Views
|
||||
import code.webhook.AccountWebhook
|
||||
import com.github.dwickern.macros.NameOf.nameOf
|
||||
import com.openbankproject.commons.model.{Bank, Customer, _}
|
||||
import com.openbankproject.commons.model.{AccountApplication, Bank, Customer, CustomerAddress, ProductCollection, ProductCollectionItem, TaxResidence, UserAuthContext, _}
|
||||
import net.liftweb.common.{Box, Empty, Full}
|
||||
import net.liftweb.http.provider.HTTPParam
|
||||
import net.liftweb.util.Helpers.tryo
|
||||
import net.liftweb.util.True
|
||||
import org.apache.commons.lang3.StringUtils
|
||||
|
||||
import scala.collection.immutable.List
|
||||
@ -186,7 +172,7 @@ object NewStyle {
|
||||
object function {
|
||||
import scala.concurrent.ExecutionContext.Implicits.global
|
||||
|
||||
def getBranch(bankId : BankId, branchId : BranchId, callContext: Option[CallContext]): OBPReturnType[Branches.BranchT] = {
|
||||
def getBranch(bankId : BankId, branchId : BranchId, callContext: Option[CallContext]): OBPReturnType[BranchT] = {
|
||||
Connector.connector.vend.getBranchFuture(bankId, branchId, callContext) map {
|
||||
val msg: String = s"${BranchNotFoundByBranchId}, or License may not be set. meta.license.id and meta.license.name can not be empty"
|
||||
x => fullBoxOrException(x ~> APIFailureNewStyle(msg, 400, callContext.map(_.toLight)))
|
||||
@ -200,7 +186,7 @@ object NewStyle {
|
||||
* @param callContext call context
|
||||
* @return true is mean delete success, false is delete fail
|
||||
*/
|
||||
def deleteBranch(branch : Branches.BranchT, callContext: Option[CallContext]): OBPReturnType[Boolean] = {
|
||||
def deleteBranch(branch : BranchT, callContext: Option[CallContext]): OBPReturnType[Boolean] = {
|
||||
val deletedBranch = Branch(
|
||||
branch.branchId ,
|
||||
branch.bankId ,
|
||||
@ -227,7 +213,7 @@ object NewStyle {
|
||||
} map { unboxFull(_) }
|
||||
}
|
||||
|
||||
def getAtm(bankId : BankId, atmId : AtmId, callContext: Option[CallContext]): OBPReturnType[Atms.AtmT] = {
|
||||
def getAtm(bankId : BankId, atmId : AtmId, callContext: Option[CallContext]): OBPReturnType[AtmT] = {
|
||||
Connector.connector.vend.getAtmFuture(bankId, atmId, callContext) map {
|
||||
x => fullBoxOrException(x ~> APIFailureNewStyle(AtmNotFoundByAtmId, 400, callContext.map(_.toLight)))
|
||||
} map { unboxFull(_) }
|
||||
|
||||
@ -1,16 +1,16 @@
|
||||
package code.api.v1_4_0
|
||||
|
||||
import code.api.util.APIUtil.isValidCurrencyISOCode
|
||||
import code.api.util.ApiRole._
|
||||
import code.api.util.ApiTag._
|
||||
import code.api.util.NewStyle.HttpCode
|
||||
import code.api.util.{APIUtil, ApiRole, ApiVersion, NewStyle}
|
||||
import code.api.v1_4_0.JSONFactory1_4_0._
|
||||
import code.api.v2_0_0.CreateCustomerJson
|
||||
import code.atms.Atms
|
||||
import code.bankconnectors.Connector
|
||||
import code.branches.Branches
|
||||
import code.customer.Customer
|
||||
import code.usercustomerlinks.UserCustomerLink
|
||||
import code.util.Helper
|
||||
import code.views.Views
|
||||
import com.openbankproject.commons.model._
|
||||
import net.liftweb.common.{Box, Full}
|
||||
@ -37,8 +37,6 @@ import code.api.ResourceDocs1_4_0.SwaggerDefinitionsJSON._
|
||||
import code.api.util.APIUtil.{ResourceDoc, authenticationRequiredMessage, _}
|
||||
import code.api.util.ErrorMessages
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.atms.Atms
|
||||
import code.branches.Branches
|
||||
import code.crm.CrmEvent
|
||||
import code.customer.CustomerMessages
|
||||
import code.model._
|
||||
|
||||
@ -5,12 +5,8 @@ import java.util.Date
|
||||
import code.api.util.APIUtil.ResourceDoc
|
||||
import code.api.util.{ApiRole, PegdownOptions}
|
||||
import code.api.v1_2_1.AmountOfMoneyJsonV121
|
||||
import code.atms.Atms.AtmT
|
||||
import code.branches.Branches.BranchT
|
||||
import code.common._
|
||||
import code.crm.CrmEvent.CrmEvent
|
||||
import code.customer.CustomerMessage
|
||||
import code.model._
|
||||
import code.products.Products.Product
|
||||
import code.transactionrequests.TransactionRequestTypeCharge
|
||||
import code.transactionrequests.TransactionRequests.{TransactionRequest, _}
|
||||
|
||||
@ -32,7 +32,7 @@ import code.usercustomerlinks.UserCustomerLink
|
||||
import code.util.Helper
|
||||
import code.util.Helper.booleanToBox
|
||||
import code.views.Views
|
||||
import com.openbankproject.commons.model._
|
||||
import com.openbankproject.commons.model.{Meeting, _}
|
||||
import net.liftweb.common.{Full, _}
|
||||
import net.liftweb.http.CurrentReq
|
||||
import net.liftweb.http.rest.RestHelper
|
||||
|
||||
@ -36,13 +36,12 @@ import code.kycchecks.KycCheck
|
||||
import code.kycdocuments.KycDocument
|
||||
import code.kycmedias.KycMedia
|
||||
import code.kycstatuses.KycStatus
|
||||
import code.meetings.Meeting
|
||||
import code.model._
|
||||
import code.model.dataAccess.AuthUser
|
||||
import code.socialmedia.SocialMedia
|
||||
import code.transactionrequests.TransactionRequests._
|
||||
import code.users.Users
|
||||
import com.openbankproject.commons.model._
|
||||
import com.openbankproject.commons.model.{BankAccount, _}
|
||||
import net.liftweb.common.{Box, Full}
|
||||
import net.liftweb.json.Extraction
|
||||
import net.liftweb.json.JsonAST.JValue
|
||||
|
||||
@ -15,17 +15,14 @@ import code.api.v1_4_0.JSONFactory1_4_0._
|
||||
import code.api.v2_0_0._
|
||||
import code.api.v2_1_0.JSONFactory210._
|
||||
import code.atms.Atms
|
||||
import code.atms.Atms.AtmId
|
||||
import code.bankconnectors._
|
||||
import code.branches.Branches
|
||||
import code.branches.Branches.BranchId
|
||||
import code.consumer.Consumers
|
||||
import code.customer.Customer
|
||||
import code.entitlement.Entitlement
|
||||
import code.fx.fx
|
||||
import code.metrics.APIMetrics
|
||||
import code.model.{Bank, BankAccount, Consumer, User, toUserEx}
|
||||
import code.products.Products.ProductCode
|
||||
import code.sandbox.SandboxData
|
||||
import code.transactionrequests.TransactionRequests.{TransactionChallengeTypes, TransactionRequestTypes}
|
||||
import code.usercustomerlinks.UserCustomerLink
|
||||
|
||||
@ -34,8 +34,7 @@ import code.api.v1_2_1.{AccountRoutingJsonV121, AmountOfMoneyJsonV121, BankRouti
|
||||
import code.api.v1_4_0.JSONFactory1_4_0._
|
||||
import code.api.v2_0_0.JSONFactory200.{UserJsonV200, UsersJsonV200, createEntitlementJSONs}
|
||||
import code.api.v2_0_0.TransactionRequestChargeJsonV200
|
||||
import code.branches.Branches._
|
||||
import code.common._
|
||||
import code.branches.Branches.{Branch, DriveUpString, LobbyString}
|
||||
import code.entitlement.Entitlement
|
||||
import code.metrics.APIMetric
|
||||
import code.model.dataAccess.ResourceUser
|
||||
|
||||
@ -35,9 +35,8 @@ import code.api.util.APIUtil.MessageDoc
|
||||
import code.api.v1_2_1.{AccountRoutingJsonV121, AmountOfMoneyJsonV121, BankRoutingJsonV121}
|
||||
import code.api.v1_4_0.JSONFactory1_4_0._
|
||||
import code.api.v2_1_0.{PostCounterpartyBespokeJson, ResourceUserJSON}
|
||||
import code.atms.Atms.{Atm, AtmId, AtmT}
|
||||
import code.branches.Branches._
|
||||
import code.common.{Address, Location, Meta}
|
||||
import code.atms.Atms.Atm
|
||||
import code.branches.Branches.{Branch, DriveUpString, LobbyString}
|
||||
import code.fx.FXRate
|
||||
import code.metrics.ConnectorMetric
|
||||
import code.model.dataAccess.ResourceUser
|
||||
|
||||
@ -15,10 +15,7 @@ import code.api.util._
|
||||
import code.api.v1_2_1.JSONFactory
|
||||
import code.api.v2_0_0.JSONFactory200
|
||||
import code.api.v3_0_0.JSONFactory300._
|
||||
import code.atms.Atms.AtmId
|
||||
import code.bankconnectors._
|
||||
import code.branches.Branches
|
||||
import code.branches.Branches.BranchId
|
||||
import code.consumer.Consumers
|
||||
import code.entitlementrequest.EntitlementRequest
|
||||
import code.metrics.APIMetrics
|
||||
@ -30,6 +27,7 @@ import code.util.Helper
|
||||
import code.util.Helper.booleanToBox
|
||||
import code.views.Views
|
||||
import com.github.dwickern.macros.NameOf.nameOf
|
||||
import com.grum.geocalc.{Coordinate, EarthCalc, Point}
|
||||
import com.openbankproject.commons.model._
|
||||
import net.liftweb.common._
|
||||
import net.liftweb.http.S
|
||||
@ -42,9 +40,6 @@ import scala.collection.immutable.{List, Nil}
|
||||
import scala.collection.mutable.ArrayBuffer
|
||||
import scala.concurrent.ExecutionContext.Implicits.global
|
||||
import scala.concurrent.Future
|
||||
import com.grum.geocalc.Coordinate
|
||||
import com.grum.geocalc.EarthCalc
|
||||
import com.grum.geocalc.Point
|
||||
|
||||
|
||||
trait APIMethods300 {
|
||||
@ -1010,7 +1005,7 @@ trait APIMethods300 {
|
||||
branchJsonV300 <- tryo {json.extract[BranchJsonV300]} ?~! {ErrorMessages.InvalidJsonFormat + " BranchJsonV300"}
|
||||
_ <- booleanToBox(branchJsonV300.bank_id == bank.bankId.value, "BANK_ID has to be the same in the URL and Body")
|
||||
branch <- transformToBranchFromV300(branchJsonV300) ?~! {ErrorMessages.CouldNotTransformJsonToInternalModel + " Branch"}
|
||||
success: Branches.BranchT <- Connector.connector.vend.createOrUpdateBranch(branch) ?~! {ErrorMessages.CountNotSaveOrUpdateResource + " Branch"}
|
||||
success: BranchT <- Connector.connector.vend.createOrUpdateBranch(branch) ?~! {ErrorMessages.CountNotSaveOrUpdateResource + " Branch"}
|
||||
} yield {
|
||||
val json = JSONFactory300.createBranchJsonV300(success)
|
||||
createdJsonResponse(Extraction.decompose(json), 201)
|
||||
@ -1073,7 +1068,7 @@ trait APIMethods300 {
|
||||
postBranchJsonV300.phone_number)
|
||||
_ <- booleanToBox(branchJsonV300.bank_id == bank.bankId.value, "BANK_ID has to be the same in the URL and Body")
|
||||
branch <- transformToBranchFromV300(branchJsonV300) ?~! {ErrorMessages.CouldNotTransformJsonToInternalModel + " Branch"}
|
||||
success: Branches.BranchT <- Connector.connector.vend.createOrUpdateBranch(branch) ?~! {ErrorMessages.CountNotSaveOrUpdateResource + " Branch"}
|
||||
success: BranchT <- Connector.connector.vend.createOrUpdateBranch(branch) ?~! {ErrorMessages.CountNotSaveOrUpdateResource + " Branch"}
|
||||
} yield {
|
||||
val json = JSONFactory300.createBranchJsonV300(success)
|
||||
createdJsonResponse(Extraction.decompose(json), 201)
|
||||
@ -1354,7 +1349,7 @@ trait APIMethods300 {
|
||||
case true => anonymousAccess(cc)
|
||||
}
|
||||
(_, callContext) <- NewStyle.function.getBank(bankId, callContext)
|
||||
(atm, callContext) <- NewStyle.function.getAtm(bankId,atmId, callContext)
|
||||
(atm, callContext) <- NewStyle.function.getAtm(bankId, atmId, callContext)
|
||||
} yield {
|
||||
(JSONFactory300.createAtmJsonV300(atm), HttpCode.`200`(callContext))
|
||||
}
|
||||
|
||||
@ -38,8 +38,8 @@ import code.api.v1_4_0.JSONFactory1_4_0._
|
||||
import code.api.v2_0_0.EntitlementJSONs
|
||||
import code.api.v2_0_0.JSONFactory200.{UserJsonV200, UsersJsonV200}
|
||||
import code.api.v2_1_0.CustomerCreditRatingJSON
|
||||
import code.atms.Atms.{Atm, AtmId, AtmT}
|
||||
import code.branches.Branches._
|
||||
import code.atms.Atms.Atm
|
||||
import code.branches.Branches.Branch
|
||||
import code.entitlement.Entitlement
|
||||
import code.entitlementrequest.EntitlementRequest
|
||||
import code.metrics.AggregateMetrics
|
||||
@ -54,7 +54,6 @@ import scala.collection.immutable.List
|
||||
//import code.api.v1_4_0.JSONFactory1_4_0._
|
||||
import code.api.v2_0_0.JSONFactory200
|
||||
import code.api.v2_0_0.JSONFactory200.CoreTransactionDetailsJSON
|
||||
import code.branches.Branches.Branch
|
||||
import code.common._
|
||||
|
||||
// should replace Address in 1.4
|
||||
|
||||
@ -2,7 +2,6 @@ package code.api.v3_1_0
|
||||
|
||||
import java.util.UUID
|
||||
|
||||
import code.accountattribute.AccountAttribute.AccountAttributeType
|
||||
import code.api.ResourceDocs1_4_0.SwaggerDefinitionsJSON._
|
||||
import code.api.ResourceDocs1_4_0.{MessageDocsSwaggerDefinitions, SwaggerDefinitionsJSON, SwaggerJSONFactory}
|
||||
import code.api.util.APIUtil._
|
||||
@ -20,16 +19,13 @@ import code.api.v3_0_0.JSONFactory300.createAdapterInfoJson
|
||||
import code.api.v3_1_0.JSONFactory310._
|
||||
import code.bankconnectors.Connector
|
||||
import code.bankconnectors.rest.RestConnector
|
||||
import code.branches.Branches.BranchId
|
||||
import code.consumer.Consumers
|
||||
import code.entitlement.Entitlement
|
||||
import code.loginattempts.LoginAttempt
|
||||
import code.meetings.{ContactDetails, Invitee}
|
||||
import code.metrics.APIMetrics
|
||||
import code.model._
|
||||
import code.model.dataAccess.{AuthUser, BankAccountCreation}
|
||||
import code.productattribute.ProductAttribute.ProductAttributeType
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.products.Products.{Product}
|
||||
import code.users.Users
|
||||
import code.util.Helper
|
||||
import code.webhook.AccountWebhook
|
||||
|
||||
@ -29,37 +29,26 @@ package code.api.v3_1_0
|
||||
import java.lang
|
||||
import java.util.Date
|
||||
|
||||
import code.accountapplication.AccountApplication
|
||||
import code.accountattribute.AccountAttribute.AccountAttribute
|
||||
import code.api.ResourceDocs1_4_0.SwaggerDefinitionsJSON
|
||||
import code.api.util.RateLimitPeriod.LimitCallPeriod
|
||||
import code.api.util.{APIUtil, RateLimitPeriod}
|
||||
import code.api.v1_2_1.{AccountRoutingJsonV121, AmountOfMoneyJsonV121, RateLimiting}
|
||||
import code.api.v1_4_0.JSONFactory1_4_0.{BranchRoutingJsonV141, CustomerFaceImageJson, MetaJsonV140}
|
||||
import code.api.v2_0_0.{MeetingJson, MeetingKeysJson, MeetingPresentJson}
|
||||
import code.api.v2_0_0.{MeetingKeysJson, MeetingPresentJson}
|
||||
import code.api.v2_1_0.JSONFactory210.createLicenseJson
|
||||
import code.api.v2_1_0.{CustomerCreditRatingJSON, ResourceUserJSON}
|
||||
import code.api.v2_2_0._
|
||||
import code.bankconnectors.ObpApiLoopback
|
||||
import code.common.Meta
|
||||
import code.context.UserAuthContext
|
||||
import code.customeraddress.CustomerAddress
|
||||
import code.entitlement.Entitlement
|
||||
import code.loginattempts.BadLoginAttempt
|
||||
import code.meetings.Meeting
|
||||
import code.metrics.{TopApi, TopConsumer}
|
||||
import code.model.{Consumer, User}
|
||||
import code.productattribute.ProductAttribute.ProductAttribute
|
||||
import code.productcollection.ProductCollection
|
||||
import code.productcollectionitem.ProductCollectionItem
|
||||
import code.products.Products.Product
|
||||
import code.taxresidence.TaxResidence
|
||||
import code.webhook.AccountWebhook
|
||||
import com.openbankproject.commons.model.{Customer, User}
|
||||
import com.openbankproject.commons.model.{AccountApplication, ProductCollection, ProductCollectionItem, TaxResidence, _}
|
||||
import net.liftweb.common.{Box, Full}
|
||||
|
||||
import scala.collection.immutable.List
|
||||
import scala.collection.mutable.ArrayBuffer
|
||||
|
||||
case class CheckbookOrdersJson(
|
||||
account: AccountV310Json ,
|
||||
|
||||
@ -5,61 +5,12 @@ package code.atms
|
||||
// Need to import these one by one because in same package!
|
||||
|
||||
import code.api.util.OBPQueryParam
|
||||
import code.atms.Atms.{AtmId, AtmT}
|
||||
import code.common._
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model._
|
||||
import net.liftweb.common.Logger
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
object Atms extends SimpleInjector {
|
||||
|
||||
case class AtmId(value : String){
|
||||
override def toString() = value
|
||||
}
|
||||
|
||||
object AtmId {
|
||||
def unapply(id : String) = Some(AtmId(id))
|
||||
}
|
||||
|
||||
trait AtmT {
|
||||
def atmId : AtmId
|
||||
def bankId : BankId
|
||||
def name : String
|
||||
def address : AddressT
|
||||
def location : LocationT
|
||||
def meta : MetaT
|
||||
|
||||
def OpeningTimeOnMonday : Option[String]
|
||||
def ClosingTimeOnMonday : Option[String]
|
||||
|
||||
def OpeningTimeOnTuesday : Option[String]
|
||||
def ClosingTimeOnTuesday : Option[String]
|
||||
|
||||
def OpeningTimeOnWednesday : Option[String]
|
||||
def ClosingTimeOnWednesday : Option[String]
|
||||
|
||||
def OpeningTimeOnThursday : Option[String]
|
||||
def ClosingTimeOnThursday: Option[String]
|
||||
|
||||
def OpeningTimeOnFriday : Option[String]
|
||||
def ClosingTimeOnFriday : Option[String]
|
||||
|
||||
def OpeningTimeOnSaturday : Option[String]
|
||||
def ClosingTimeOnSaturday : Option[String]
|
||||
|
||||
def OpeningTimeOnSunday: Option[String]
|
||||
def ClosingTimeOnSunday : Option[String]
|
||||
|
||||
def isAccessible : Option[Boolean]
|
||||
|
||||
def locatedAt : Option[String]
|
||||
def moreInfo : Option[String]
|
||||
def hasDepositCapability : Option[Boolean]
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
case class Atm (
|
||||
atmId : AtmId,
|
||||
bankId : BankId,
|
||||
|
||||
@ -1,10 +1,8 @@
|
||||
package code.atms
|
||||
|
||||
import code.api.util.{OBPLimit, OBPOffset, OBPQueryParam}
|
||||
import code.atms.Atms._
|
||||
import code.common._
|
||||
import code.util.{TwentyFourHourClockString, UUIDString}
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model._
|
||||
import net.liftweb.mapper._
|
||||
|
||||
object MappedAtmsProvider extends AtmsProvider {
|
||||
|
||||
@ -3,9 +3,6 @@ package code.bankconnectors
|
||||
import java.util.Date
|
||||
import java.util.UUID.randomUUID
|
||||
|
||||
import code.accountapplication.AccountApplication
|
||||
import code.accountattribute.AccountAttribute.{AccountAttribute, AccountAttributeType}
|
||||
import code.accountholders.{AccountHolders, MapperAccountHolders}
|
||||
import code.accountholders.{AccountHolders, MapperAccountHolders}
|
||||
import code.api.cache.Caching
|
||||
import code.api.util.APIUtil._
|
||||
@ -17,26 +14,18 @@ import code.api.v1_4_0.JSONFactory1_4_0.TransactionRequestAccountJsonV140
|
||||
import code.api.v2_1_0.{TransactionRequestCommonBodyJSON, _}
|
||||
import code.api.v3_1_0._
|
||||
import code.atms.Atms
|
||||
import code.atms.Atms.{AtmId, AtmT}
|
||||
import code.bankconnectors.akka.AkkaConnector_vDec2018
|
||||
import code.bankconnectors.vJune2017.KafkaMappedConnector_vJune2017
|
||||
import code.bankconnectors.vMar2017.KafkaMappedConnector_vMar2017
|
||||
import code.bankconnectors.vSept2018.KafkaMappedConnector_vSept2018
|
||||
import code.branches.Branches.{Branch, BranchId, BranchT}
|
||||
import code.context.UserAuthContext
|
||||
import code.model.{Transaction, toUserEx}
|
||||
import code.customeraddress.CustomerAddress
|
||||
import code.branches.Branches.Branch
|
||||
import code.fx.FXRate
|
||||
import code.fx.fx.TTL
|
||||
import code.kafka.Topics.TopicTrait
|
||||
import code.management.ImporterAPI.ImporterTransaction
|
||||
import code.meetings.{ContactDetails, Invitee, Meeting}
|
||||
import code.model.dataAccess.ResourceUser
|
||||
import code.productattribute.ProductAttribute.{ProductAttribute, ProductAttributeType}
|
||||
import code.productcollection.ProductCollection
|
||||
import code.productcollectionitem.ProductCollectionItem
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.taxresidence.TaxResidence
|
||||
import code.model.{Transaction, toUserEx}
|
||||
import code.products.Products.Product
|
||||
import code.transactionChallenge.ExpectedChallengeAnswer
|
||||
import code.transactionrequests.TransactionRequests.TransactionRequestTypes._
|
||||
import code.transactionrequests.TransactionRequests._
|
||||
@ -44,7 +33,7 @@ import code.transactionrequests.{TransactionRequestTypeCharge, TransactionReques
|
||||
import code.users.Users
|
||||
import code.util.Helper._
|
||||
import code.views.Views
|
||||
import com.openbankproject.commons.model.{Bank, CounterpartyTrait, TransactionRequestStatus, _}
|
||||
import com.openbankproject.commons.model.{AccountApplication, Bank, CounterpartyTrait, CustomerAddress, ProductCollection, ProductCollectionItem, TaxResidence, TransactionRequestStatus, UserAuthContext, _}
|
||||
import com.tesobe.CacheKeyFromArguments
|
||||
import net.liftweb.common.{Box, Empty, Failure, Full}
|
||||
import net.liftweb.json.Extraction.decompose
|
||||
@ -58,9 +47,9 @@ import scala.collection.immutable.{List, Nil}
|
||||
import scala.collection.mutable.ArrayBuffer
|
||||
import scala.concurrent.ExecutionContext.Implicits.global
|
||||
import scala.concurrent.Future
|
||||
import scala.concurrent.duration._
|
||||
import scala.math.BigInt
|
||||
import scala.util.Random
|
||||
import scala.concurrent.duration._
|
||||
|
||||
/*
|
||||
So we can switch between different sources of resources e.g.
|
||||
@ -108,25 +97,7 @@ case class InboundUser(
|
||||
password: String,
|
||||
displayName: String
|
||||
)
|
||||
// This is the common InboundAccount from all Kafka/remote, not finished yet.
|
||||
trait InboundAccountCommon{
|
||||
def errorCode: String
|
||||
def bankId: String
|
||||
def branchId: String
|
||||
def accountId: String
|
||||
def accountNumber: String
|
||||
def accountType: String
|
||||
def balanceAmount: String
|
||||
def balanceCurrency: String
|
||||
def owners: List[String]
|
||||
def viewsToGenerate: List[String]
|
||||
def bankRoutingScheme:String
|
||||
def bankRoutingAddress:String
|
||||
def branchRoutingScheme:String
|
||||
def branchRoutingAddress:String
|
||||
def accountRoutingScheme:String
|
||||
def accountRoutingAddress:String
|
||||
}
|
||||
|
||||
case class ObpApiLoopback(
|
||||
connectorVersion: String,
|
||||
gitCommit: String,
|
||||
|
||||
@ -23,15 +23,13 @@ Osloerstrasse 16/17
|
||||
Berlin 13359, Germany
|
||||
*/
|
||||
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.{Date, Locale, UUID}
|
||||
import java.util.Date
|
||||
|
||||
import code.accountholders.AccountHolders
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.util._
|
||||
import code.api.v2_1_0.TransactionRequestCommonBodyJSON
|
||||
import code.bankconnectors.vMar2017.{KafkaMappedConnector_vMar2017}
|
||||
import code.branches.Branches.{Branch, BranchT}
|
||||
import code.bankconnectors.vMar2017.KafkaMappedConnector_vMar2017
|
||||
import code.branches.Branches.Branch
|
||||
import code.fx.{FXRate, fx}
|
||||
import code.kafka.KafkaHelper
|
||||
import code.management.ImporterAPI.ImporterTransaction
|
||||
@ -43,7 +41,7 @@ import code.metadata.transactionimages.TransactionImages
|
||||
import code.metadata.wheretags.WhereTags
|
||||
import code.model._
|
||||
import code.model.dataAccess._
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.products.Products.Product
|
||||
import code.transaction.MappedTransaction
|
||||
import code.transactionrequests.TransactionRequests.TransactionRequestTypes._
|
||||
import code.transactionrequests.TransactionRequests._
|
||||
@ -55,11 +53,10 @@ import com.openbankproject.commons.model.{Bank, _}
|
||||
import net.liftweb.common._
|
||||
import net.liftweb.mapper._
|
||||
import net.liftweb.util.Helpers._
|
||||
import net.liftweb.util.Props
|
||||
|
||||
import scala.collection.immutable.{List, Seq}
|
||||
import scala.concurrent.Future
|
||||
import scala.concurrent.ExecutionContext.Implicits.global
|
||||
import scala.concurrent.Future
|
||||
|
||||
object KafkaMappedConnector extends Connector with KafkaHelper with MdcLoggable {
|
||||
|
||||
|
||||
@ -36,10 +36,9 @@ import code.api.util.APIUtil.saveConnectorMetric
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.util._
|
||||
import code.api.v2_1_0.TransactionRequestCommonBodyJSON
|
||||
import code.atms.Atms.{AtmId, AtmT}
|
||||
import code.atms.{Atms, MappedAtm}
|
||||
import code.bankconnectors.vMar2017.KafkaMappedConnector_vMar2017
|
||||
import code.branches.Branches.{Branch, BranchT}
|
||||
import code.branches.Branches.Branch
|
||||
import code.fx.FXRate
|
||||
import code.kafka.KafkaHelper
|
||||
import code.management.ImporterAPI.ImporterTransaction
|
||||
@ -50,7 +49,7 @@ import code.metadata.transactionimages.TransactionImages
|
||||
import code.metadata.wheretags.WhereTags
|
||||
import code.model._
|
||||
import code.model.dataAccess._
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.products.Products.Product
|
||||
import code.transaction.MappedTransaction
|
||||
import code.transactionrequests.TransactionRequests.TransactionRequestTypes._
|
||||
import code.transactionrequests.TransactionRequests._
|
||||
|
||||
@ -1,46 +1,41 @@
|
||||
package code.bankconnectors
|
||||
|
||||
import java.util.Date
|
||||
import java.util.UUID.randomUUID
|
||||
import java.util.{Date, UUID}
|
||||
|
||||
import code.accountapplication.AccountApplication
|
||||
import code.accountattribute.AccountAttribute
|
||||
import code.accountattribute.AccountAttribute.{AccountAttribute, AccountAttributeType}
|
||||
import code.customeraddress.{CustomerAddress, MappedCustomerAddress}
|
||||
import code.api.ResourceDocs1_4_0.SwaggerDefinitionsJSON
|
||||
import code.api.cache.Caching
|
||||
import code.api.util.APIUtil.{OBPReturnType, isValidCurrencyISOCode, saveConnectorMetric, stringOrNull}
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.util._
|
||||
import code.api.v2_1_0.TransactionRequestCommonBodyJSON
|
||||
import code.api.v3_1_0.{CardObjectJson, CheckbookOrdersJson, PostCustomerJsonV310, TaxResidenceV310}
|
||||
import code.atms.Atms.{AtmId, AtmT}
|
||||
import code.atms.{Atms, MappedAtm}
|
||||
import code.atms.Atms.Atm
|
||||
import code.atms.MappedAtm
|
||||
import code.bankconnectors.vJune2017.InboundAccountJune2017
|
||||
import code.branches.Branches._
|
||||
import code.branches.Branches.Branch
|
||||
import code.branches.MappedBranch
|
||||
import code.cards.MappedPhysicalCard
|
||||
import code.common.OpeningTimes
|
||||
import code.context.{UserAuthContext, UserAuthContextProvider}
|
||||
import code.context.UserAuthContextProvider
|
||||
import code.customer._
|
||||
import code.customeraddress.CustomerAddress
|
||||
import code.fx.{FXRate, MappedFXRate, fx}
|
||||
import code.management.ImporterAPI.ImporterTransaction
|
||||
import code.meetings.{ContactDetails, Invitee, Meeting}
|
||||
import code.meetings.Meeting
|
||||
import code.metadata.comments.Comments
|
||||
import code.metadata.counterparties.Counterparties
|
||||
import code.metadata.narrative.Narrative
|
||||
import code.metadata.tags.Tags
|
||||
import code.metadata.transactionimages.TransactionImages
|
||||
import code.metadata.wheretags.WhereTags
|
||||
import code.model.dataAccess._
|
||||
import code.model._
|
||||
import code.model.dataAccess._
|
||||
import code.productattribute.ProductAttribute
|
||||
import code.productattribute.ProductAttribute.{ProductAttribute, ProductAttributeType}
|
||||
import code.productcollection.{MappedProductCollectionProvider, ProductCollection}
|
||||
import code.productcollection.ProductCollection
|
||||
import code.productcollectionitem.ProductCollectionItem
|
||||
import code.products.MappedProduct
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.taxresidence
|
||||
import code.products.Products.{Product}
|
||||
import code.taxresidence.TaxResidence
|
||||
import code.transaction.MappedTransaction
|
||||
import code.transactionrequests.TransactionRequests._
|
||||
@ -49,7 +44,7 @@ import code.util.Helper
|
||||
import code.util.Helper.{MdcLoggable, _}
|
||||
import code.views.Views
|
||||
import com.google.common.cache.CacheBuilder
|
||||
import com.openbankproject.commons.model._
|
||||
import com.openbankproject.commons.model.{AccountApplication, AccountAttribute, ProductAttribute, ProductCollectionItem, TaxResidence, _}
|
||||
import com.tesobe.CacheKeyFromArguments
|
||||
import com.tesobe.model.UpdateBankAccount
|
||||
import net.liftweb.common._
|
||||
@ -1407,7 +1402,7 @@ object LocalMappedConnector extends Connector with MdcLoggable {
|
||||
|
||||
|
||||
// TODO This should accept a normal case class not "json" case class i.e. don't rely on REST json structures
|
||||
override def createOrUpdateAtm(atm: Atms.Atm): Box[AtmT] = {
|
||||
override def createOrUpdateAtm(atm: Atm): Box[AtmT] = {
|
||||
|
||||
val isAccessibleString = optionBooleanToString(atm.isAccessible)
|
||||
val hasDepositCapabilityString = optionBooleanToString(atm.hasDepositCapability)
|
||||
|
||||
@ -10,7 +10,7 @@ import code.accountholders.{AccountHolders, MapperAccountHolders}
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.util._
|
||||
import code.api.v2_1_0.TransactionRequestCommonBodyJSON
|
||||
import code.branches.Branches.{Branch, BranchT}
|
||||
import code.branches.Branches.Branch
|
||||
import code.fx.{FXRate, fx}
|
||||
import code.management.ImporterAPI.ImporterTransaction
|
||||
import code.metadata.comments.Comments
|
||||
@ -20,7 +20,8 @@ import code.metadata.transactionimages.TransactionImages
|
||||
import code.metadata.wheretags.WhereTags
|
||||
import code.model._
|
||||
import code.model.dataAccess._
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.products.Products.Product
|
||||
import code.model.Transaction
|
||||
import code.transaction.MappedTransaction
|
||||
import code.transactionrequests.TransactionRequests._
|
||||
import code.transactionrequests._
|
||||
@ -30,7 +31,7 @@ import code.views.Views
|
||||
import com.google.common.cache.CacheBuilder
|
||||
import com.openbankproject.commons.model.{Bank, _}
|
||||
import com.tesobe.obp.kafka.{Configuration, SimpleConfiguration, SimpleNorth}
|
||||
import com.tesobe.obp.transport.nov2016.{Bank => _, Transaction => _, User => _, _}
|
||||
import com.tesobe.obp.transport.nov2016._
|
||||
import com.tesobe.obp.transport.spi.{DefaultSorter, TimestampFilter}
|
||||
import com.tesobe.obp.transport.{Pager, Transport}
|
||||
import net.liftweb.common._
|
||||
|
||||
@ -1,16 +1,13 @@
|
||||
package code.bankconnectors.vJune2017
|
||||
|
||||
import java.lang
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.{Date, Locale, UUID}
|
||||
import java.util.Date
|
||||
|
||||
import code.api.util.APIUtil
|
||||
import code.api.v3_1_0.CheckbookOrdersJson
|
||||
import code.atms.Atms.{AtmId, AtmT}
|
||||
import code.bankconnectors._
|
||||
import code.bankconnectors.vMar2017._
|
||||
import code.branches.Branches._
|
||||
import code.common.{Address, Location, Meta, Routing}
|
||||
import code.branches.Branches.{DriveUpString, LobbyString}
|
||||
import code.common.Routing
|
||||
import code.kafka.Topics._
|
||||
import code.model.dataAccess.MappedBankAccountData
|
||||
import code.transactionrequests.TransactionRequests.TransactionRequest
|
||||
|
||||
@ -34,10 +34,8 @@ import code.api.util.ErrorMessages._
|
||||
import code.api.util._
|
||||
import code.api.util.APIUtil._
|
||||
import code.api.v3_1_0.{AccountV310Json, CardObjectJson, CheckbookOrdersJson}
|
||||
import code.atms.Atms.{AtmId, AtmT}
|
||||
import code.bankconnectors._
|
||||
import code.bankconnectors.vMar2017._
|
||||
import code.branches.Branches.{BranchId, BranchT, Lobby}
|
||||
import code.common._
|
||||
import code.customer._
|
||||
import code.kafka.KafkaHelper
|
||||
|
||||
@ -23,16 +23,14 @@ Osloerstrasse 16/17
|
||||
Berlin 13359, Germany
|
||||
*/
|
||||
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.{Date, Locale, UUID}
|
||||
import java.util.Date
|
||||
|
||||
import code.accountholders.AccountHolders
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.util.APIUtil.MessageDoc
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.util._
|
||||
import code.api.v2_1_0._
|
||||
import code.bankconnectors._
|
||||
import code.branches.Branches.{Branch, BranchT}
|
||||
import code.branches.Branches.Branch
|
||||
import code.fx.{FXRate, fx}
|
||||
import code.kafka.KafkaHelper
|
||||
import code.management.ImporterAPI.ImporterTransaction
|
||||
@ -44,7 +42,7 @@ import code.metadata.transactionimages.TransactionImages
|
||||
import code.metadata.wheretags.WhereTags
|
||||
import code.model._
|
||||
import code.model.dataAccess._
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.products.Products.Product
|
||||
import code.transaction.MappedTransaction
|
||||
import code.transactionrequests.TransactionRequests.TransactionRequestTypes._
|
||||
import code.transactionrequests.TransactionRequests._
|
||||
@ -54,16 +52,12 @@ import code.util.{Helper, TTLCache}
|
||||
import code.views.Views
|
||||
import com.openbankproject.commons.model.{Bank, _}
|
||||
import net.liftweb.common._
|
||||
import net.liftweb.json.Extraction
|
||||
import net.liftweb.json.JsonAST.JValue
|
||||
import net.liftweb.mapper._
|
||||
import net.liftweb.util.Helpers._
|
||||
import net.liftweb.util.Props
|
||||
|
||||
import scala.collection.immutable.{Nil, Seq}
|
||||
import scala.collection.mutable.ArrayBuffer
|
||||
import scala.concurrent.Future
|
||||
import scala.concurrent.ExecutionContext.Implicits.global
|
||||
import scala.concurrent.Future
|
||||
|
||||
trait KafkaMappedConnector_vMar2017 extends Connector with KafkaHelper with MdcLoggable {
|
||||
|
||||
|
||||
@ -5,18 +5,14 @@ import java.util.Date
|
||||
import code.api.util.APIUtil
|
||||
import code.api.v2_1_0.TransactionRequestCommonBodyJSON
|
||||
import code.api.v3_1_0.CheckbookOrdersJson
|
||||
import code.atms.Atms.{AtmId, AtmT}
|
||||
import code.bankconnectors._
|
||||
import code.bankconnectors.vJune2017.InternalCustomer
|
||||
import code.bankconnectors.vMar2017._
|
||||
import code.branches.Branches._
|
||||
import code.common.{Address, Location, Meta, Routing}
|
||||
import code.context.UserAuthContext
|
||||
import code.branches.Branches.{DriveUpString, LobbyString}
|
||||
import code.common.Routing
|
||||
import code.kafka.Topics._
|
||||
import code.model.dataAccess.MappedBankAccountData
|
||||
import code.model._
|
||||
import code.transactionrequests.TransactionRequests.TransactionRequest
|
||||
import com.openbankproject.commons.model.{CounterpartyTrait, Customer, _}
|
||||
import com.openbankproject.commons.model.{CounterpartyTrait, Customer, UserAuthContext, _}
|
||||
import net.liftweb.mapper.By
|
||||
import net.liftweb.util.Helpers.today
|
||||
|
||||
|
||||
@ -33,11 +33,9 @@ import code.api.util.APIUtil.{MessageDoc, saveConnectorMetric, _}
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.util._
|
||||
import code.api.v3_1_0.CardObjectJson
|
||||
import code.atms.Atms.AtmId
|
||||
import code.bankconnectors._
|
||||
import code.bankconnectors.vJune2017.{InternalCustomer, JsonFactory_vJune2017}
|
||||
import code.bankconnectors.vMar2017._
|
||||
import code.branches.Branches.{BranchId, Lobby}
|
||||
import code.common._
|
||||
import code.customer._
|
||||
import code.kafka.{KafkaHelper, Topics}
|
||||
|
||||
@ -5,50 +5,13 @@ package code.branches
|
||||
|
||||
// Need to import these one by one because in same package!
|
||||
import code.api.util.OBPQueryParam
|
||||
import code.branches.Branches.{BranchId, BranchT}
|
||||
import code.common._
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model._
|
||||
import net.liftweb.common.Logger
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
object Branches extends SimpleInjector {
|
||||
|
||||
case class BranchId(value : String) {
|
||||
override def toString = value
|
||||
}
|
||||
|
||||
object BranchId {
|
||||
def unapply(id : String) = Some(BranchId(id))
|
||||
}
|
||||
|
||||
// MappedBranch will implement this.
|
||||
// The trait defines the fields the API will interact with.
|
||||
|
||||
trait BranchT {
|
||||
def branchId: BranchId
|
||||
def bankId: BankId
|
||||
def name: String
|
||||
def address: Address
|
||||
def location: Location
|
||||
def lobbyString: Option[LobbyStringT]
|
||||
def driveUpString: Option[DriveUpStringT]
|
||||
def meta: Meta
|
||||
def branchRouting: Option[RoutingT]
|
||||
def lobby: Option[Lobby]
|
||||
def driveUp: Option[DriveUp]
|
||||
// Easy access for people who use wheelchairs etc. "Y"=true "N"=false ""=Unknown
|
||||
def isAccessible : Option[Boolean]
|
||||
def accessibleFeatures: Option[String]
|
||||
def branchType : Option[String]
|
||||
def moreInfo : Option[String]
|
||||
def phoneNumber : Option[String]
|
||||
// marks whether this branch is deleted
|
||||
def isDeleted : Option[Boolean]
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// This is the API Version indpendent case class for Branches.
|
||||
// Use this internally
|
||||
case class Branch(
|
||||
@ -212,52 +175,14 @@ object Branches extends SimpleInjector {
|
||||
// ) extends Branch
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
case class Lobby(
|
||||
monday: List[OpeningTimes],
|
||||
tuesday: List[OpeningTimes],
|
||||
wednesday: List[OpeningTimes],
|
||||
thursday: List[OpeningTimes],
|
||||
friday: List[OpeningTimes],
|
||||
saturday: List[OpeningTimes],
|
||||
sunday: List[OpeningTimes]
|
||||
)
|
||||
|
||||
case class DriveUp(
|
||||
monday: OpeningTimes,
|
||||
tuesday: OpeningTimes,
|
||||
wednesday: OpeningTimes,
|
||||
thursday: OpeningTimes,
|
||||
friday: OpeningTimes,
|
||||
saturday: OpeningTimes,
|
||||
sunday: OpeningTimes
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//
|
||||
|
||||
@deprecated("Use Lobby instead which contains detailed fields, not this string","24 July 2017")
|
||||
trait LobbyStringT {
|
||||
def hours : String
|
||||
}
|
||||
|
||||
@deprecated("Use Lobby instead which contains detailed fields, not this string","24 July 2017")
|
||||
case class LobbyString (
|
||||
hours : String
|
||||
) extends LobbyStringT
|
||||
|
||||
|
||||
@deprecated("Use DriveUp instead which contains detailed fields now, not this string","24 July 2017")
|
||||
trait DriveUpStringT {
|
||||
def hours : String
|
||||
}
|
||||
|
||||
@deprecated("Use DriveUp instead which contains detailed fields now, not this string","24 July 2017")
|
||||
case class DriveUpString (
|
||||
hours : String
|
||||
|
||||
@ -1,10 +1,8 @@
|
||||
package code.branches
|
||||
|
||||
import code.api.util.{OBPLimit, OBPOffset, OBPQueryParam}
|
||||
import code.branches.Branches._
|
||||
import code.common._
|
||||
import code.util.{TwentyFourHourClockString, UUIDString}
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model._
|
||||
import net.liftweb.common.Logger
|
||||
import net.liftweb.mapper.{By, _}
|
||||
|
||||
|
||||
@ -2,106 +2,12 @@ package code.common
|
||||
|
||||
import java.util.Date
|
||||
|
||||
import com.openbankproject.commons.model._
|
||||
|
||||
// We use traits so we can override in the Provider for database access etc.
|
||||
// We use case classes based on the traits so we can easily construct a data structure like the trait.
|
||||
|
||||
|
||||
trait LicenseT {
|
||||
def id : String
|
||||
def name : String
|
||||
}
|
||||
|
||||
case class License (
|
||||
id : String,
|
||||
name : String
|
||||
) extends LicenseT
|
||||
|
||||
|
||||
|
||||
trait MetaT {
|
||||
def license : LicenseT
|
||||
}
|
||||
|
||||
case class Meta (
|
||||
license : License
|
||||
) extends MetaT
|
||||
|
||||
|
||||
trait AddressT {
|
||||
def line1 : String
|
||||
def line2 : String
|
||||
def line3 : String
|
||||
def city : String
|
||||
def county : Option[String]
|
||||
def state : String
|
||||
def postCode : String
|
||||
//ISO_3166-1_alpha-2
|
||||
def countryCode : String
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
case class Address(
|
||||
line1 : String,
|
||||
line2 : String,
|
||||
line3 : String,
|
||||
city : String,
|
||||
county : Option[String],
|
||||
state : String,
|
||||
postCode : String,
|
||||
//ISO_3166-1_alpha-2
|
||||
countryCode : String) extends AddressT
|
||||
|
||||
|
||||
trait LocationT {
|
||||
def latitude: Double
|
||||
def longitude: Double
|
||||
}
|
||||
|
||||
|
||||
case class Location(
|
||||
latitude: Double,
|
||||
longitude: Double,
|
||||
date : Option[Date],
|
||||
user: Option[BasicResourceUser]
|
||||
) extends LocationT
|
||||
|
||||
|
||||
|
||||
|
||||
case class OpeningTimes(
|
||||
openingTime: String,
|
||||
closingTime: String
|
||||
)
|
||||
|
||||
|
||||
trait RoutingT {
|
||||
def scheme: String
|
||||
def address: String
|
||||
}
|
||||
|
||||
case class Routing(
|
||||
scheme: String,
|
||||
address: String
|
||||
) extends RoutingT
|
||||
|
||||
|
||||
/*
|
||||
Basic User data
|
||||
*/
|
||||
case class BasicResourceUser(
|
||||
userId: String, // Should come from Resource User Id
|
||||
provider: String,
|
||||
username: String
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package code.context
|
||||
|
||||
import code.util.{MappedUUID, UUIDString}
|
||||
import com.openbankproject.commons.model.UserAuthContext
|
||||
import net.liftweb.mapper._
|
||||
|
||||
class MappedUserAuthContext extends UserAuthContext with LongKeyedMapper[MappedUserAuthContext] with IdPK with CreatedUpdated {
|
||||
|
||||
@ -1,8 +0,0 @@
|
||||
package code.context
|
||||
|
||||
trait UserAuthContext {
|
||||
def userAuthContextId : String
|
||||
def userId : String
|
||||
def key : String
|
||||
def value : String
|
||||
}
|
||||
@ -2,6 +2,7 @@ package code.context
|
||||
|
||||
import code.api.util.APIUtil
|
||||
import code.remotedata.RemotedataUserAuthContext
|
||||
import com.openbankproject.commons.model.UserAuthContext
|
||||
import net.liftweb.common.Box
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
|
||||
@ -5,7 +5,6 @@ package code.crm
|
||||
|
||||
|
||||
import code.crm.CrmEvent.{CrmEvent, CrmEventId}
|
||||
import code.common.{AddressT, LocationT, MetaT}
|
||||
import code.model.dataAccess.ResourceUser
|
||||
import code.model.dataAccess.ResourceUser
|
||||
import net.liftweb.common.Logger
|
||||
@ -13,7 +12,7 @@ import net.liftweb.util
|
||||
import net.liftweb.util.SimpleInjector
|
||||
import java.util.Date
|
||||
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model.{BankId, MetaT}
|
||||
|
||||
object CrmEvent extends util.SimpleInjector {
|
||||
|
||||
|
||||
@ -6,11 +6,10 @@ import code.api.util.ErrorMessages._
|
||||
import code.crm.CrmEvent._
|
||||
import code.crm.CrmEvent.{CrmEvent, CrmEventId}
|
||||
import code.customer.CustomerMessage
|
||||
import code.common.{AddressT, LicenseT, LocationT, MetaT}
|
||||
import code.model.dataAccess.ResourceUser
|
||||
import code.users.Users
|
||||
import code.util.{MappedUUID, UUIDString}
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model.{BankId, LicenseT}
|
||||
import net.liftweb.common.Box
|
||||
import net.liftweb.mapper._
|
||||
import org.joda.time.Hours
|
||||
|
||||
@ -1,9 +1,8 @@
|
||||
package code.customeraddress
|
||||
|
||||
import java.util.Date
|
||||
|
||||
import code.api.util.APIUtil
|
||||
import code.remotedata.RemotedataCustomerAddress
|
||||
import com.openbankproject.commons.model.CustomerAddress
|
||||
import net.liftweb.common.Box
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
@ -49,22 +48,6 @@ trait CustomerAddressProvider {
|
||||
def deleteAddress(customerAddressId: String): Future[Box[Boolean]]
|
||||
}
|
||||
|
||||
trait CustomerAddress {
|
||||
def customerId: String
|
||||
def customerAddressId: String
|
||||
def line1: String
|
||||
def line2: String
|
||||
def line3: String
|
||||
def city: String
|
||||
def county: String
|
||||
def state: String
|
||||
def postcode: String
|
||||
def countryCode: String
|
||||
def status: String
|
||||
def tags: String
|
||||
def insertDate: Date
|
||||
}
|
||||
|
||||
|
||||
class RemotedataCustomerAddressCaseClasses {
|
||||
case class getAddress(customerId: String)
|
||||
|
||||
@ -5,6 +5,7 @@ import java.util.Date
|
||||
import code.api.util.ErrorMessages
|
||||
import code.customer.MappedCustomer
|
||||
import code.util.{MappedUUID, MediumString}
|
||||
import com.openbankproject.commons.model.CustomerAddress
|
||||
import net.liftweb.common.{Box, Empty, Failure, Full}
|
||||
import net.liftweb.mapper._
|
||||
import net.liftweb.util.Helpers.tryo
|
||||
|
||||
@ -3,11 +3,10 @@ package code.meetings
|
||||
import java.util.Date
|
||||
|
||||
import code.api.util.ErrorMessages
|
||||
import code.cards.PinReset
|
||||
import code.model.dataAccess.ResourceUser
|
||||
import code.util.{MappedUUID, UUIDString}
|
||||
import com.openbankproject.commons.model.{BankId, User}
|
||||
import net.liftweb.common.{Box, Full}
|
||||
import com.openbankproject.commons.model.{BankId, ContactDetails, Invitee, Meeting, MeetingKeys, MeetingPresent, User}
|
||||
import net.liftweb.common.Box
|
||||
import net.liftweb.mapper._
|
||||
import net.liftweb.util.Helpers.tryo
|
||||
|
||||
|
||||
@ -2,49 +2,16 @@ package code.meetings
|
||||
|
||||
import java.util.Date
|
||||
|
||||
import com.openbankproject.commons.model.{BankId, User}
|
||||
import com.openbankproject.commons.model.{BankId, ContactDetails, Invitee, Meeting, User}
|
||||
import net.liftweb.common.Box
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
import scala.collection.immutable.List
|
||||
|
||||
|
||||
trait Meeting {
|
||||
def meetingId: String
|
||||
def providerId: String
|
||||
def purposeId: String
|
||||
def bankId: String
|
||||
def present: MeetingPresent
|
||||
def keys: MeetingKeys
|
||||
def when: Date
|
||||
def creator: ContactDetails
|
||||
def invitees: List[Invitee]
|
||||
}
|
||||
case class Invitee(
|
||||
contactDetails: ContactDetails,
|
||||
status: String
|
||||
)
|
||||
|
||||
case class ContactMedium(
|
||||
`type`: String,
|
||||
value: String
|
||||
)
|
||||
case class ContactDetails(
|
||||
name: String,
|
||||
phone: String,
|
||||
email: String
|
||||
)
|
||||
|
||||
case class MeetingKeys (
|
||||
sessionId: String,
|
||||
customerToken: String,
|
||||
staffToken: String
|
||||
)
|
||||
|
||||
case class MeetingPresent(
|
||||
staffUserId: String,
|
||||
customerUserId: String
|
||||
)
|
||||
|
||||
|
||||
object Meeting extends SimpleInjector {
|
||||
|
||||
@ -31,13 +31,12 @@ import code.api.util.APIUtil.{hasAnOAuthHeader, isValidStrongPassword, _}
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.util._
|
||||
import code.api.{DirectLogin, GatewayLogin, OAuthHandshake}
|
||||
import code.bankconnectors.{Connector, InboundAccountCommon, InboundUser}
|
||||
import code.bankconnectors.{Connector, InboundUser}
|
||||
import code.loginattempts.LoginAttempt
|
||||
import code.model._
|
||||
import code.users.Users
|
||||
import code.util.Helper
|
||||
import code.views.Views
|
||||
import com.openbankproject.commons.model.{AccountId, BankId, BankIdAccountId, User}
|
||||
import com.openbankproject.commons.model.{User, _}
|
||||
import net.liftweb.common._
|
||||
import net.liftweb.http._
|
||||
import net.liftweb.mapper._
|
||||
|
||||
@ -1,10 +1,8 @@
|
||||
package code.productAttributeattribute
|
||||
|
||||
import code.productattribute.ProductAttribute.{ProductAttribute, ProductAttributeType}
|
||||
import code.productattribute.ProductAttributeProvider
|
||||
import code.products.Products.ProductCode
|
||||
import code.util.{MappedUUID, UUIDString}
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model.{BankId, ProductAttribute, ProductAttributeType, ProductCode}
|
||||
import net.liftweb.common.{Box, Empty, Full}
|
||||
import net.liftweb.mapper._
|
||||
import net.liftweb.util.Helpers.tryo
|
||||
|
||||
@ -4,10 +4,8 @@ package code.productattribute
|
||||
|
||||
import code.api.util.APIUtil
|
||||
import code.productAttributeattribute.MappedProductAttributeProvider
|
||||
import code.productattribute.ProductAttribute.{ProductAttribute, ProductAttributeType}
|
||||
import code.products.Products.ProductCode
|
||||
import code.remotedata.RemotedataProductAttribute
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model.{BankId, ProductAttribute, ProductAttributeType, ProductCode}
|
||||
import net.liftweb.common.{Box, Logger}
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
@ -15,34 +13,6 @@ import scala.concurrent.Future
|
||||
|
||||
object ProductAttribute extends SimpleInjector {
|
||||
|
||||
object ProductAttributeType extends Enumeration{
|
||||
type ProductAttributeType = Value
|
||||
val STRING = Value("STRING")
|
||||
|
||||
val INTEGER = Value("INTEGER")
|
||||
|
||||
val DOUBLE = Value("DOUBLE")
|
||||
|
||||
val DATE_WITH_DAY = Value("DATE_WITH_DAY")
|
||||
}
|
||||
|
||||
|
||||
|
||||
trait ProductAttribute {
|
||||
def bankId: BankId
|
||||
|
||||
def productCode: ProductCode
|
||||
|
||||
def productAttributeId: String
|
||||
|
||||
def name: String
|
||||
|
||||
def attributeType: ProductAttributeType.Value
|
||||
|
||||
def value: String
|
||||
}
|
||||
|
||||
|
||||
val productAttributeProvider = new Inject(buildOne _) {}
|
||||
|
||||
def buildOne: ProductAttributeProvider =
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package code.productcollection
|
||||
|
||||
import com.openbankproject.commons.model.ProductCollection
|
||||
import net.liftweb.common._
|
||||
import net.liftweb.mapper._
|
||||
import net.liftweb.util.Helpers.tryo
|
||||
|
||||
@ -2,6 +2,7 @@ package code.productcollection
|
||||
|
||||
import code.api.util.APIUtil
|
||||
import code.remotedata.RemotedataProductCollection
|
||||
import com.openbankproject.commons.model.ProductCollection
|
||||
import net.liftweb.common.Box
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
@ -24,11 +25,6 @@ trait ProductCollectionProvider {
|
||||
def getOrCreateProductCollection(collectionCode: String, productCodes: List[String]): Future[Box[List[ProductCollection]]]
|
||||
}
|
||||
|
||||
trait ProductCollection {
|
||||
def collectionCode: String
|
||||
def productCode: String
|
||||
}
|
||||
|
||||
class RemotedataProductCollectionCaseClasses {
|
||||
case class getProductCollection(collectionCode: String)
|
||||
case class getOrCreateProductCollection(collectionCode: String, productCodes: List[String])
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
package code.productcollectionitem
|
||||
|
||||
import code.productAttributeattribute.MappedProductAttribute
|
||||
import code.productattribute.ProductAttribute.ProductAttribute
|
||||
import code.products.MappedProduct
|
||||
import com.openbankproject.commons.model.{ProductAttribute, ProductCollectionItem}
|
||||
import net.liftweb.common.Box
|
||||
import net.liftweb.mapper._
|
||||
import net.liftweb.util.Helpers.tryo
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
package code.productcollectionitem
|
||||
|
||||
import code.api.util.APIUtil
|
||||
import code.productattribute.ProductAttribute.ProductAttribute
|
||||
import code.products.MappedProduct
|
||||
import code.remotedata.RemotedataProductCollectionItem
|
||||
import com.openbankproject.commons.model.{ProductAttribute, ProductCollectionItem}
|
||||
import net.liftweb.common.Box
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
@ -27,11 +27,6 @@ trait ProductCollectionItemProvider {
|
||||
def getOrCreateProductCollectionItem(collectionCode: String, memberProductCodes: List[String]): Future[Box[List[ProductCollectionItem]]]
|
||||
}
|
||||
|
||||
trait ProductCollectionItem {
|
||||
def collectionCode: String
|
||||
def memberProductCode: String
|
||||
}
|
||||
|
||||
class RemotedataProductCollectionItemCaseClasses {
|
||||
case class getProductCollectionItemsTree(collectionCode: String, bankId: String)
|
||||
case class getProductCollectionItems(collectionCode: String)
|
||||
|
||||
@ -1,9 +1,8 @@
|
||||
package code.products
|
||||
|
||||
import code.common.{License, Meta}
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.products.Products.Product
|
||||
import code.util.UUIDString
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model.{BankId, License, Meta, ProductCode}
|
||||
import net.liftweb.mapper._
|
||||
|
||||
|
||||
|
||||
@ -4,21 +4,13 @@ package code.products
|
||||
|
||||
// Need to import these one by one because in same package!
|
||||
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.common.{Address, LocationT, Meta}
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import code.products.Products.Product
|
||||
import com.openbankproject.commons.model.{BankId, Meta, ProductCode}
|
||||
import net.liftweb.common.Logger
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
object Products extends SimpleInjector {
|
||||
|
||||
// Good to have this as a class because when passing as argument, we get compiler error if passing the wrong type.
|
||||
case class ProductCode(value : String)
|
||||
|
||||
object ProductCode {
|
||||
def unapply(code : String) = Some(ProductCode(code))
|
||||
}
|
||||
|
||||
trait Product {
|
||||
def code : ProductCode
|
||||
def parentProductCode : ProductCode
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
package code.remotedata
|
||||
|
||||
import akka.pattern.ask
|
||||
import code.accountapplication.{AccountApplication, AccountApplicationProvider, RemotedataAccountApplicationCaseClasses}
|
||||
import code.accountapplication.{AccountApplicationProvider, RemotedataAccountApplicationCaseClasses}
|
||||
import code.actorsystem.ObpActorInit
|
||||
import code.products.Products.ProductCode
|
||||
import com.openbankproject.commons.model.{AccountApplication, ProductCode}
|
||||
import net.liftweb.common.Box
|
||||
|
||||
import scala.concurrent.Future
|
||||
|
||||
@ -3,9 +3,10 @@ package code.remotedata
|
||||
import akka.actor.Actor
|
||||
import code.accountapplication.{MappedAccountApplicationProvider, RemotedataAccountApplicationCaseClasses}
|
||||
import code.actorsystem.ObpActorHelper
|
||||
import code.products.Products.ProductCode
|
||||
import code.util.Helper.MdcLoggable
|
||||
import akka.pattern.pipe
|
||||
import com.openbankproject.commons.model.ProductCode
|
||||
|
||||
import scala.concurrent.ExecutionContext.Implicits.global
|
||||
|
||||
class RemotedataAccountApplicationActor extends Actor with ObpActorHelper with MdcLoggable {
|
||||
|
||||
@ -1,11 +1,9 @@
|
||||
package code.remotedata
|
||||
|
||||
import akka.pattern.ask
|
||||
import code.accountattribute.AccountAttribute.{AccountAttribute, AccountAttributeType}
|
||||
import code.accountattribute.{AccountAttributeProvider, RemotedataAccountAttributeCaseClasses}
|
||||
import code.actorsystem.ObpActorInit
|
||||
import code.products.Products.ProductCode
|
||||
import com.openbankproject.commons.model.{AccountId, BankId}
|
||||
import com.openbankproject.commons.model._
|
||||
import net.liftweb.common.Box
|
||||
|
||||
import scala.collection.immutable.List
|
||||
|
||||
@ -2,12 +2,10 @@ package code.remotedata
|
||||
|
||||
import akka.actor.Actor
|
||||
import akka.pattern.pipe
|
||||
import code.accountattribute.AccountAttribute.AccountAttributeType
|
||||
import code.accountattribute.{MappedAccountAttributeProvider, RemotedataAccountAttributeCaseClasses}
|
||||
import code.actorsystem.ObpActorHelper
|
||||
import code.products.Products.ProductCode
|
||||
import code.util.Helper.MdcLoggable
|
||||
import com.openbankproject.commons.model.{AccountId, BankId}
|
||||
import com.openbankproject.commons.model.{AccountAttributeType, AccountId, BankId, ProductCode}
|
||||
|
||||
import scala.concurrent.ExecutionContext.Implicits.global
|
||||
|
||||
|
||||
@ -2,7 +2,8 @@ package code.remotedata
|
||||
|
||||
import akka.pattern.ask
|
||||
import code.actorsystem.ObpActorInit
|
||||
import code.customeraddress.{CustomerAddress, CustomerAddressProvider, RemotedataCustomerAddressCaseClasses}
|
||||
import code.customeraddress.{CustomerAddressProvider, RemotedataCustomerAddressCaseClasses}
|
||||
import com.openbankproject.commons.model.CustomerAddress
|
||||
import net.liftweb.common.Box
|
||||
|
||||
import scala.collection.immutable.List
|
||||
|
||||
@ -2,10 +2,8 @@ package code.remotedata
|
||||
|
||||
import akka.pattern.ask
|
||||
import code.actorsystem.ObpActorInit
|
||||
import code.productattribute.ProductAttribute.{ProductAttribute, ProductAttributeType}
|
||||
import code.productattribute.{ProductAttribute, ProductAttributeProvider, RemotedataProductAttributeCaseClasses}
|
||||
import code.products.Products.ProductCode
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import code.productattribute.{ProductAttributeProvider, RemotedataProductAttributeCaseClasses}
|
||||
import com.openbankproject.commons.model.{BankId, ProductAttribute, ProductAttributeType, ProductCode}
|
||||
import net.liftweb.common.Box
|
||||
|
||||
import scala.collection.immutable.List
|
||||
|
||||
@ -4,11 +4,9 @@ import akka.actor.Actor
|
||||
import akka.pattern.pipe
|
||||
import code.actorsystem.ObpActorHelper
|
||||
import code.productAttributeattribute.MappedProductAttributeProvider
|
||||
import code.productattribute.ProductAttribute.ProductAttributeType
|
||||
import code.productattribute.RemotedataProductAttributeCaseClasses
|
||||
import code.products.Products.ProductCode
|
||||
import code.util.Helper.MdcLoggable
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model.{BankId, ProductAttributeType, ProductCode}
|
||||
|
||||
import scala.concurrent.ExecutionContext.Implicits.global
|
||||
|
||||
|
||||
@ -2,7 +2,8 @@ package code.remotedata
|
||||
|
||||
import akka.pattern.ask
|
||||
import code.actorsystem.ObpActorInit
|
||||
import code.productcollection.{ProductCollection, ProductCollectionProvider, RemotedataProductCollectionCaseClasses}
|
||||
import code.productcollection.{ProductCollectionProvider, RemotedataProductCollectionCaseClasses}
|
||||
import com.openbankproject.commons.model.ProductCollection
|
||||
import net.liftweb.common.Box
|
||||
|
||||
import scala.collection.immutable.List
|
||||
|
||||
@ -2,9 +2,9 @@ package code.remotedata
|
||||
|
||||
import akka.pattern.ask
|
||||
import code.actorsystem.ObpActorInit
|
||||
import code.productattribute.ProductAttribute.ProductAttribute
|
||||
import code.productcollectionitem.{ProductCollectionItem, ProductCollectionItemProvider, RemotedataProductCollectionItemCaseClasses}
|
||||
import code.productcollectionitem.{ProductCollectionItemProvider, RemotedataProductCollectionItemCaseClasses}
|
||||
import code.products.MappedProduct
|
||||
import com.openbankproject.commons.model.{ProductAttribute, ProductCollectionItem}
|
||||
import net.liftweb.common.Box
|
||||
|
||||
import scala.collection.immutable.List
|
||||
|
||||
@ -2,7 +2,8 @@ package code.remotedata
|
||||
|
||||
import akka.pattern.ask
|
||||
import code.actorsystem.ObpActorInit
|
||||
import code.taxresidence.{RemotedataTaxResidenceCaseClasses, TaxResidence, TaxResidenceProvider}
|
||||
import code.taxresidence.{RemotedataTaxResidenceCaseClasses, TaxResidenceProvider}
|
||||
import com.openbankproject.commons.model.TaxResidence
|
||||
import net.liftweb.common.Box
|
||||
|
||||
import scala.collection.immutable.List
|
||||
|
||||
@ -2,7 +2,8 @@ package code.remotedata
|
||||
|
||||
import akka.pattern.ask
|
||||
import code.actorsystem.ObpActorInit
|
||||
import code.context.{RemotedataUserAuthContextCaseClasses, UserAuthContext, UserAuthContextProvider}
|
||||
import code.context.{RemotedataUserAuthContextCaseClasses, UserAuthContextProvider}
|
||||
import com.openbankproject.commons.model.UserAuthContext
|
||||
import net.liftweb.common.Box
|
||||
|
||||
import scala.collection.immutable.List
|
||||
|
||||
@ -6,14 +6,12 @@ import java.util.UUID
|
||||
import code.accountholders.AccountHolders
|
||||
import code.api.util.APIUtil._
|
||||
import code.api.util.{APIUtil, ErrorMessages}
|
||||
import code.atms.Atms.AtmT
|
||||
import code.bankconnectors.Connector
|
||||
import code.branches.Branches.BranchT
|
||||
import code.crm.CrmEvent.CrmEvent
|
||||
import code.model._
|
||||
import code.model.dataAccess.ResourceUser
|
||||
import code.products.Products
|
||||
import code.products.Products.{Product, ProductCode}
|
||||
import code.products.Products.{Product}
|
||||
import code.users.Users
|
||||
import code.util.Helper
|
||||
import code.util.Helper.MdcLoggable
|
||||
|
||||
@ -3,6 +3,7 @@ package code.taxresidence
|
||||
import code.api.util.ErrorMessages
|
||||
import code.customer.MappedCustomer
|
||||
import code.util.{MappedUUID, MediumString}
|
||||
import com.openbankproject.commons.model.TaxResidence
|
||||
import net.liftweb.common.{Box, Empty, Failure, Full}
|
||||
import net.liftweb.mapper._
|
||||
import net.liftweb.util.Helpers.tryo
|
||||
|
||||
@ -2,6 +2,7 @@ package code.taxresidence
|
||||
|
||||
import code.api.util.APIUtil
|
||||
import code.remotedata.RemotedataTaxResidence
|
||||
import com.openbankproject.commons.model.TaxResidence
|
||||
import net.liftweb.common.Box
|
||||
import net.liftweb.util.SimpleInjector
|
||||
|
||||
@ -24,13 +25,6 @@ trait TaxResidenceProvider {
|
||||
def deleteTaxResidence(taxResidenceId: String): Future[Box[Boolean]]
|
||||
}
|
||||
|
||||
trait TaxResidence {
|
||||
def customerId: Long
|
||||
def taxResidenceId: String
|
||||
def domain: String
|
||||
def taxNumber: String
|
||||
}
|
||||
|
||||
|
||||
class RemotedataTaxResidenceCaseClasses {
|
||||
case class getTaxResidence(customerId: String)
|
||||
|
||||
@ -3,11 +3,11 @@ package code.transactionrequests
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.v2_1_0.{TransactionRequestBodyCounterpartyJSON, TransactionRequestBodySEPAJSON, TransactionRequestBodySandBoxTanJSON, TransactionRequestCommonBodyJSON}
|
||||
import code.bankconnectors.Connector
|
||||
import code.metadata.counterparties.MappedCounterparty
|
||||
|
||||
import code.model._
|
||||
import code.transactionrequests.TransactionRequests.{TransactionRequestTypes, _}
|
||||
import code.util.{AccountIdString, UUIDString}
|
||||
import com.openbankproject.commons.model.{TransactionRequestStatus => _, _}
|
||||
import com.openbankproject.commons.model._
|
||||
import net.liftweb.common.{Box, Failure, Full, Logger}
|
||||
import net.liftweb.json
|
||||
import net.liftweb.json.JsonAST.{JField, JObject, JString}
|
||||
|
||||
@ -3,11 +3,9 @@ package code.api.v1_4_0
|
||||
import code.api.util.APIUtil.OAuth._
|
||||
import code.api.util.OBPQueryParam
|
||||
import code.api.v1_4_0.JSONFactory1_4_0.{AtmJson, AtmsJson}
|
||||
import code.atms.Atms.{AtmId, AtmT}
|
||||
import code.atms.{Atms, AtmsProvider}
|
||||
import code.common.{AddressT, LicenseT, LocationT, MetaT}
|
||||
import code.setup.DefaultUsers
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model.{LicenseT, _}
|
||||
|
||||
class AtmsTest extends V140ServerSetup with DefaultUsers {
|
||||
|
||||
|
||||
@ -3,11 +3,9 @@ package code.api.v1_4_0
|
||||
import code.api.util.APIUtil.OAuth._
|
||||
import code.api.util.OBPQueryParam
|
||||
import code.api.v1_4_0.JSONFactory1_4_0.{BranchJson, BranchesJson}
|
||||
import code.branches.Branches.{BranchId, BranchT, DriveUp, DriveUpStringT, Lobby, LobbyStringT}
|
||||
import code.branches.{Branches, BranchesProvider}
|
||||
import code.common._
|
||||
import code.setup.DefaultUsers
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model._
|
||||
|
||||
/*
|
||||
Note This does not test retrieval from a backend.
|
||||
|
||||
@ -2,13 +2,10 @@ package code.api.v1_4_0
|
||||
|
||||
import code.api.util.APIUtil.OAuth._
|
||||
import code.api.v1_4_0.JSONFactory1_4_0.{ProductJson, ProductsJson}
|
||||
import code.common.{License, LicenseT, Meta, MetaT}
|
||||
import code.products.Products.ProductCode
|
||||
import code.products.Products.Product
|
||||
import code.products.{Products, ProductsProvider}
|
||||
import code.setup.{DefaultUsers, ServerSetup}
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import dispatch._
|
||||
import com.openbankproject.commons.model.{BankId, License, Meta, ProductCode}
|
||||
|
||||
class ProductsTest extends ServerSetup with DefaultUsers with V140ServerSetup {
|
||||
|
||||
|
||||
@ -4,9 +4,8 @@ import code.api.util.APIUtil.OAuth._
|
||||
import code.api.util.ApiRole
|
||||
import code.api.util.ApiRole.CanCreateBranch
|
||||
import code.api.v1_4_0.JSONFactory1_4_0._
|
||||
import code.branches.Branches.BranchId
|
||||
import code.setup.DefaultUsers
|
||||
import com.openbankproject.commons.model.{AccountId, ViewId}
|
||||
import com.openbankproject.commons.model.{AccountId, BranchId, ViewId}
|
||||
import net.liftweb.json.JsonAST.JString
|
||||
import net.liftweb.json.Serialization.write
|
||||
|
||||
|
||||
@ -6,13 +6,12 @@ import code.api.util.ApiRole.CanDeleteBranchAtAnyBank
|
||||
import code.api.util.{ApiVersion, ErrorMessages, OBPQueryParam}
|
||||
import code.api.v3_1_0.OBPAPI3_1_0
|
||||
import code.bankconnectors.Connector
|
||||
import code.branches.Branches._
|
||||
import code.branches.Branches.Branch
|
||||
import code.branches.{Branches, BranchesProvider}
|
||||
import code.common._
|
||||
import code.entitlement.Entitlement
|
||||
import code.setup.DefaultUsers
|
||||
import com.github.dwickern.macros.NameOf.nameOf
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model._
|
||||
import org.scalatest.Tag
|
||||
|
||||
/*
|
||||
|
||||
@ -1,9 +1,8 @@
|
||||
package code.atms
|
||||
|
||||
import code.api.util.OBPLimit
|
||||
import code.atms.Atms.AtmT
|
||||
import code.setup.ServerSetup
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model.{AtmT, BankId}
|
||||
import net.liftweb.mapper.By
|
||||
|
||||
class MappedAtmsProviderTest extends ServerSetup {
|
||||
|
||||
@ -1,9 +1,8 @@
|
||||
package code.branches
|
||||
|
||||
import code.api.util.OBPLimit
|
||||
import code.branches.Branches.BranchT
|
||||
import code.setup.ServerSetup
|
||||
import com.openbankproject.commons.model.BankId
|
||||
import com.openbankproject.commons.model.{BankId, BranchT}
|
||||
import net.liftweb.mapper.By
|
||||
|
||||
class MappedBranchesProviderTest extends ServerSetup {
|
||||
|
||||
@ -1,8 +1,5 @@
|
||||
package code.customer
|
||||
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.{Date, UUID}
|
||||
|
||||
import code.api.util.APIUtil.OAuth._
|
||||
import code.api.util.{APIUtil, ApiRole}
|
||||
import code.api.v1_4_0.JSONFactory1_4_0.CustomerFaceImageJson
|
||||
|
||||
@ -30,24 +30,23 @@ import java.util.Date
|
||||
|
||||
import bootstrap.liftweb.ToSchemify
|
||||
import code.TestServer
|
||||
import code.api.util.{APIUtil, OBPLimit}
|
||||
import code.api.util.APIUtil._
|
||||
import code.api.util.ErrorMessages._
|
||||
import code.api.util.{APIUtil, OBPLimit}
|
||||
import code.atms.Atms
|
||||
import code.atms.Atms.{AtmId, AtmT, countOfAtms}
|
||||
import code.atms.Atms.countOfAtms
|
||||
import code.bankconnectors.Connector
|
||||
import code.branches.Branches
|
||||
import code.branches.Branches.{BranchId, BranchT, countOfBranches}
|
||||
import code.crm.CrmEvent
|
||||
import code.crm.CrmEvent.{CrmEvent, CrmEventId}
|
||||
import code.model._
|
||||
import code.model.dataAccess._
|
||||
import code.products.Products
|
||||
import code.products.Products.{Product, ProductCode, countOfProducts}
|
||||
import code.products.Products.{Product, countOfProducts}
|
||||
import code.setup.{APIResponse, SendServerRequests}
|
||||
import code.users.Users
|
||||
import code.views.Views
|
||||
import com.openbankproject.commons.model.{AccountId, BankId, BankIdAccountId, TransactionId}
|
||||
import com.openbankproject.commons.model._
|
||||
import dispatch._
|
||||
import net.liftweb.common.{Empty, ParamFailure}
|
||||
import net.liftweb.json.JsonAST.{JObject, JValue}
|
||||
@ -1698,7 +1697,7 @@ class SandboxDataLoadingTest extends FlatSpec with SendServerRequests with Match
|
||||
val existingBranches: Option[List[BranchT]] = Branches.branchesProvider.vend.getBranches(bankId1)
|
||||
|
||||
// We want the size of the list inside the Option
|
||||
val existingBranchesCount = countOfBranches(existingBranches)
|
||||
val existingBranchesCount = Branches.countOfBranches(existingBranches)
|
||||
existingBranchesCount should equal (0)
|
||||
|
||||
// Check creation succeeds
|
||||
@ -1706,7 +1705,7 @@ class SandboxDataLoadingTest extends FlatSpec with SendServerRequests with Match
|
||||
response.code should equal(SUCCESS)
|
||||
|
||||
// Check count after creation. Again counting the items in list, not the option
|
||||
val countBranchesAfter = countOfBranches(Branches.branchesProvider.vend.getBranches(bankId1))
|
||||
val countBranchesAfter = Branches.countOfBranches(Branches.branchesProvider.vend.getBranches(bankId1))
|
||||
countBranchesAfter should equal(standardBranches.size) // We expect N branches
|
||||
|
||||
// Check that for each branch we did indeed create something good
|
||||
|
||||
@ -1,22 +1,18 @@
|
||||
package com.openbankproject.commons.model
|
||||
|
||||
import java.util.Date
|
||||
import code.customeraddress.CustomerAddress
|
||||
import code.bankconnectors.InboundAccountCommon
|
||||
import code.branches.Branches.BranchT
|
||||
import com.openbankproject.commons.model.Customer
|
||||
import code.context.UserAuthContext
|
||||
import code.meetings.Meeting
|
||||
import code.taxresidence.TaxResidence
|
||||
import code.productcollectionitem.ProductCollectionItem
|
||||
import com.openbankproject.commons.model.Bank
|
||||
import code.productcollection.ProductCollection
|
||||
import com.openbankproject.commons.model.CounterpartyTrait
|
||||
import code.atms.Atms.AtmT
|
||||
import code.productattribute.ProductAttribute.ProductAttribute
|
||||
import code.accountattribute.AccountAttribute.AccountAttribute
|
||||
import com.openbankproject.commons.model.BankAccount
|
||||
import code.accountapplication.AccountApplication
|
||||
//import code.customeraddress.CustomerAddress
|
||||
//import code.bankconnectors.InboundAccountCommon
|
||||
//import code.branches.Branches.BranchT
|
||||
//import code.context.UserAuthContext
|
||||
//import code.meetings.Meeting
|
||||
//import code.taxresidence.TaxResidence
|
||||
//import code.productcollectionitem.ProductCollectionItem
|
||||
//import code.productcollection.ProductCollection
|
||||
//import code.atms.Atms.AtmT
|
||||
//import code.productattribute.ProductAttribute.ProductAttribute
|
||||
//import code.accountattribute.AccountAttribute.AccountAttribute
|
||||
//import code.accountapplication.AccountApplication
|
||||
|
||||
case class ProductAttributeCommons(
|
||||
bankId :BankId,
|
||||
@ -38,7 +34,7 @@ case class AccountAttributeCommons(
|
||||
productCode :ProductCode,
|
||||
accountAttributeId :String,
|
||||
name :String,
|
||||
attributeType :Value,
|
||||
attributeType : AccountAttributeType.Value,
|
||||
value :String) extends AccountAttribute
|
||||
|
||||
|
||||
@ -205,7 +201,7 @@ case class CounterpartyTraitCommons(
|
||||
otherBranchRoutingScheme :String,
|
||||
otherBranchRoutingAddress :String,
|
||||
isBeneficiary :Boolean,
|
||||
bespoke :List) extends CounterpartyTrait
|
||||
bespoke :List[CounterpartyBespoke]) extends CounterpartyTrait
|
||||
|
||||
|
||||
case class TaxResidenceCommons(
|
||||
|
||||
@ -0,0 +1,377 @@
|
||||
package com.openbankproject.commons.model
|
||||
|
||||
import java.util.Date
|
||||
|
||||
//--------- enums
|
||||
object AccountAttributeType extends Enumeration{
|
||||
type ProductAttributeType = Value
|
||||
val STRING = Value("STRING")
|
||||
|
||||
val INTEGER = Value("INTEGER")
|
||||
|
||||
val DOUBLE = Value("DOUBLE")
|
||||
|
||||
val DATE_WITH_DAY = Value("DATE_WITH_DAY")
|
||||
}
|
||||
|
||||
|
||||
object ProductAttributeType extends Enumeration{
|
||||
type ProductAttributeType = Value
|
||||
val STRING = Value("STRING")
|
||||
|
||||
val INTEGER = Value("INTEGER")
|
||||
|
||||
val DOUBLE = Value("DOUBLE")
|
||||
|
||||
val DATE_WITH_DAY = Value("DATE_WITH_DAY")
|
||||
}
|
||||
//-------------------
|
||||
|
||||
|
||||
trait AccountApplication {
|
||||
def accountApplicationId: String
|
||||
def productCode: ProductCode
|
||||
def userId: String
|
||||
def customerId: String
|
||||
def dateOfApplication: Date
|
||||
def status: String
|
||||
}
|
||||
|
||||
trait AccountAttribute {
|
||||
def bankId: BankId
|
||||
|
||||
def accountId: AccountId
|
||||
|
||||
def productCode: ProductCode
|
||||
|
||||
def accountAttributeId: String
|
||||
|
||||
def name: String
|
||||
|
||||
def attributeType: AccountAttributeType.Value
|
||||
|
||||
def value: String
|
||||
}
|
||||
|
||||
trait AtmT {
|
||||
def atmId: AtmId
|
||||
|
||||
def bankId: BankId
|
||||
|
||||
def name: String
|
||||
|
||||
def address: AddressT
|
||||
|
||||
def location: LocationT
|
||||
|
||||
def meta: MetaT
|
||||
|
||||
def OpeningTimeOnMonday: Option[String]
|
||||
|
||||
def ClosingTimeOnMonday: Option[String]
|
||||
|
||||
def OpeningTimeOnTuesday: Option[String]
|
||||
|
||||
def ClosingTimeOnTuesday: Option[String]
|
||||
|
||||
def OpeningTimeOnWednesday: Option[String]
|
||||
|
||||
def ClosingTimeOnWednesday: Option[String]
|
||||
|
||||
def OpeningTimeOnThursday: Option[String]
|
||||
|
||||
def ClosingTimeOnThursday: Option[String]
|
||||
|
||||
def OpeningTimeOnFriday: Option[String]
|
||||
|
||||
def ClosingTimeOnFriday: Option[String]
|
||||
|
||||
def OpeningTimeOnSaturday: Option[String]
|
||||
|
||||
def ClosingTimeOnSaturday: Option[String]
|
||||
|
||||
def OpeningTimeOnSunday: Option[String]
|
||||
|
||||
def ClosingTimeOnSunday: Option[String]
|
||||
|
||||
def isAccessible: Option[Boolean]
|
||||
|
||||
def locatedAt: Option[String]
|
||||
|
||||
def moreInfo: Option[String]
|
||||
|
||||
def hasDepositCapability: Option[Boolean]
|
||||
|
||||
}
|
||||
|
||||
// MappedBranch will implement this.
|
||||
// The trait defines the fields the API will interact with.
|
||||
|
||||
trait BranchT {
|
||||
def branchId: BranchId
|
||||
def bankId: BankId
|
||||
def name: String
|
||||
def address: Address
|
||||
def location: Location
|
||||
def lobbyString: Option[LobbyStringT]
|
||||
def driveUpString: Option[DriveUpStringT]
|
||||
def meta: Meta
|
||||
def branchRouting: Option[RoutingT]
|
||||
def lobby: Option[Lobby]
|
||||
def driveUp: Option[DriveUp]
|
||||
// Easy access for people who use wheelchairs etc. "Y"=true "N"=false ""=Unknown
|
||||
def isAccessible : Option[Boolean]
|
||||
def accessibleFeatures: Option[String]
|
||||
def branchType : Option[String]
|
||||
def moreInfo : Option[String]
|
||||
def phoneNumber : Option[String]
|
||||
// marks whether this branch is deleted
|
||||
def isDeleted : Option[Boolean]
|
||||
}
|
||||
|
||||
trait CustomerAddress {
|
||||
def customerId: String
|
||||
def customerAddressId: String
|
||||
def line1: String
|
||||
def line2: String
|
||||
def line3: String
|
||||
def city: String
|
||||
def county: String
|
||||
def state: String
|
||||
def postcode: String
|
||||
def countryCode: String
|
||||
def status: String
|
||||
def tags: String
|
||||
def insertDate: Date
|
||||
}
|
||||
|
||||
// This is the common InboundAccount from all Kafka/remote, not finished yet.
|
||||
trait InboundAccountCommon{
|
||||
def errorCode: String
|
||||
def bankId: String
|
||||
def branchId: String
|
||||
def accountId: String
|
||||
def accountNumber: String
|
||||
def accountType: String
|
||||
def balanceAmount: String
|
||||
def balanceCurrency: String
|
||||
def owners: List[String]
|
||||
def viewsToGenerate: List[String]
|
||||
def bankRoutingScheme:String
|
||||
def bankRoutingAddress:String
|
||||
def branchRoutingScheme:String
|
||||
def branchRoutingAddress:String
|
||||
def accountRoutingScheme:String
|
||||
def accountRoutingAddress:String
|
||||
}
|
||||
|
||||
trait Meeting {
|
||||
def meetingId: String
|
||||
def providerId: String
|
||||
def purposeId: String
|
||||
def bankId: String
|
||||
def present: MeetingPresent
|
||||
def keys: MeetingKeys
|
||||
def when: Date
|
||||
def creator: ContactDetails
|
||||
def invitees: List[Invitee]
|
||||
}
|
||||
|
||||
trait ProductAttribute {
|
||||
def bankId: BankId
|
||||
|
||||
def productCode: ProductCode
|
||||
|
||||
def productAttributeId: String
|
||||
|
||||
def name: String
|
||||
|
||||
def attributeType: ProductAttributeType.Value
|
||||
|
||||
def value: String
|
||||
}
|
||||
|
||||
|
||||
trait ProductCollection {
|
||||
def collectionCode: String
|
||||
def productCode: String
|
||||
}
|
||||
|
||||
|
||||
trait ProductCollectionItem {
|
||||
def collectionCode: String
|
||||
def memberProductCode: String
|
||||
}
|
||||
|
||||
trait TaxResidence {
|
||||
def customerId: Long
|
||||
def taxResidenceId: String
|
||||
def domain: String
|
||||
def taxNumber: String
|
||||
}
|
||||
|
||||
trait UserAuthContext {
|
||||
def userAuthContextId : String
|
||||
def userId : String
|
||||
def key : String
|
||||
def value : String
|
||||
}
|
||||
|
||||
|
||||
trait AddressT {
|
||||
def line1 : String
|
||||
def line2 : String
|
||||
def line3 : String
|
||||
def city : String
|
||||
def county : Option[String]
|
||||
def state : String
|
||||
def postCode : String
|
||||
//ISO_3166-1_alpha-2
|
||||
def countryCode : String
|
||||
}
|
||||
|
||||
trait LocationT {
|
||||
def latitude: Double
|
||||
def longitude: Double
|
||||
}
|
||||
|
||||
trait MetaT {
|
||||
def license : LicenseT
|
||||
}
|
||||
|
||||
|
||||
trait LicenseT {
|
||||
def id : String
|
||||
def name : String
|
||||
}
|
||||
|
||||
@deprecated("Use Lobby instead which contains detailed fields, not this string","24 July 2017")
|
||||
trait LobbyStringT {
|
||||
def hours : String
|
||||
}
|
||||
|
||||
|
||||
@deprecated("Use DriveUp instead which contains detailed fields now, not this string","24 July 2017")
|
||||
trait DriveUpStringT {
|
||||
def hours : String
|
||||
}
|
||||
|
||||
|
||||
trait RoutingT {
|
||||
def scheme: String
|
||||
def address: String
|
||||
}
|
||||
|
||||
//---------------------------------------- trait dependents of case class
|
||||
|
||||
|
||||
case class BranchId(value : String) {
|
||||
override def toString = value
|
||||
}
|
||||
|
||||
object BranchId {
|
||||
def unapply(id : String) = Some(BranchId(id))
|
||||
}
|
||||
|
||||
case class Address(
|
||||
line1 : String,
|
||||
line2 : String,
|
||||
line3 : String,
|
||||
city : String,
|
||||
county : Option[String],
|
||||
state : String,
|
||||
postCode : String,
|
||||
//ISO_3166-1_alpha-2
|
||||
countryCode : String) extends AddressT
|
||||
|
||||
|
||||
case class MeetingPresent(
|
||||
staffUserId: String,
|
||||
customerUserId: String
|
||||
)
|
||||
|
||||
|
||||
case class Location(
|
||||
latitude: Double,
|
||||
longitude: Double,
|
||||
date : Option[Date],
|
||||
user: Option[BasicResourceUser]
|
||||
) extends LocationT
|
||||
|
||||
/*
|
||||
Basic User data
|
||||
*/
|
||||
case class BasicResourceUser(
|
||||
userId: String, // Should come from Resource User Id
|
||||
provider: String,
|
||||
username: String
|
||||
)
|
||||
|
||||
|
||||
case class Meta (
|
||||
license : License
|
||||
) extends MetaT
|
||||
|
||||
|
||||
|
||||
case class License (
|
||||
id : String,
|
||||
name : String
|
||||
) extends LicenseT
|
||||
|
||||
case class Lobby(
|
||||
monday: List[OpeningTimes],
|
||||
tuesday: List[OpeningTimes],
|
||||
wednesday: List[OpeningTimes],
|
||||
thursday: List[OpeningTimes],
|
||||
friday: List[OpeningTimes],
|
||||
saturday: List[OpeningTimes],
|
||||
sunday: List[OpeningTimes]
|
||||
)
|
||||
|
||||
case class OpeningTimes(
|
||||
openingTime: String,
|
||||
closingTime: String
|
||||
)
|
||||
|
||||
case class DriveUp(
|
||||
monday: OpeningTimes,
|
||||
tuesday: OpeningTimes,
|
||||
wednesday: OpeningTimes,
|
||||
thursday: OpeningTimes,
|
||||
friday: OpeningTimes,
|
||||
saturday: OpeningTimes,
|
||||
sunday: OpeningTimes
|
||||
)
|
||||
|
||||
case class MeetingKeys (
|
||||
sessionId: String,
|
||||
customerToken: String,
|
||||
staffToken: String
|
||||
)
|
||||
|
||||
case class ContactDetails(
|
||||
name: String,
|
||||
phone: String,
|
||||
email: String
|
||||
)
|
||||
|
||||
case class Invitee(
|
||||
contactDetails: ContactDetails,
|
||||
status: String
|
||||
)
|
||||
// Good to have this as a class because when passing as argument, we get compiler error if passing the wrong type.
|
||||
|
||||
case class ProductCode(value : String)
|
||||
|
||||
object ProductCode {
|
||||
def unapply(code : String) = Some(ProductCode(code))
|
||||
}
|
||||
|
||||
case class AtmId(value : String){
|
||||
override def toString() = value
|
||||
}
|
||||
|
||||
object AtmId {
|
||||
def unapply(id : String) = Some(AtmId(id))
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user