add locationGroup to tenant

This commit is contained in:
gowthaman.b 2024-03-20 14:14:52 +05:30
parent 932657c2b2
commit 38c6a32114

View File

@ -75,32 +75,57 @@ object Auth {
val roles = ((jwtClaims.jwtClaims.claimsMap["realm_access"] as Map<String, Any>)["roles"]) as List<String>
val date = Date(jwtClaims.jwtClaims.expirationTime.valueInMillis)
try {
HttpClients.createDefault().use { h ->
//sync plant's from rmc to here, just name and id
for (plantId in plantIds) {
try {
HttpClients.createDefault().use { h ->
//sync plant's from rmc to here, just name and id
for (plantId in plantIds) {
val existing = Session.database.find(Plant::class.java).where().eq("plantId", plantId).findOne()
if (existing == null) {
h.execute(HttpGet("${appConfig.integrationRmc()}/plant?id=${plantId}")).use { r ->
if (r.statusLine.statusCode == 200) {
Session.database.save(Plant().apply {
this.plantId = plantId
this.plantName = EntityUtils.toString(r.entity)
})
}
}
}
}
}
} catch (e: Exception) {
logger.warn("Exception in syncing plants", e)
}
val existing = Session.database.find(Plant::class.java).where().eq("plantId", plantId).findOne()
if (existing == null) {
h.execute(HttpGet("${appConfig.integrationRmc()}/plant?id=${plantId}")).use { r ->
if (r.statusLine.statusCode == 200) {
Session.database.save(Plant().apply {
this.plantId = plantId
this.plantName = EntityUtils.toString(r.entity)
})
}
}
}
}
}
}catch (e: Exception){
logger.warn("Exception in syncing plants", e)
}
return AuthUser(
userName = userId, tenant = tenant, roles = roles, token = authToken, expiry = LocalDateTime.from(date.toInstant().atZone(ZoneId.systemDefault())), plantIds = plantIds
userName = userId,
tenant = getTenantWithCompany(userId, tenant),
roles = roles,
token = authToken,
expiry = LocalDateTime.from(date.toInstant().atZone(ZoneId.systemDefault())),
plantIds = plantIds
)
}
private fun getTenantWithCompany(userId: String, tenant: String): String {
try {
HttpClients.createDefault().use { h ->
//sync plant's from rmc to here, just name and id
h.execute(HttpGet("${appConfig.integrationRmc()}/tenant?id=${userId}")).use { r ->
if (r.statusLine.statusCode == 200) {
return "$tenant${EntityUtils.toString(r.entity)}"
}
}
}
} catch (e: Exception) {
logger.warn("Exception in syncing plants", e)
}
return tenant
}
fun keys(ctx: Context) {
ctx.json(Session.jwk())
}