private FinancialSituationAggregate(FinancialSituationBuilder builder) { Incomings incomings = new Incomings(builder.salary, builder.otherIncome); Outgoings outgoings = new Outgoings(builder.rent, builder.costOfLiving); this.rootEntity = new FinancialSituationRootEntity(builder.applicationNumber, incomings, outgoings); }
public int calculateScoringPoints() { Money monthlyBalance = rootEntity.sum(); if(monthlyBalance.isGreaterThan(new Money(2000))) { return 20; } else if(monthlyBalance.isGreaterThan(new Money(1000))) { return 15; } else if(monthlyBalance.isGreaterThan(new Money(750))) { return 10; } else if(monthlyBalance.isGreaterThan(new Money(500))) { return 5; } else if (monthlyBalance.isGreaterThan(new Money(250))) { return 2; } else if( monthlyBalance.isGreaterThan(new Money(0))) { return 0; } else { return -20; } }