Skip to content

Latest commit

 

History

History
48 lines (45 loc) · 2.03 KB

README.md

File metadata and controls

48 lines (45 loc) · 2.03 KB

PublicLibrary

The project models business processes of public library

Applied technologies

  • Java 20
  • Spring Boot 3.1.0
  • Spring MVC, Thymeleaf 3.1.1
  • Spring Security
  • Spring Data, JPA, Hibernate 6.1.7
  • Postgresql 15, Liquibase 4.17.2
  • Spring Email, Kafka
  • JUnit 5, Mockito, MockMVC
  • Tomcat, Lombok, Log4j2, Maven, Git
  • Spring Tools Suite 4.17.2

Use cases and features

  • user changes interface locale
  • user logs in and gets authorized
  • librarian registers new customer, customer receives notification by email
  • customer browses and reads book reviews
  • customer selects books to order
    • books filtered out by author, title, ISBN, language, country of origin, cover, etc
    • books sorted by author, title, ISBN, language, country, year of publication in ascending or descending order
    • book list divided in pages, first, last, next, previous page may be retrieved
  • customer marks selected books and forms request, notification sent by email
  • librarian reviews request, checks if books available, approves or rejects requested books, notification sent
  • librarian transfers approved books to customer, notification sent
  • librarian fetches list of customer's books
  • librarian finds holder of the book
  • customer returns books, librarian checks for damage and writes out compensation claim, notification sent
  • customer composes and publishes book review
  • librarian adds and edits book descriptions
  • librarian retrieves data on most popular book categories by time, request rate
  • librarian retrieves statistical data about customers
  • librarian retrieves data about selected customer on time spent, request rate, reviews
  • manager registers new librarian or manager
  • manager validates claims and authorizes compensation sum
  • user changes personal data