diff --git a/src/main/kotlin/no/nav/lydia/sykefraversstatistikk/VirksomhetsinformasjonRepository.kt b/src/main/kotlin/no/nav/lydia/sykefraversstatistikk/VirksomhetsinformasjonRepository.kt index 537b135f..3f02b2d5 100644 --- a/src/main/kotlin/no/nav/lydia/sykefraversstatistikk/VirksomhetsinformasjonRepository.kt +++ b/src/main/kotlin/no/nav/lydia/sykefraversstatistikk/VirksomhetsinformasjonRepository.kt @@ -62,7 +62,7 @@ class VirksomhetsinformasjonRepository(val dataSource: DataSource) { ia_sak.endret = (select max(endret) from ia_sak iasak2 where iasak2.orgnr = statistikk.orgnr) ) ${ - if (næringsgrupperMedBransjer.isNotEmpty()) " JOIN virksomhet_naring AS vn on (virksomhet.id = vn.virksomhet) " + if (næringsgrupperMedBransjer.isNotEmpty()) " JOIN virksomhet_naringsundergrupper AS vn on (virksomhet.id = vn.virksomhet) " else "" } @@ -107,7 +107,6 @@ class VirksomhetsinformasjonRepository(val dataSource: DataSource) { mapOf( "kvartal" to søkeparametere.periode.kvartal, "arstall" to søkeparametere.periode.årstall, - "naringer" to session.createArrayOf("text", næringsgrupperMedBransjer), "kommuner" to session.createArrayOf("text", søkeparametere.kommunenummer), "sektorer" to session.createArrayOf("text", sektorer), @@ -149,7 +148,7 @@ class VirksomhetsinformasjonRepository(val dataSource: DataSource) { ia_sak.endret = (select max(endret) from ia_sak iasak2 where iasak2.orgnr = statistikk.orgnr) ) ${ - if (næringsgrupperMedBransjer.isNotEmpty()) " JOIN virksomhet_naring AS vn on (virksomhet.id = vn.virksomhet) " + if (næringsgrupperMedBransjer.isNotEmpty()) " JOIN virksomhet_naringsundergrupper AS vn on (virksomhet.id = vn.virksomhet) " else "" } diff --git "a/src/main/kotlin/no/nav/lydia/sykefraversstatistikk/api/S\303\270keparametere.kt" "b/src/main/kotlin/no/nav/lydia/sykefraversstatistikk/api/S\303\270keparametere.kt" index 3d370711..b21cc7cb 100644 --- "a/src/main/kotlin/no/nav/lydia/sykefraversstatistikk/api/S\303\270keparametere.kt" +++ "b/src/main/kotlin/no/nav/lydia/sykefraversstatistikk/api/S\303\270keparametere.kt" @@ -130,14 +130,20 @@ data class Søkeparametere( else """ AND ( - substr(vn.narings_kode, 1, 2) in (select unnest(:naringer)) + substr(vn.naringsundergruppe1, 1, 2) in (select unnest(:naringer)) + OR substr(vn.naringsundergruppe2, 1, 2) in (select unnest(:naringer)) + OR substr(vn.naringsundergruppe3, 1, 2) in (select unnest(:naringer)) ${ if (søkeparametere.bransjeprogram.isNotEmpty()) { val koder = søkeparametere.bransjeprogram.flatMap { it.næringskoder }.groupBy { it.length } val femsifrede = koder[5]?.joinToString { "'${it.take(2)}.${it.takeLast(3)}'" } - femsifrede?.let { "OR (vn.narings_kode in (select (unnest(:naringer))))" } ?: "" + femsifrede?.let { + "OR (vn.naringsundergruppe1 in (select (unnest(:naringer))))" + + "OR (vn.naringsundergruppe2 in (select (unnest(:naringer))))" + + "OR (vn.naringsundergruppe3 in (select (unnest(:naringer))))" + } ?: "" } else "" } )