loanApplicant.java

 avatar
unknown
plain_text
5 months ago
2.5 kB
2
Indexable
package com.example.carloan;

public class loanApplicant {
    private double monthlyIncome;
    private double debt;
    private double loan;
    private double duration;
    private double DSR;
    private double InterestRate;
    private String empStatus;
    private double monthlyPayment;
    private double loanAffordabilityChecked;
    private String applicationStatus;
    private double loanAmountApproved;

    public loanApplicant(double monthlyIncome, double debt, double loan, double duration, String empStatus) {
        this.monthlyIncome = monthlyIncome;
        this.debt = debt;
        this.loan = loan;
        this.duration = duration;
        this.empStatus = empStatus;
        calculateDSR();
        calculateInterestRate();
        calculateMonthlyInterestRate();
        loanAffordabilityChecked();
        eligibilityChecked();
    }

    private void calculateDSR() {
        this.DSR = (debt / monthlyIncome) * 100;
    }

    private void calculateInterestRate() {
        switch (empStatus.toLowerCase()) {
            case "full time":
                this.InterestRate = 3.5;
                break;
            case "part time":
                this.InterestRate = 4.5;
                break;
            default:
                this.InterestRate = 5.0;
                break;
        }
    }

    private void calculateMonthlyInterestRate() {
        double monthlyInterestRate = InterestRate / (12 * 100);
        this.monthlyPayment = (loan * monthlyInterestRate) /
                (1 - Math.pow(1 + monthlyInterestRate, -duration));
    }

    private void loanAffordabilityChecked() {
        this.loanAffordabilityChecked = monthlyIncome * 0.3;
    }

    private void eligibilityChecked() {
        if (DSR < 40 && monthlyPayment < loanAffordabilityChecked) {
            this.applicationStatus = "Approved";
            this.loanAmountApproved = loan;
        } else {
            this.applicationStatus = "Denied";
            this.loanAmountApproved = 0;
        }
    }

    // Getter methods for the results
    public String getApplicationStatus() {
        return applicationStatus;
    }

    public double getLoanAmountApproved() {
        return loanAmountApproved;
    }

    public double getInterestRate() {
        return InterestRate;
    }

    public double getMonthlyPayment() {
        return monthlyPayment;
    }

    public double getDSR() {
        return DSR;
    }
}
Editor is loading...
Leave a Comment