Git Product home page Git Product logo

projet10's Introduction

How to run the app?

1. What you need before starting :

  • jdk-11.0.1.jdk
  • apache-tomcat-9.0.21
  • apache-maven-3.6.1
  • PostgreSQL 10

2. Fork the configuration repository

https://github.com/majidaDev/projet7_config

3. Fork or download the repository Github

https://github.com/majidaDev/projet_7

4. Prepare the database (with pgAdmin)

  • Run the script projet_7_biblio.sql in pgAdmin

5. Configure application.properties in this configuration repository (mbook and mperson)

6. Generate a package for each service and deploy with tomcat

You have to generate a package for each service we need (follow the order bellow)

  1. Open your console
  2. Go in the service file
  3. Do a : mvn clean install AND ./mvnw spring-boot:run (for each service and follow the order bellow)
  4. Go in your tomcat file (here apache-tomcat-9.0.21) with your console, go in bin/ and do : bash startup.sh

THE ORDER TO FOLLOW TO DEPLOY THE APPLICATION

Ordre Microservice server.port
1 config-server 9101
2 eureka-server 9102
3 zuul-server 9004
4 mbook 9090
5 mperson 9091
6 client-ui 9089

Open the application and GO !

127.0.0.1:9089/

API Testing using Postman ?

to test the two API createloan and updateLoan You have two requests in the collection file Postman p7.postman_collection.json

projet10's People

Contributors

majidadev avatar dependabot[bot] avatar

Watchers

James Cloos avatar  avatar

projet10's Issues

Corrigez un bug dans la gestion des prolongations de prêt (par le client)

Nous avons découvert un bug de la gestion des prolongations de prêt. En effet, un usager peut prolonger un prêt après la date butoir. Il ne doit pas être possible pour l’usager de prolonger un prêt si la date de fin de prêt est dépassée.

La correction de cette anomalie est urgente car elle nous pose de gros problèmes de gestion. Actuellement beaucoup trop de personnes attendent le mail de rappel pour prolonger leur prêt. Cela entraîne la plainte de certains usagers à qui nous avions communiqué une date de retour et qui se déplacent en bibliothèque pour rien car le prêt a été prolongé a posteriori.

Je vous demande de livrer une nouvelle version de l’application au plus vite afin de corriger ce bug mais sans inclure nos autres demandes en cours. Nous souhaiterions pouvoir mettre en production rapidement sans avoir à faire de recette sur les autres évolutions demandées.

Ajoutez un système de réservation d’ouvrages (par le client)

Nous souhaiterions mettre en place un système de réservation de livres pour les usagers.

Le principe est le suivant :

L’usager peut vouloir emprunter un livre dont aucun exemplaire n’est actuellement disponible (ils sont tous en cours de prêt). Il a donc la possibilité de réserver l’ouvrage. Le premier à avoir réservé aura la priorité de la réservation dès le retour d’un exemplaire. Chaque ouvrage (titre, pas exemplaire) aura donc une liste d’attente de réservation. Dès qu’un exemplaire est de retour à la bibliothèque, un mail est envoyé au premier usager de la liste et il dispose de 48h pour venir le chercher. Passé ce délai, sa réservation est annulée et un mail est envoyé au suivant, etc.

Règles de gestions :

Tous les types d’ouvrages peuvent être réservés.
La liste de réservation ne peut comporter qu’un maximum de personnes correspondant à 2x le nombre d’exemplaires de l’ouvrage.
Il n’est pas possible pour un usager de réserver un ouvrage qu’il a déjà en cours d’emprunt
Quand un usager emprunte le livre réservé ou si le délai de 48h après la notification est dépassé, sa réservation est supprimée de la liste et le processus recommence pour l’usage suivant dans la liste
Sur l’application web :
Lors de la recherche d’ouvrage, pour ceux indisponibles, il doit y avoir la date de retour prévue la plus proche et le nombre de personnes ayant réservé l’ouvrage. Si la liste d’attente de l’ouvrage n’est pas complète, il doit pouvoir demander une réservation. Il sera alors ajouté à la liste d’attente
L’usager doit pouvoir avoir une liste des réservations qu’il a en cours avec pour chaque ouvrage la prochaine date de retour prévue et sa position dans la liste d’attente
L’usager doit pouvoir annuler une réservation
Avertissez-nous avant de livrer cette évolution afin que nous nous organisions. De plus cette demande n’est pas urgente et il est possible que nous vous demandions d’autres évolutions à embarquer en même temps dans la nouvelle version du système.

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.