This project is the graduation project of n11 TalentHub Java bootcamp. It performs operations such as credit application and credit inquiry of users.It is a Restful spring boot project that returns the loan result to the customer according to the relevant criteria by receiving loan application requests.
-
3.1. User Endpoint
3.2. Credit Endpoint
Loan application from the user to the system name , surname, date of birth, ID number, telephone number , monthly income, the cost of coverage (optional) by taking parameters such as the user's credit score, income, and collateral of credit according to the price calculated according to criteria related to the result(red check) and credit the result of the application is transmitted as a message to the user revolving credit limit.
- OpenJDK 11
- Maven
- Spring
- Spring Data JPA
- Postgresql
- Validation
- Mapstruct
- Lombok
- Junit , Mockito
- Logging slf4j
- Swagger
- Twilio(SMS)
- React
It hosts basic operations such as registering new users, updating user information, deleting and listing.
Endpoint | Method | Params | Description |
---|---|---|---|
getAllUsers | GET | null | It lists all users. |
getOneUsers | GET | userId | Fetches the user according to the id information. |
createUser | POST | UserRequestDto | Registers a new user. |
deleteUser | DELETE | userId | Deletes user based on id. |
According to the information received from the user for applying for a loan, the credit score is first calculated(fake service).
The credit score was calculated by adding 100 to the last three digits of the user's identification number in the project.
There are different credit level alternatives according to the user's credit score and salary status. Different calculations are performed at each level. And if the user has collateral information, the credit result is calculated by adding it to the credit limit according to the credit level.
The credit result is sent to the user as a REJECTION, APPROVE and limit information.As a result of the loan, sms is sent to the user's phone number.
A user who has applied for a loan can request a loan by date of birth and ID number.As a result of this query, user information and credit result information are returned.
Endpoint | Method | Params | Description |
---|---|---|---|
createUserAndCreditApplication | POST | UserRequestDto | credit application process |
inquiryCreditApplication | GET | dateOfBirthday, identificationNumber | credit inquiry by identification number and date of birth |
The page where the user queries the loan application by entering the date of birth and identification number.
Sample Inquiry:
The result of the user whose credit result is approve:
The result of the user whose credit result is rejection:
If the user does not have a loan application:
Sample Application
SMS :
!! Since the trial version of the Twilio api provides a security warning for public repos, the sms discard function has been translated into the comment line.For this reason, the sms feature has been added with images as an example.
This page lists users whose user information is updated or deleted.
User Save :
User Updated Model:
Form Valid:
The validations for the quality of the data received in the forms are limited in the same way as the backend.
git clone https://github.com/n11-TalentHub-Java-Bootcamp/n11-talenthub-bootcamp-graduation-project-arikanogluulku.git
Import the project to your IDE
Configure application.properties files for PostgreSQL connection.
Send request to endpoints. (The project is running on the 8080 port by default.)
Swagger UI :