Skip to content

Commit

Permalink
Bump Exposed til 0.46.0 (#406)
Browse files Browse the repository at this point in the history
  • Loading branch information
bjerga authored Jan 29, 2024
1 parent 6faad2e commit 50a3198
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 49 deletions.
2 changes: 1 addition & 1 deletion db/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Dependency versions
exposedVersion=0.45.0
exposedVersion=0.46.0
flywayVersion=10.6.0
hikariVersion=5.1.0
postgresqlVersion=42.7.1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import org.jetbrains.exposed.sql.Query
import org.jetbrains.exposed.sql.SortOrder
import org.jetbrains.exposed.sql.and
import org.jetbrains.exposed.sql.insert
import org.jetbrains.exposed.sql.select
import org.jetbrains.exposed.sql.selectAll
import org.jetbrains.exposed.sql.transactions.transaction
import org.jetbrains.exposed.sql.update
import java.util.UUID
Expand Down Expand Up @@ -42,7 +42,9 @@ class AapenImRepo(private val db: Database) {
transaction(db) {
AapenInntektsmeldingEntitet.update(
where = {
(AapenInntektsmeldingEntitet.id eqSubQuery hentNyesteImQuery(aapenId).adjustSlice { slice(AapenInntektsmeldingEntitet.id) }) and
val nyesteImIdQuery = hentNyesteImQuery(aapenId).adjustSelect { select(AapenInntektsmeldingEntitet.id) }

(AapenInntektsmeldingEntitet.id eqSubQuery nyesteImIdQuery) and
AapenInntektsmeldingEntitet.journalpostId.isNull()
}
) {
Expand All @@ -55,8 +57,7 @@ class AapenImRepo(private val db: Database) {

private fun hentNyesteImQuery(aapenId: UUID): Query =
AapenInntektsmeldingEntitet
.select {
AapenInntektsmeldingEntitet.aapenId eq aapenId
}
.selectAll()
.where { AapenInntektsmeldingEntitet.aapenId eq aapenId }
.orderBy(AapenInntektsmeldingEntitet.opprettet, SortOrder.DESC)
.limit(1)
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import no.nav.helsearbeidsgiver.inntektsmelding.db.tabell.ForespoerselEntitet
import org.jetbrains.exposed.sql.Database
import org.jetbrains.exposed.sql.and
import org.jetbrains.exposed.sql.insert
import org.jetbrains.exposed.sql.select
import org.jetbrains.exposed.sql.selectAll
import org.jetbrains.exposed.sql.transactions.transaction
import org.jetbrains.exposed.sql.update
import java.time.LocalDateTime
Expand All @@ -23,7 +23,12 @@ class ForespoerselRepository(private val db: Database) {
fun oppdaterOppgaveId(forespoerselId: String, oppgaveId: String) {
val requestTimer = requestLatency.labels("oppdaterOppgaveId").startTimer()
transaction(db) {
ForespoerselEntitet.update({ (ForespoerselEntitet.forespoerselId eq forespoerselId) and (ForespoerselEntitet.oppgaveId eq null) }) {
ForespoerselEntitet.update(
where = {
(ForespoerselEntitet.forespoerselId eq forespoerselId) and
ForespoerselEntitet.oppgaveId.isNull()
}
) {
it[ForespoerselEntitet.oppgaveId] = oppgaveId
}
}.also {
Expand All @@ -34,7 +39,12 @@ class ForespoerselRepository(private val db: Database) {
fun oppdaterSakId(forespoerselId: String, sakId: String) {
val requestTimer = requestLatency.labels("oppdaterSakId").startTimer()
transaction(db) {
ForespoerselEntitet.update({ (ForespoerselEntitet.forespoerselId eq forespoerselId) and (ForespoerselEntitet.sakId eq null) }) {
ForespoerselEntitet.update(
where = {
(ForespoerselEntitet.forespoerselId eq forespoerselId) and
ForespoerselEntitet.sakId.isNull()
}
) {
it[ForespoerselEntitet.sakId] = sakId
}
}.also {
Expand All @@ -45,9 +55,9 @@ class ForespoerselRepository(private val db: Database) {
fun hentOppgaveId(forespoerselId: UUID): String? {
val requestTimer = requestLatency.labels("hentOppgaveId").startTimer()
return transaction(db) {
ForespoerselEntitet.select {
ForespoerselEntitet.forespoerselId eq forespoerselId.toString()
}
ForespoerselEntitet
.selectAll()
.where { ForespoerselEntitet.forespoerselId eq forespoerselId.toString() }
.firstOrNull(ForespoerselEntitet.oppgaveId)
}.also {
requestTimer.observeDuration()
Expand All @@ -57,9 +67,9 @@ class ForespoerselRepository(private val db: Database) {
fun hentSakId(forespoerselId: UUID): String? {
val requestTimer = requestLatency.labels("hentSakId").startTimer()
return transaction(db) {
ForespoerselEntitet.select {
ForespoerselEntitet.forespoerselId eq forespoerselId.toString()
}
ForespoerselEntitet
.selectAll()
.where { ForespoerselEntitet.forespoerselId eq forespoerselId.toString() }
.firstOrNull(ForespoerselEntitet.sakId)
}.also {
requestTimer.observeDuration()
Expand All @@ -69,10 +79,10 @@ class ForespoerselRepository(private val db: Database) {
fun hentOrgnr(forespoerselId: UUID): String? {
val requestTimer = requestLatency.labels("hentOrgnr").startTimer()
return transaction(db) {
ForespoerselEntitet.let {
it.select { (it.forespoerselId eq forespoerselId.toString()) }
.firstOrNull(it.orgnr)
}
ForespoerselEntitet
.selectAll()
.where { ForespoerselEntitet.forespoerselId eq forespoerselId.toString() }
.firstOrNull(ForespoerselEntitet.orgnr)
}.also {
requestTimer.observeDuration()
}
Expand All @@ -81,12 +91,10 @@ class ForespoerselRepository(private val db: Database) {
fun lagreForespoersel(forespoerselId: String, organisasjonsnummer: String) {
val requestTimer = requestLatency.labels("lagreForespoersel").startTimer()
transaction(db) {
ForespoerselEntitet.run {
insert {
it[this.forespoerselId] = forespoerselId
it[orgnr] = organisasjonsnummer
it[opprettet] = LocalDateTime.now()
}
ForespoerselEntitet.insert {
it[this.forespoerselId] = forespoerselId
it[orgnr] = organisasjonsnummer
it[opprettet] = LocalDateTime.now()
}
}.also {
requestTimer.observeDuration()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import org.jetbrains.exposed.sql.Query
import org.jetbrains.exposed.sql.SortOrder
import org.jetbrains.exposed.sql.and
import org.jetbrains.exposed.sql.insert
import org.jetbrains.exposed.sql.select
import org.jetbrains.exposed.sql.selectAll
import org.jetbrains.exposed.sql.transactions.transaction
import org.jetbrains.exposed.sql.update
import java.time.LocalDateTime
Expand All @@ -28,15 +28,13 @@ class InntektsmeldingRepository(private val db: Database) {
.labelNames("method")
.register()

fun lagreInntektsmelding(forespørselId: String, inntektsmeldingDokument: Inntektsmelding) {
fun lagreInntektsmelding(forespoerselId: String, inntektsmeldingDokument: Inntektsmelding) {
val requestTimer = requestLatency.labels("lagreInntektsmelding").startTimer()
transaction(db) {
InntektsmeldingEntitet.run {
insert {
it[forespoerselId] = forespørselId
it[dokument] = inntektsmeldingDokument
it[innsendt] = LocalDateTime.now()
}
InntektsmeldingEntitet.insert {
it[this.forespoerselId] = forespoerselId
it[dokument] = inntektsmeldingDokument
it[innsendt] = LocalDateTime.now()
}
}.also {
requestTimer.observeDuration()
Expand All @@ -46,19 +44,20 @@ class InntektsmeldingRepository(private val db: Database) {
fun hentNyeste(forespoerselId: UUID): Inntektsmelding? {
val requestTimer = requestLatency.labels("hentNyeste").startTimer()
return transaction(db) {
hentNyesteQuery(forespoerselId)
hentNyesteImQuery(forespoerselId)
.firstOrNull()
?.getOrNull(InntektsmeldingEntitet.dokument)
}.also {
requestTimer.observeDuration()
}
}

fun hentNyesteEksternEllerInternInntektsmelding(forespørselId: String): Pair<Inntektsmelding?, EksternInntektsmelding?>? {
fun hentNyesteEksternEllerInternInntektsmelding(forespoerselId: String): Pair<Inntektsmelding?, EksternInntektsmelding?>? {
val requestTimer = requestLatency.labels("hentNyesteInternEllerEkstern").startTimer()
return transaction(db) {
InntektsmeldingEntitet.slice(InntektsmeldingEntitet.dokument, InntektsmeldingEntitet.eksternInntektsmelding)
.select { (InntektsmeldingEntitet.forespoerselId eq forespørselId) }
InntektsmeldingEntitet
.select(InntektsmeldingEntitet.dokument, InntektsmeldingEntitet.eksternInntektsmelding)
.where { InntektsmeldingEntitet.forespoerselId eq forespoerselId }
.orderBy(InntektsmeldingEntitet.innsendt, SortOrder.DESC)
.limit(1)
.map {
Expand All @@ -80,7 +79,9 @@ class InntektsmeldingRepository(private val db: Database) {
val antallOppdatert = transaction(db) {
InntektsmeldingEntitet.update(
where = {
(InntektsmeldingEntitet.id eqSubQuery hentNyesteQuery(forespoerselId).adjustSlice { slice(InntektsmeldingEntitet.id) }) and
val nyesteImIdQuery = hentNyesteImQuery(forespoerselId).adjustSelect { select(InntektsmeldingEntitet.id) }

(InntektsmeldingEntitet.id eqSubQuery nyesteImIdQuery) and
InntektsmeldingEntitet.journalpostId.isNull()
}
) {
Expand All @@ -96,22 +97,20 @@ class InntektsmeldingRepository(private val db: Database) {
requestTimer.observeDuration()
}

fun lagreEksternInntektsmelding(forespørselId: String, eksternIm: EksternInntektsmelding) {
fun lagreEksternInntektsmelding(forespoerselId: String, eksternIm: EksternInntektsmelding) {
transaction(db) {
InntektsmeldingEntitet.run {
insert {
it[forespoerselId] = forespørselId
it[eksternInntektsmelding] = eksternIm
it[innsendt] = LocalDateTime.now()
}
InntektsmeldingEntitet.insert {
it[this.forespoerselId] = forespoerselId
it[eksternInntektsmelding] = eksternIm
it[innsendt] = LocalDateTime.now()
}
}
}

private fun hentNyesteQuery(forespoerselId: UUID): Query =
InntektsmeldingEntitet.select {
(InntektsmeldingEntitet.forespoerselId eq forespoerselId.toString()) and InntektsmeldingEntitet.dokument.isNotNull()
}
private fun hentNyesteImQuery(forespoerselId: UUID): Query =
InntektsmeldingEntitet
.selectAll()
.where { (InntektsmeldingEntitet.forespoerselId eq forespoerselId.toString()) and InntektsmeldingEntitet.dokument.isNotNull() }
.orderBy(InntektsmeldingEntitet.innsendt, SortOrder.DESC)
.limit(1)
}

0 comments on commit 50a3198

Please sign in to comment.