Skip to content

Commit

Permalink
feature/Tweak endpoint updateConsumerRedirectUrl v5.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
constantine2nd committed Dec 1, 2023
1 parent 6145af4 commit f9e5cc6
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 3 deletions.
2 changes: 1 addition & 1 deletion obp-api/src/main/scala/code/api/v5_1_0/APIMethods510.scala
Original file line number Diff line number Diff line change
Expand Up @@ -1815,7 +1815,7 @@ trait APIMethods510 {
//update the redirectURL and isactive (set to false when change redirectUrl) field in consumer table
updatedConsumer <- NewStyle.function.updateConsumer(consumer.id.get, None, None, Some(APIUtil.getPropsAsBoolValue("consumers_enabled_by_default", false)), None, None, None, None, Some(postJson.redirect_url), None, callContext)
} yield {
val json = JSONFactory210.createConsumerJSON(updatedConsumer)
val json = JSONFactory510.createConsumerJSON(updatedConsumer)
(json, HttpCode.`200`(callContext))
}
}
Expand Down
44 changes: 42 additions & 2 deletions obp-api/src/main/scala/code/api/v5_1_0/JSONFactory5.1.0.scala
Original file line number Diff line number Diff line change
Expand Up @@ -30,20 +30,22 @@ import code.api.Constant
import code.api.util.{APIUtil, ConsentJWT, CustomJsonFormats, JwtUtil, Role}
import code.api.util.APIUtil.gitCommit
import code.api.v1_4_0.JSONFactory1_4_0.{LocationJsonV140, MetaJsonV140, transformToLocationFromV140, transformToMetaFromV140}
import code.api.v2_1_0.ResourceUserJSON
import code.api.v3_0_0.JSONFactory300.{createLocationJson, createMetaJson, transformToAddressFromV300}
import code.api.v3_0_0.{AccountIdJson, AccountsIdsJsonV300, AddressJsonV300, OpeningTimesV300}
import code.api.v4_0_0.{EnergySource400, HostedAt400, HostedBy400}
import code.atmattribute.AtmAttribute
import code.atms.Atms.Atm
import code.users.UserAttribute
import code.users.{UserAttribute, Users}
import code.views.system.{AccountAccess, ViewDefinition}
import com.openbankproject.commons.model.{Address, AtmId, AtmT, BankId, BankIdAccountId, Customer, Location, Meta, RegulatedEntityTrait}
import com.openbankproject.commons.util.{ApiVersion, ScannedApiVersion}

import java.util.Date
import code.consent.MappedConsent
import code.metrics.APIMetric
import net.liftweb.common.Box
import code.model.Consumer
import net.liftweb.common.{Box, Full}
import net.liftweb.json
import net.liftweb.json.{JValue, parse}

Expand Down Expand Up @@ -279,6 +281,18 @@ case class MetricJsonV510(
)
case class MetricsJsonV510(metrics: List[MetricJsonV510])

case class ConsumerJsonV510(consumer_id: String,
app_name: String,
app_type: String,
description: String,
developer_email: String,
redirect_url: String,
created_by_user_id: String,
created_by_user: ResourceUserJSON,
enabled: Boolean,
created: Date
)

object JSONFactory510 extends CustomJsonFormats {

def createCustomersIds(customers : List[Customer]): CustomersIdsJsonV510 =
Expand Down Expand Up @@ -606,6 +620,32 @@ object JSONFactory510 extends CustomJsonFormats {
MetricsJsonV510(metrics.map(createMetricJson))
}

def createConsumerJSON(c: Consumer): ConsumerJsonV510 = {

val resourceUserJSON = Users.users.vend.getUserByUserId(c.createdByUserId.toString()) match {
case Full(resourceUser) => ResourceUserJSON(
user_id = resourceUser.userId,
email = resourceUser.emailAddress,
provider_id = resourceUser.idGivenByProvider,
provider = resourceUser.provider,
username = resourceUser.name
)
case _ => null
}

ConsumerJsonV510(consumer_id = c.consumerId.get,
app_name = c.name.get,
app_type = c.appType.toString(),
description = c.description.get,
developer_email = c.developerEmail.get,
redirect_url = c.redirectURL.get,
created_by_user_id = c.createdByUserId.get,
created_by_user = resourceUserJSON,
enabled = c.isActive.get,
created = c.createdAt.get
)
}


}

0 comments on commit f9e5cc6

Please sign in to comment.