package net.sourceforge.fenixedu.dataTransferObject.accounting.paymentPlan; import java.io.Serializable; import java.util.ArrayList; import java.util.Collections; import java.util.List; import net.sourceforge.fenixedu.dataTransferObject.accounting.PaymentsBean; import net.sourceforge.fenixedu.domain.DegreeCurricularPlan; import net.sourceforge.fenixedu.domain.ExecutionYear; public class PaymentPlanBean implements Serializable, PaymentsBean { static private final long serialVersionUID = -103744109361724129L; private List installments; private boolean forStudentEnroledOnSecondSemesterOnly; private boolean main; private boolean forPartialRegime; private boolean forSecondCurricularYear; private boolean forFirstTimeInstitutionStudents; private List degreeCurricularPlans; private ExecutionYear executionYear; public PaymentPlanBean(ExecutionYear executionYear) { this.installments = new ArrayList(); this.degreeCurricularPlans = new ArrayList(); setExecutionYear(executionYear); } public List getDegreeCurricularPlans() { final List result = new ArrayList(); for (final DegreeCurricularPlan each : this.degreeCurricularPlans) { result.add(each); } return result; } public void setDegreeCurricularPlans(List degreeCurricularPlans) { final List result = new ArrayList(); for (final DegreeCurricularPlan each : degreeCurricularPlans) { result.add(each); } this.degreeCurricularPlans = result; } public void addInstallment(final InstallmentBean installment) { this.installments.add(installment); } public List getInstallments() { return Collections.unmodifiableList(installments); } public boolean isForStudentEnroledOnSecondSemesterOnly() { return forStudentEnroledOnSecondSemesterOnly; } public void setForStudentEnroledOnSecondSemesterOnly(boolean forStudentEnroledOnSecondSemesterOnly) { this.forStudentEnroledOnSecondSemesterOnly = forStudentEnroledOnSecondSemesterOnly; } public boolean isMain() { return main; } public void setMain(boolean main) { this.main = main; } public boolean isForPartialRegime() { return forPartialRegime; } public void setForPartialRegime(boolean forPartialRegime) { this.forPartialRegime = forPartialRegime; } public boolean isForFirstTimeInstitutionStudents() { return forFirstTimeInstitutionStudents; } public void setForFirstTimeInstitutionStudents(boolean forFirstTimeInstitutionStudents) { this.forFirstTimeInstitutionStudents = forFirstTimeInstitutionStudents; } @Override public ExecutionYear getExecutionYear() { return this.executionYear; } public void setExecutionYear(ExecutionYear executionYear) { this.executionYear = executionYear; } public boolean isForSecondCurricularYear() { return forSecondCurricularYear; } public void setForSecondCurricularYear(boolean forSecondCurricularYear) { this.forSecondCurricularYear = forSecondCurricularYear; } public List getSelectedInstallments() { final List result = new ArrayList(); for (final InstallmentBean installmentBean : getInstallments()) { if (installmentBean.isSelected()) { result.add(installmentBean); } } return result; } public void removeSelectedInstallments() { for (final InstallmentBean each : getSelectedInstallments()) { this.installments.remove(each); } } }