Question
Project Requirements This application will have the following requirements: It will support 4 account types: Checking Savings Loans Credit Cards A User will have the
Project Requirements
This application will have the following requirements:
It will support 4 account types:
Checking
Savings
Loans
Credit Cards
A User will have the following:
Anid
Their First Name
Their Last Name
An email
A password
An account will have the following fields:
Anid
A link to the associated User
A name of the account
A link to the account type
Whether the account is closed or not
An account will have associated account entries which will consist of the following: a. Anid
A link to the associated account
An amount
An entry date
A loan details table will have the following:
AnId
An associated account
A creation date
An original loan amount
A monthly payment amount
An interest rate
A term length in months.
A credit card details table will have the following:
AnId
An associated account
A credit limit amount
An issue date
A credit card number
A month field for the card expiry
A year field for card expiry
A CCV field (3 digits)
The application will adhere to traditional REST structure
Business Rules
The application will have the following business rules:
A loan payment can never exceed the total amount remaining on the loan
Only an administrator will be able to create or edit the credit card details table*
Only an administrator will be able to create or edit the loan details table*
Only an administrator will be able to see a listing of all the accounts*
Only an administrator shall be able to close an account.
Closed accounts will not appear in user account listings
A user should be able to see a listing of their own accounts
Upon loan creation, simple interest will be used to calculate the amount of each loan payment.
See the simple interest section in the appendix for how this should be done.
A user will be able to make a loan payment.
A user can never increase a loan amount (make a negative payment)
A user with a closed account will not be able to access to any account details from that account.
A user should be able to transfer money between accounts, though not violating the underlying
rules for any account.
A user will be able to make a credit card payment.
A user can deposit money into their checking account
A user can deposit money into their savings account
A user can withdraw money from their checking account
A user can withdraw money from their savings account.
A user can see the balance of any account that they own
The application tables will be auto created using the spring schema.sql file
The accounts, account types and user tables will be auto populated using data.sql file. The data
is provided in this documents appendix.
A checking account can never have a negative amount
A savings account can never have a negative amount
A user can never have a credit card amount less than the total credit limit (remember this
account will have negative values).
A user can never pay off more than is left on the remaining balance of a loan or credit card
(since it is a negative number, it can never go above 0).
All URLs in the application will adhere to the REST structure (ex: /accounts/1,
/accounts/1/balance, /accounts/new, /admin/accounts, /user/1/accounts)
The application must calculate simple interest and the loan payments correctly.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started