@@ -50,9 +50,10 @@ object SøknadTilFeltMap {
50
50
søknad : S øknadOvergangsstønad,
51
51
vedleggTitler : List <String >,
52
52
): FeltMap {
53
- val finnFelter = finnFelter(søknad)
54
- val vedlegg = mapTilVedlegg(vedleggTitler)
55
53
val språk = søknad.innsendingsdetaljer.verdi.språk ? : " nb"
54
+ val finnFelter = finnFelter(søknad, språk)
55
+ val vedlegg = mapTilVedlegg(vedleggTitler)
56
+
56
57
return FeltMap (
57
58
" Søknad om overgangsstønad" ,
58
59
finnFelter + vedlegg,
@@ -65,9 +66,10 @@ object SøknadTilFeltMap {
65
66
søknad : S øknadBarnetilsyn,
66
67
vedleggTitler : List <String >,
67
68
): FeltMap {
68
- val finnFelter = finnFelter(søknad)
69
- val vedlegg = mapTilVedlegg(vedleggTitler)
70
69
val språk = søknad.innsendingsdetaljer.verdi.språk ? : " nb"
70
+ val finnFelter = finnFelter(søknad, språk)
71
+ val vedlegg = mapTilVedlegg(vedleggTitler)
72
+
71
73
return FeltMap (
72
74
" Søknad om stønad til barnetilsyn" ,
73
75
finnFelter + vedlegg,
@@ -83,9 +85,10 @@ object SøknadTilFeltMap {
83
85
søknad : S øknadSkolepenger,
84
86
vedleggTitler : List <String >,
85
87
): FeltMap {
86
- val finnFelter = finnFelter(søknad)
87
- val vedlegg = mapTilVedlegg(vedleggTitler)
88
88
val språk = søknad.innsendingsdetaljer.verdi.språk ? : " nb"
89
+ val finnFelter = finnFelter(søknad, språk)
90
+ val vedlegg = mapTilVedlegg(vedleggTitler)
91
+
89
92
return FeltMap (
90
93
" Søknad om stønad til skolepenger" ,
91
94
finnFelter + vedlegg,
@@ -95,8 +98,9 @@ object SøknadTilFeltMap {
95
98
}
96
99
97
100
fun mapSkjemafelter (skjema : SkjemaForArbeidss øker): FeltMap {
98
- val finnFelter = finnFelter(skjema)
99
101
val språk = skjema.innsendingsdetaljer.verdi.språk ? : " nb"
102
+ val finnFelter = finnFelter(skjema, språk)
103
+
100
104
return FeltMap (
101
105
" Skjema for arbeidssøker" ,
102
106
finnFelter,
@@ -126,12 +130,15 @@ object SøknadTilFeltMap {
126
130
return FeltMap (" Ettersending" , verdiliste = listOf (infoMap, vedleggMap))
127
131
}
128
132
129
- private fun finnFelter (entitet : Any ): List <VerdilisteElement > {
133
+ private fun finnFelter (
134
+ entitet : Any ,
135
+ språk : String ,
136
+ ): List <VerdilisteElement > {
130
137
// Det går ikke å hente elementene i en liste med reflection, så vi traverserer den som vanlig.
131
138
if (entitet is List <Any ?>) {
132
139
return entitet
133
140
.filterNotNull()
134
- .map { finnFelter(it) }
141
+ .map { finnFelter(it, språk ) }
135
142
.flatten()
136
143
}
137
144
val parametere = konstruktørparametere(entitet)
@@ -142,17 +149,17 @@ object SøknadTilFeltMap {
142
149
.map { finnSøknadsfelt(entitet, it) }
143
150
.filter { it.visibility == KVisibility .PUBLIC }
144
151
.mapNotNull { getFeltverdi(it, entitet) }
145
- .map { finnFelter(it) } // Kall rekursivt videre
152
+ .map { finnFelter(it, språk ) } // Kall rekursivt videre
146
153
.flatten()
147
154
.toList()
148
155
149
156
if (entitet is S øknadsfelt<* >) {
150
157
if (entitet.verdi!! is Dokumentasjon ) {
151
158
@Suppress(" UNCHECKED_CAST" )
152
- return mapDokumentasjon(entitet as S øknadsfelt<Dokumentasjon >)
159
+ return mapDokumentasjon(entitet as S øknadsfelt<Dokumentasjon >, språk )
153
160
}
154
161
if (entitet.verdi!! ::class in endNodes) {
155
- return FeltformatererPdfKvittering .genereltFormatMapperMapEndenode(entitet)?.let { listOf (it) }
162
+ return FeltformatererPdfKvittering .genereltFormatMapperMapEndenode(entitet, språk )?.let { listOf (it) }
156
163
? : emptyList()
157
164
}
158
165
if (entitet.alternativer != null ) {
@@ -162,7 +169,7 @@ object SøknadTilFeltMap {
162
169
val verdiliste = entitet.verdi as List <* >
163
170
164
171
if (verdiliste.firstOrNull() is String ) {
165
- return FeltformatererPdfKvittering .genereltFormatMapperMapEndenode(entitet)?.let { listOf (it) }
172
+ return FeltformatererPdfKvittering .genereltFormatMapperMapEndenode(entitet, språk )?.let { listOf (it) }
166
173
? : emptyList()
167
174
}
168
175
val mappedElementer =
@@ -182,9 +189,9 @@ object SøknadTilFeltMap {
182
189
mappedElementer
183
190
.map {
184
191
when (it) {
185
- is S øknadsfeltType.BarnElement -> mapBarnElementer(entitet.label, verdiliste.indexOf(it.barn), it.barn)
186
- is S øknadsfeltType.UtenlandsoppholdElement -> mapUtenlandsoppholdElementer(entitet.label, verdiliste.indexOf(it.utenlandsopphold), it.utenlandsopphold)
187
- is S øknadsfeltType.ArbeidsforholdElement -> mapArbeidsforholdElementer(entitet.label, verdiliste.indexOf(it.arbeidsforhold), it.arbeidsforhold)
192
+ is S øknadsfeltType.BarnElement -> mapBarnElementer(entitet.label, verdiliste.indexOf(it.barn), it.barn, språk )
193
+ is S øknadsfeltType.UtenlandsoppholdElement -> mapUtenlandsoppholdElementer(entitet.label, verdiliste.indexOf(it.utenlandsopphold), it.utenlandsopphold, språk )
194
+ is S øknadsfeltType.ArbeidsforholdElement -> mapArbeidsforholdElementer(entitet.label, verdiliste.indexOf(it.arbeidsforhold), it.arbeidsforhold, språk )
188
195
}
189
196
}.filterNotNull(),
190
197
visningsVariant = VisningsVariant .TABELL .toString(),
@@ -202,9 +209,12 @@ object SøknadTilFeltMap {
202
209
return list
203
210
}
204
211
205
- private fun mapDokumentasjon (entitet : S øknadsfelt<Dokumentasjon >): List <VerdilisteElement > {
212
+ private fun mapDokumentasjon (
213
+ entitet : S øknadsfelt<Dokumentasjon >,
214
+ språk : String ,
215
+ ): List <VerdilisteElement > {
206
216
val list =
207
- listOf (FeltformatererPdfKvittering .genereltFormatMapperMapEndenode(entitet.verdi.harSendtInnTidligere))
217
+ listOf (FeltformatererPdfKvittering .genereltFormatMapperMapEndenode(entitet.verdi.harSendtInnTidligere, språk ))
208
218
if (list.size == 1 && list.first()?.verdiliste.isNullOrEmpty() && list.first()?.verdi.isNullOrEmpty()) {
209
219
return emptyList()
210
220
}
@@ -215,12 +225,13 @@ object SøknadTilFeltMap {
215
225
elementLabel : String ,
216
226
indeks : Int ,
217
227
barn : Barn ,
228
+ språk : String ,
218
229
): VerdilisteElement ? {
219
230
val element = if (elementLabel.contains(" Barn" )) " Barn" else " Child"
220
231
val tabellCaption = " $element ${indeks + 1 } "
221
232
val barnUtenFødselsdato = fjernFødselsdatoHvisFødt(barn)
222
233
val verdilisteElementListe =
223
- finnFelter(barnUtenFødselsdato).filterNot { it.verdi == " " && it.verdiliste.isNullOrEmpty() }
234
+ finnFelter(barnUtenFødselsdato, språk ).filterNot { it.verdi == " " && it.verdiliste.isNullOrEmpty() }
224
235
return verdilisteElementListe.takeIf { it.isNotEmpty() }?.let {
225
236
VerdilisteElement (label = tabellCaption, verdiliste = it)
226
237
}
@@ -237,10 +248,11 @@ object SøknadTilFeltMap {
237
248
elementLabel : String ,
238
249
indeks : Int ,
239
250
arbeidsforhold : Arbeidsgiver ,
251
+ språk : String ,
240
252
): VerdilisteElement ? {
241
253
val element = if (elementLabel == " Om arbeidsforholdet ditt" ) " Arbeidsforhold" else " Employment"
242
254
val tabellCaption = " $element ${indeks + 1 } "
243
- val verdilisteElementListe = finnFelter(arbeidsforhold)
255
+ val verdilisteElementListe = finnFelter(arbeidsforhold, språk )
244
256
return verdilisteElementListe.takeIf { it.isNotEmpty() }?.let {
245
257
VerdilisteElement (label = tabellCaption, verdiliste = it)
246
258
}
@@ -250,9 +262,10 @@ object SøknadTilFeltMap {
250
262
elementLabel : String ,
251
263
indeks : Int ,
252
264
utenlandsopphold : Utenlandsopphold ,
265
+ språk : String ,
253
266
): VerdilisteElement ? {
254
267
val tabellCaption = " $elementLabel ${indeks + 1 } "
255
- val verdilisteElementListe = finnFelter(utenlandsopphold).filterNot { it.verdi == " " && it.verdiliste.isNullOrEmpty() }
268
+ val verdilisteElementListe = finnFelter(utenlandsopphold, språk ).filterNot { it.verdi == " " && it.verdiliste.isNullOrEmpty() }
256
269
return verdilisteElementListe.takeIf { it.isNotEmpty() }?.let {
257
270
VerdilisteElement (label = tabellCaption, verdiliste = it)
258
271
}
0 commit comments