Skip to content

Book Reserve Management System. An easy way to reserve your favourite books. Project successfully finished.

License

Notifications You must be signed in to change notification settings

cvazquezlos/BREMS-Library-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BREMS - Book Reserve Management System

About the contributors

About this web application

Online management of resources (books and magazines) in a library. Each resource has a copy which a reader can reserve. This resource will be taken by a reader for 30 days (in case of a books) and for 2 days (in case of magazines). An administrator will manage the resource loans, resource stock and resource copies. Web functionality deppends on type of user (administrator o reader). Link to explicative video about BREMS (spanish).

Users: Readers

A reader is an user who can reserve a resource through BREMS app. Those functionalities are public:

  • List of resources.
  • Search resources using a title, author y/o resource name.
  • Reserve a resource.
  • Postpone return date.
  • List of resources to be returned.
  • List of fines.
  • Sing-up.

Users: Administrator

An administrator is an user who can manage resource data and the loans. Those functionalities are private:

  • Manage resources (books and magazines).
    • Modify resources.
    • Create new resources.
    • Delete resources.
  • Manage copies.
  • Manage loans.
  • Manage fines.
  • Manage users (readers and others administrators).
    • Create new users.
    • Unsubscribe a user.
    • Modify user's information.

Entities of BREMS' App

In our App, we use these entities: User, fine, resource, loan and copy.

Entity Description Secondary entities
User Reader and Administrator. -
Resource Book or Magazine which can be reserve by a reader. ResourceType and genre
Fine Will be applied if a reader returns a resource out of date. -
Loan Action through a reader can reserve a copy. ActionType and Token
Copy Limited number of resource number which can be reserved by a reader. -

Tasks management

We use Trello and SCRUM because we think is the best way to work in a group.

App views

Backend contains views (each page which makes this website useful). As a library, the home page contains a list of all books and magazines avaible. This design is originally made by @annyCS.

Index page

index

About page

about

Contact page

contact

Search page

search

Profile page

profile

Admin page

admin

Admin resources page

Resources general view

admin-resources

Edit resource page

admin-resources-edit

Add resource page

admin-resources-add

Admin loans page

Loans general view

admin-loans

Add loans page

admin-loans-add

Admin users page

Users general view

admin-users

Add user page

admin-users-add

Backend

Running BREMS Backend

You must have MySQL installed, your conection credentials must be "root" and "1234" (user and pass) and you need to have a MySQL Schema called "BREMS".

  1. Download this repository (or clone it).
  2. Navigate to "backend/target".
  3. Using your shell, execute java -jar appSpring-0.0.1.jar.
  4. Using Google Chrome (any browser can be used) navigate to "https://localhost:8443".
  5. Enjoy it!

Backend diagrams

Backend controllers class diagrams

AdminController and services relationships

admin-controller-and-services

MainController and services relationships

main-controller-and-services

ResourceController and services relationships

resource-controller-and-services

SearchController and services relationships

search-controller-and-services

UserController and services relationships

user-controller-and-services

Backend services class diagrams

LogicService class diagrams
LogicService and services relationships

logic-service-and-services

LogicService and controllers relationships

logic-service-and-controllers

App rest controllers class diagrams

ActionRestController and services relationships

action-rest-controller

FineRestController and services relationships

fine-rest-controller

GenreRestController and services relationships

genre-rest-controller

ResourceCopyRestController and services relationships

resource-copy-rest-controller

ResourceRestController and services relationships

resource-rest-controller

ResourceTypeRestController and services relationships

resource-type-rest-controller

UserRestController and services relationships

user-rest-controller

Frontend

Running BREMS Frontend

  1. Download this repository (or clone it).
  2. Navigate to "frontend".
  3. Using your shell, execute npm install and then ng serve.
  4. Using Google Chrome (any browser can be used) navigate to "http://localhost:4200".
  5. Enjoy it!

Frontend diagrams

Frontend services

ActionService

action-service

FileService

file-service

FineService

fine-service

GenreService

genre-service

ResourceCopyService

resource-copy-service

ResourceService

resource-service

SessionService

session-service

UserService

user-service

Public module

Public component

public-component

Public module

public-module

Public routing module

public-routing-module

HomeComponent

home-component

ProfileComponent

profile-component

Admin module

Admin component

admin-component

Admin module

admin-module

Admin routing module

admin-routing-module

DashboardComponent

dashboard-component

ManageFinesComponent

manage-fines-component

ManageLoansComponent

manage-loans-component

ManageResourcesComponent

manage-resources-component

ManageUsersComponent

manage-users-component