package ru.orangesoftware.financisto2.graph;
import ru.orangesoftware.financisto2.report.IncomeExpense;
import java.math.BigDecimal;
/**
* Created by IntelliJ IDEA.
* User: Denis Solonenko
* Date: 7/7/11 12:56 AM
*/
public class IncomeExpenseAmount {
public BigDecimal income = BigDecimal.ZERO;
public BigDecimal expense = BigDecimal.ZERO;
public void add(BigDecimal amount, boolean forceIncome) {
if (forceIncome || amount.longValue() > 0) {
income = income.add(amount);
} else {
expense = expense.add(amount);
}
}
public long max() {
return Math.max(Math.abs(income.longValue()), Math.abs(expense.longValue()));
}
public long balance() {
return income.longValue()+expense.longValue();
}
public void filter(IncomeExpense incomeExpense) {
switch (incomeExpense) {
case INCOME:
expense = BigDecimal.ZERO;
break;
case EXPENSE:
income = BigDecimal.ZERO;
break;
case SUMMARY:
income = income.add(expense);
expense = BigDecimal.ZERO;
break;
}
}
}