Skip to content

Commit

Permalink
Fjerner fordeling mellom BA og SN/FL (#436)
Browse files Browse the repository at this point in the history
  • Loading branch information
espenjv authored Sep 28, 2023
1 parent ed6f949 commit 5be1ba3
Show file tree
Hide file tree
Showing 6 changed files with 809 additions and 1,245 deletions.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

public class RegelFordelBeregningsgrunnlag implements EksportRegel<FordelPeriodeModell> {

public static final String ID = "FP_BR 22.3";
public static final String ID = "FP_BR 22.3";
private FordelModell modell;

public RegelFordelBeregningsgrunnlag() {
Expand Down Expand Up @@ -58,31 +58,26 @@ private void validerAtBruttoErUendret(FordelModell modell) {
.orElse(BigDecimal.ZERO);
if (bruttoInn.compareTo(bruttoUt) != 0) {
throw new IllegalStateException("Missmatch mellom fordelt beløp før og etter andelsmessig fordeling." +
" Inn i regel var brutto " + bruttoInn + ". Ut av regel var brutto " + bruttoUt);
" Inn i regel var brutto " + bruttoInn + ". Ut av regel var brutto " + bruttoUt);
}
}

@SuppressWarnings("unchecked")
@Override
public Specification<FordelModell> getSpecification() {
Ruleset<FordelModell> rs = new Ruleset<>();

Specification<FordelModell> fastsettFordelingAvBeregningsgrunnlag = new FastsettNyFordeling(modell).getSpecification();

Specification<FordelModell> sjekkRefusjonMotBeregningsgrunnlag = rs.beregningHvisRegel(new SjekkHarRefusjonSomOverstigerBeregningsgrunnlag(),
fastsettFordelingAvBeregningsgrunnlag, new SettAndelerUtenSøktYtelseTilNull());
@Override
public Specification<FordelModell> getSpecification() {
Ruleset<FordelModell> rs = new Ruleset<>();

Specification<FordelModell> omfordelFraBrukersAndel = rs.beregningsRegel(OmfordelFraBrukersAndel.ID,
OmfordelFraBrukersAndel.BESKRIVELSE, new OmfordelFraBrukersAndel(), sjekkRefusjonMotBeregningsgrunnlag);
Specification<FordelModell> fastsettFordelingAvBeregningsgrunnlag = new FastsettNyFordeling(modell).getSpecification();

Specification<FordelModell> sjekkOmSkalFordeleFraBrukersAndel = rs.beregningHvisRegel(new SkalOmfordeleFraBrukersAndelTilFLEllerSN(), omfordelFraBrukersAndel, sjekkRefusjonMotBeregningsgrunnlag);
Specification<FordelModell> sjekkRefusjonMotBeregningsgrunnlag = rs.beregningHvisRegel(new SjekkHarRefusjonSomOverstigerBeregningsgrunnlag(),
fastsettFordelingAvBeregningsgrunnlag, new SettAndelerUtenSøktYtelseTilNull());

Specification<FordelModell> fordelBruttoAndelsmessig = rs.beregningsRegel(RegelFordelBeregningsgrunnlagAndelsmessig.ID, RegelFordelBeregningsgrunnlagAndelsmessig.BESKRIVELSE, new RegelFordelBeregningsgrunnlagAndelsmessig().getSpecification(), new Fordelt());

Specification<FordelModell> sjekkOmBruttoKanDekkeAllRefusjon = rs.beregningHvisRegel(new FinnesMerRefusjonEnnBruttoTilgjengeligOgFlereAndelerKreverRefusjon(), fordelBruttoAndelsmessig, sjekkOmSkalFordeleFraBrukersAndel);
Specification<FordelModell> sjekkOmBruttoKanDekkeAllRefusjon = rs.beregningHvisRegel(new FinnesMerRefusjonEnnBruttoTilgjengeligOgFlereAndelerKreverRefusjon(), fordelBruttoAndelsmessig, sjekkRefusjonMotBeregningsgrunnlag);

Specification<FordelModell> sjekkOmDetFinnesTilkommetRefkrav = rs.beregningHvisRegel(new FinnesTilkommetArbeidsandelMedRefusjonskrav(), sjekkOmBruttoKanDekkeAllRefusjon, sjekkOmSkalFordeleFraBrukersAndel);
Specification<FordelModell> sjekkOmDetFinnesTilkommetRefkrav = rs.beregningHvisRegel(new FinnesTilkommetArbeidsandelMedRefusjonskrav(), sjekkOmBruttoKanDekkeAllRefusjon, sjekkRefusjonMotBeregningsgrunnlag);

return sjekkOmDetFinnesTilkommetRefkrav;
}
}
}

This file was deleted.

This file was deleted.

Loading

0 comments on commit 5be1ba3

Please sign in to comment.