Giter Club home page Giter Club logo

test-task-bank's Introduction

Mail Delivery Application

The system contains a service API that allows you to create new customers, tools for changing customer information, as well as a customer search API. Authentication via JWT is present

Used technologies

  • Java
  • Spring Boot 3, Spring Data JPA (to work with entities)
  • PostgreSQL (main DBMS for this project)
  • Swagger
  • JWT Auth
  • Maven (package manager to manipulate with dependecies)
  • Lombok
  • MapStruct (for mapping models to and from dto)
  • JUnit5 and Mockito (for testing)

Steps to Setup

1. Clone the application

git clone https://github.com/notas4int/test-task-mail-delivery.git

2. Create PostgreSQL database

create database bank-system

3. Change PostreSQL username and password as per your installation

  • open src/main/resources/application.properties
  • change spring.datasource.username and spring.datasource.password as per your PostgreSQL installation

4. Run the app using maven

mvn spring-boot:run

The app will start running at http://localhost:8080

Explore Rest APIs

Users

Method Url Description Sample Request Sample Response
POST /api/v1/staff/create-client create new client RequestRegisterDTO ResponseAuthenticationDTO
POST /api/v1/auth/refresh-token refresh token ResponseAuthenticationDTO
POST /api/v1/auth/authenticate authenticate RequestAuthenticationDTO ResponseAuthenticationDTO
DEL /api/v1/client/delete-info delete email or phone requestParams(email, phone)
POST /api/v1/client/add-info add email or/and phone requestParams(email, phone)
PATCH /api/v1/client/update-info change email or/and phone requestParams(email, phone)
PATCH /api/v1/client/transfer-money transfer money requestParams(login, amountOfFunds)
GET /api/v1/search-client/get-client get client info by phone/initials/email requestParams(phone, email, initials) ResponseClientDTO
GET /api/v1/search-client/get-clients-by-birthdate get clients greater than entered date requestParams(dateOfBirthday) and (offset, limit, sort for pagination/sorting) List of ResponseClientDTO
RequestRegisterDTO
{
  "login": "superlogin",
  "password": "superpassword",
  "balance": 1000.4,
  "phone": "89222341982",
  "email": "[email protected]"
}
RequestAuthenticationDTO
{
  "login": "superlogin",
  "password": "superpassword"
}
ResponseAuthenticationDTO
{
  "access_token": "sdaifygvwesdi.lfujgchbdwseaikl.fhbsdf",
  "refresh_token": "ewil.gfvbwe.ifcgbwsedik.fgbwe.kdfj"
}
ResponseClientDTO
{
  "id": 1,
  "name": "Oleg",
  "surname": "Sidorov",
  "middleName": "Olegovich",
  "dateOfBirthday": "21.01.2000",
  "phone": "89222341982",
  "email": "[email protected]"
}

test-task-bank's People

Contributors

notas4int avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.