/**
  * Permet de repondre a une requete web En affichant la liste des Spectacles et representations :
  * Utiliste JQuery javascript pour la mise en forme
  *
  * @param HttpServletRequest request requete
  * @param HttpServletResponse response reponse
  * @throw IOException, ServletException
  * @return void
  */
 public void doGet(HttpServletRequest req, HttpServletResponse res)
     throws ServletException, IOException {
   // Get the session object
   HttpSession session = req.getSession(true);
   // Get the output stream
   ServletOutputStream out = res.getOutputStream();
   res.setContentType("text/html");
   out.println("<HEAD><TITLE>Reservation de tickets </TITLE></HEAD><BODY>");
   out.println("<h1> Reservations de tickets </h1>");
   out.println("<BODY bgproperties=\"fixed\" background=\"/images/rideau.JPG\">");
   out.println("<p align=\"Right\"><font face=\"Monotype Corsiva\"style=\"font-size: 16pt\">");
   try {
     // Open the file that is the first
     // command line parameter
     String relativeWebPath = "/WEB-INF/files/JAVASCRIPTPROG.txt";
     String absoluteDiskPath = this.getServletContext().getRealPath(relativeWebPath);
     File file = new File(absoluteDiskPath);
     FileInputStream fstream = new FileInputStream(file);
     // Get the object of DataInputStream
     DataInputStream in = new DataInputStream(fstream);
     BufferedReader br = new BufferedReader(new InputStreamReader(in));
     String strLine;
     // Read File Line By Line
     while ((strLine = br.readLine()) != null) {
       // Print the content on the console
       out.println(strLine);
     }
     // Close the input stream
     in.close();
   } catch (Exception e) { // Catch exception if any
     out.println("Error: " + e.getMessage());
   }
   if (session.isNew() || session.getAttribute("session.PanierListe") == null)
     out.println("<a href=\"admin/admin.html\">Caddie (vide)</a></font><br></p>");
   else if (session.getAttribute("session.PanierListe") != null)
     if (((PanierListe) session.getAttribute("session.PanierListe")).getSize() > 0)
       out.println(
           "<a href=\"admin/admin.html\">afficher caddie("
               + ((PanierListe) session.getAttribute("session.PanierListe")).Liste.size()
               + "Representations dans le panier)"
               + "</a></font><br></p>");
   try {
     Utilisateur user = Utilitaires.Identification(this);
     out.println(Utilitaires.AffichageAchat(user));
   } catch (Exception e) {
     out.println(e.getMessage());
   }
   out.println("</BODY>");
   out.close();
 }
Exemple #2
0
  /**
   * Permet de repondre a une requete web affiche le contenu du panier ansi que les differentes
   * Places disponible pour la Representation passee via la methode POST HTML Creation du panier ,
   * des différent Item mis dedans et le rajoute dans les cookie Du client si necessaire.
   *
   * @param HttpServletRequest request requete
   * @param HttpServletResponse response réponse
   * @throw IOException, ServletException
   * @return void
   */
  public void doGet(HttpServletRequest req, HttpServletResponse res)
      throws ServletException, IOException {
    HttpSession session = req.getSession(true);

    ServletOutputStream out = res.getOutputStream();
    res.setContentType("text/html");

    try {
      out.println("<HEAD><TITLE>Panier</TITLE></HEAD><BODY>");
      out.println("<h1>Contenu du panier:</h1>");
      out.println("<BODY bgproperties=\"fixed\" background=\"/images/rideau.JPG\">");

      String nom = req.getParameter("nom");
      String num = req.getParameter("num");
      String date = req.getParameter("date");
      String place = req.getParameter("place");
      String rang = req.getParameter("rang");
      SimpleDateFormat s = new SimpleDateFormat("dd/MM/yyyy HH");
      // ajout d'une place au panier

      if (place != null && rang != null && num != null && date != null) {
        if (session.getAttribute("session.PanierListe") != null) {
          ((PanierListe) session.getAttribute("session.PanierListe"))
              .addPlace(num, date, place, rang);
          if ((String) session.getAttribute("session.log") != null) {
            // utilisateur loggé
            out.println("votre panier est enregistre");
            Utilisateur user = Utilitaires.Identification(this);
            out.println(
                Utilitaires.enregistrerPlacePanier(
                    user, (String) session.getAttribute("session.log"), num, date, place, rang));
          }
        }
      }
      if (nom != null && num != null && date != null) {
        if (session.getAttribute("session.PanierListe") != null) {
          if (!((PanierListe) session.getAttribute("session.PanierListe"))
              .In(new Integer(num), date))
            ((PanierListe) session.getAttribute("session.PanierListe"))
                .Liste.add(
                    new Item(
                        new Spectacle(nom, new Integer(num)),
                        new Representation(new Integer(num), s.parse(date))));
        } else {
          // creation d'un nouveau panier
          PanierListe p = new PanierListe();
          p.Liste.add(
              new Item(
                  new Spectacle(new String(nom), new Integer(num)),
                  new Representation(new Integer(num), s.parse(date))));
          session.setAttribute("session.PanierListe", p);
        }
      }
      // attention desormais le caddie est obligatoirement alloué
      if (session.getAttribute("session.PanierListe") != null && date != null && num != null) {
        out.println("contenu  actuel du caddie:<br>");
        out.println(((PanierListe) session.getAttribute("session.PanierListe")).toString());
        out.println(
            "<h1>Veuillez selectionner une place pour la representation numero: "
                + num
                + "a la date du : "
                + date
                + ":</h1><br>");
        // Affichage des places Dispo pour la representation:
        Utilisateur user = Utilitaires.Identification(this);
        out.println(Utilitaires.AffichagePlaceAchat(user, num, date));
        out.println("<form class=\"link\" action=Validate \"method=POST>\n");
        out.println("<button type=\"submit\">VALIDER LE PANIER</button>\n");
        out.println("</form>");
      } else out.println("Le caddie est vide<br>");

      out.println("<hr><p><font color=\"#FFFFFF\"><a href=\"/index.html\">Accueil</a></p>");
      out.close();

    } catch (Exception e) { // Catch exception if any
      out.println("Error: " + e.getMessage());
    }
  }
  /**
   * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
   *
   * @param request servlet request
   * @param response servlet response
   * @throws ServletException if a servlet-specific error occurs
   * @throws IOException if an I/O error occurs
   */
  protected void processRequest(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    request.setCharacterEncoding("UTF-8");
    PrintWriter out = response.getWriter();

    try {
      String lien = "";
      HttpSession sessionHttp = request.getSession();

      // Pour le log du personnel
      if (request.getParameter("login") != null && request.getParameter("pwd") != null) {
        String login = request.getParameter("login");
        String pwd = request.getParameter("pwd");
        // On crypte le mot de passe
        String pwdCrypt = cryptPassword(pwd);
        Personnel lePersonnel = new Personnel();

        // On récupère un objet de type Personnel grâce à la fonction de connexion de cette classe
        lePersonnel = this.getUnPersonnel().connexionPersonnel(login, pwdCrypt);

        if (!lePersonnel.getLogin().equals("loginPwdErrone")) {
          if (lePersonnel.getLogin().equals("superAdmin")) {
            ArrayList<Service> lesServices = this.getUnService().rechercherServices();
            request.setAttribute("lesServices", lesServices);
            lien = "/Vue/adminProfils.jsp";
          } else {
            lien = "/Vue/apercuDossiers.jsp";
          }
        } else {
          lien = "/index.jsp?e=loginMdpErrone&login="******"/Vue/creationDossier.jsp?login="******"&pwd=" + pwdCrypt;

        sessionHttp.setAttribute("personnel", lePersonnel);

        // Pour la déconnexion du personnel
        /*} else if (request.getParameter("co").equals("logout")) {
        sessionHttp.removeAttribute("personnel");
        lien = "/index.jsp";*/

        // Déconnexion du personnel
      } else if (request.getParameter("co") != null) {
        if (request.getParameter("co").equals("logout")) {
          sessionHttp.removeAttribute("personnel");

          lien = "/index.jsp";
        }

        // Gestion du menu
      } else if (request.getParameter("page") != null) {
        if (request.getParameter("page").equals("apercuDossiers")) {
          lien = "/Vue/apercuDossiers.jsp";
        }

        // Recherche d'un dossier
      } else if (request.getParameter("recherche_dossier") != null) {
        String recherche = request.getParameter("recherche_dossier");
        ArrayList<Patient> lesPatients = new ArrayList<Patient>();
        lesPatients = this.getUnPatient().rechercherPatients(recherche, 2);
        request.setAttribute("lesPatients", lesPatients);
        request.setAttribute("recherche", recherche);

        lien = "/Vue/apercuDossiers.jsp";

        // Ajout d'un profil de personnel
      } else if (request.getParameter("login_ajout_profil") != null) {
        String nom = StringToMySQL(request.getParameter("nom_ajout_profil").toUpperCase());
        String prenom = StringToMySQL(request.getParameter("prenom_ajout_profil"));
        String login = StringToMySQL(request.getParameter("login_ajout_profil"));
        String pwd = request.getParameter("pwd_ajout_profil");
        String pwdCrypt = cryptPassword(pwd);
        String telDom = request.getParameter("telDom_ajout_profil");
        String telPort = request.getParameter("telPort_ajout_profil");
        String dateNaiss = dateToMySQL(request.getParameter("dateNaiss_ajout_profil"));
        String lieuNaiss = StringToMySQL(request.getParameter("lieuNaiss_ajout_profil"));
        String dateEmbauch = dateToMySQL(request.getParameter("dateEmbauch_ajout_profil"));
        String specMed = request.getParameter("speMed_ajout_profil");
        Boolean adminBool = false;
        if (request.getParameter("affect_ajout_profil").equals("1")) {
          adminBool = true;
        }
        String adresse = StringToMySQL(request.getParameter("adr_ajout_profil"));
        String cp = request.getParameter("cp_ajout_profil");
        String ville = StringToMySQL(request.getParameter("ville_ajout_profil"));
        int idService = Integer.parseInt(request.getParameter("service_ajout_profil"));
        Adresse sonAdresse = new Adresse(0, adresse, cp, ville);
        Service sonService = new Service(idService, "");
        Personnel lePersonnel =
            new Personnel(
                0,
                nom,
                prenom,
                login,
                pwdCrypt,
                telDom,
                telPort,
                dateNaiss,
                lieuNaiss,
                dateEmbauch,
                specMed,
                adminBool,
                sonAdresse,
                sonService);
        this.getUnPersonnel().ajouterPersonnel(lePersonnel);

        lien = "/index.jsp";

        // Lien vers la page de création d'un nouveau dossier
      } else if (request.getParameter("btn_lien_creation_dossier") != null) {
        ArrayList<Service> lesServices = this.getUnService().rechercherServices();
        request.setAttribute("lesServices", lesServices);
        lien = "/Vue/creationDossier.jsp";

        // Lien vers la page de création d'une nouvelle prescription (traitement ou bien
        // intervention chirurgicale)
      } else if (request.getParameter("type_lien_creation_prescription") != null) {
        request.setAttribute("idDossier", request.getParameter("id_dossier"));
        if (request.getParameter("type_lien_creation_prescription").equals("intervention")) {
          lien = "/Vue/creationChirurgie.jsp";
        } else {
          lien = "/Vue/creationPrescription.jsp";
        }

        // Création d'un dossier et d'un patient
      } else if (request.getParameter("nom_ajout_patient") != null) {
        String nom_patient = StringToMySQL(request.getParameter("nom_ajout_patient").toUpperCase());
        String prenom_patient = request.getParameter("prenom_ajout_patient");
        String adr_patient = StringToMySQL(request.getParameter("rue_ajout_patient"));
        String cp_patient = request.getParameter("cp_ajout_patient");
        String ville_patient = StringToMySQL(request.getParameter("ville_ajout_patient"));
        String num_secu_patient =
            request.getParameter("num_secu_ajout_patient")
                + request.getParameter("num_secu2_ajout_patient");
        String complementaire_dossier =
            StringToMySQL(request.getParameter("complementaire_ajout_dossier"));
        String nom_personne_prevenir_dossier =
            StringToMySQL(
                request.getParameter("nom_personne_prevenir_ajout_dossier").toUpperCase());
        String prenom_personne_prevenir_dossier =
            request.getParameter("prenom_personne_prevenir_ajout_dossier");
        String tel_personne_prevenir_dossier =
            request.getParameter("tel_personne_prevenir_ajout_dossier");
        String nom_personne_confiance_dossier =
            StringToMySQL(
                request.getParameter("nom_personne_confiance_ajout_dossier").toUpperCase());
        String prenom_personne_confiance_dossier =
            request.getParameter("prenom_personne_confiance_ajout_dossier");
        String tel_personne_confiance_dossier =
            request.getParameter("tel_personne_confiance_ajout_dossier");
        String medecin_traitant_dossier =
            StringToMySQL(request.getParameter("medecin_traitant_ajout_dossier"));
        String tel_medecin_traitant_dossier =
            request.getParameter("tel_medecin_traitant_ajout_dossier");
        int chambre_patient = Integer.parseInt(request.getParameter("chambre_ajout_patient"));

        Service sonService = new Service(0, "");
        Chambre saChambre = new Chambre(chambre_patient, 0, true, sonService);
        Dossier sonDossier =
            new Dossier(
                0,
                complementaire_dossier,
                nom_personne_prevenir_dossier,
                nom_personne_confiance_dossier,
                medecin_traitant_dossier,
                prenom_personne_prevenir_dossier,
                prenom_personne_confiance_dossier,
                tel_personne_prevenir_dossier,
                tel_personne_confiance_dossier,
                tel_medecin_traitant_dossier,
                false,
                false);
        Adresse sonAdresse = new Adresse(0, adr_patient, cp_patient, ville_patient);
        Patient lePatient =
            new Patient(
                0,
                nom_patient,
                prenom_patient,
                num_secu_patient,
                sonAdresse,
                sonDossier,
                saChambre);
        this.getUnPatient().ajouterPatient(lePatient);

        lien = "/Vue/apercuDossiers.jsp";

        // Lien pour afficher les informations sur un dossier
      } else if (request.getParameter("champ_visualisation_dossier") != null) {
        Personnel lePersonnel = (Personnel) sessionHttp.getAttribute("personnel");
        String idPatient = request.getParameter("champ_visualisation_dossier");
        ArrayList<Patient> lesPatients = new ArrayList<Patient>();
        lesPatients = this.getUnPatient().rechercherPatients(idPatient, 1);
        Patient lePatient = new Patient();
        lePatient = lesPatients.get(0);

        // Si le personnel est administratif
        if (lePersonnel.getAdminBool()) {
          ArrayList<Service> lesServices = this.getUnService().rechercherServices();
          request.setAttribute("lesServices", lesServices);

          ArrayList<Chambre> lesChambres =
              this.getUneChambre()
                  .rechercherChambresLibres(
                      lePatient.getUneChambre().getUnService().getIdService().toString());
          request.setAttribute("lesChambres", lesChambres);

          request.setAttribute("lePatient", lePatient);

          lien = "/Vue/modifDossier.jsp";
          // Si le personnel est un médecin
        } else {
          int idDossier = lePatient.getUnDossier().getId();
          ArrayList<Prescription> lesPrescriptions =
              this.getUnePrescription().rechercherPrescriptions("" + idDossier);
          request.setAttribute("lesPrescriptions", lesPrescriptions);
          String stringIdDossier = "" + idDossier;
          request.setAttribute("idDossier", stringIdDossier);

          lien = "/Vue/apercuPrescriptions.jsp";
        }

        // Modification d'un dossier et d'un patient
      } else if (request.getParameter("nom_modif_patient") != null) {
        String nom_patient = StringToMySQL(request.getParameter("nom_modif_patient").toUpperCase());
        String prenom_patient = request.getParameter("prenom_modif_patient");
        String adr_patient = StringToMySQL(request.getParameter("rue_modif_patient"));
        String cp_patient = request.getParameter("cp_modif_patient");
        String ville_patient = StringToMySQL(request.getParameter("ville_modif_patient"));
        String num_secu_patient =
            request.getParameter("num_secu_modif_patient")
                + request.getParameter("num_secu2_modif_patient");
        String complementaire_dossier =
            StringToMySQL(request.getParameter("complementaire_modif_dossier"));
        String nom_personne_prevenir_dossier =
            StringToMySQL(
                request.getParameter("nom_personne_prevenir_modif_dossier").toUpperCase());
        String prenom_personne_prevenir_dossier =
            request.getParameter("prenom_personne_prevenir_modif_dossier");
        String tel_personne_prevenir_dossier =
            request.getParameter("tel_personne_prevenir_modif_dossier");
        String nom_personne_confiance_dossier =
            StringToMySQL(
                request.getParameter("nom_personne_confiance_modif_dossier").toUpperCase());
        String prenom_personne_confiance_dossier =
            request.getParameter("prenom_personne_confiance_modif_dossier");
        String tel_personne_confiance_dossier =
            request.getParameter("tel_personne_confiance_modif_dossier");
        String medecin_traitant_dossier =
            StringToMySQL(request.getParameter("medecin_traitant_modif_dossier"));
        String tel_medecin_traitant_dossier =
            request.getParameter("tel_medecin_traitant_modif_dossier");
        int chambre_patient = Integer.parseInt(request.getParameter("chambre_modif_patient"));
        int idService = Integer.parseInt(request.getParameter("service"));

        int idPatient = Integer.parseInt(request.getParameter("id_modif_patient"));
        int idDossier = Integer.parseInt(request.getParameter("idDossier_modif_patient"));
        int idAdresse = Integer.parseInt(request.getParameter("idAdresse_modif_patient"));
        String ancienneChambre = request.getParameter("idChambre_modif_patient");

        Service sonService = new Service(idService, "");
        Chambre saChambre = new Chambre(chambre_patient, 0, true, sonService);
        Dossier sonDossier =
            new Dossier(
                idDossier,
                complementaire_dossier,
                nom_personne_prevenir_dossier,
                nom_personne_confiance_dossier,
                medecin_traitant_dossier,
                prenom_personne_prevenir_dossier,
                prenom_personne_confiance_dossier,
                tel_personne_prevenir_dossier,
                tel_personne_confiance_dossier,
                tel_medecin_traitant_dossier,
                false,
                false);
        Adresse sonAdresse = new Adresse(idAdresse, adr_patient, cp_patient, ville_patient);
        Patient lePatient =
            new Patient(
                idPatient,
                nom_patient,
                prenom_patient,
                num_secu_patient,
                sonAdresse,
                sonDossier,
                saChambre);
        this.getUnPatient().modifierPatient(lePatient, ancienneChambre);

        lien = "/Vue/apercuDossiers.jsp";

        // Affichage des informations d'une prescription
      } else if (request.getParameter("champ_visualisation_prescription") != null) {
        String idPrescription = request.getParameter("champ_visualisation_prescription");
        Prescription laPrescription =
            this.getUnePrescription().rechercherUnePrescription(idPrescription);
        request.setAttribute("laPrescription", laPrescription);

        lien = "/Vue/apercuUnePrescription.jsp";

        // Ajout d'une prescription d'un traitement
      } else if (request.getParameter("nom_medecin_ajout_prescription") != null) {
        String idDossier = request.getParameter("id_dossier");

        ArrayList<Medicament> lesMedicaments = new ArrayList<Medicament>();
        Personnel lePersonnel = (Personnel) sessionHttp.getAttribute("personnel");
        String idPersonnel = "" + lePersonnel.getId();

        Enumeration flds = request.getParameterNames();

        while (flds.hasMoreElements()) {
          String element = (String) flds.nextElement();
          String[] tab_med = element.split("medic");
          int length = tab_med.length;
          if (length > 1) {
            int num = Integer.parseInt(tab_med[1]);
            String nom_medic = StringToMySQL(request.getParameter(element));
            String nom_poso = StringToMySQL(request.getParameter("poso" + num));
            Medicament leMedicament = new Medicament(0, nom_medic, nom_poso);
            lesMedicaments.add(leMedicament);
          }
          // String value = request.getParameter(test);*/
        }
        this.getUnePrescription().creerPrescription(lesMedicaments, idPersonnel, idDossier);

        ArrayList<Prescription> lesPrescriptions =
            this.getUnePrescription().rechercherPrescriptions("" + idDossier);
        request.setAttribute("lesPrescriptions", lesPrescriptions);
        String stringIdDossier = "" + idDossier;
        request.setAttribute("idDossier", stringIdDossier);

        lien = "/Vue/apercuPrescriptions.jsp";

        // Ajout d'une intervention chirurgicale
      } else if (request.getParameter("nom_medecin_ajout_intervention") != null) {
        String idDossier = request.getParameter("id_dossier");

        Personnel lePersonnel = (Personnel) sessionHttp.getAttribute("personnel");
        String idPersonnel = "" + lePersonnel.getId();

        InterChirurgicale lInterChirurgicale =
            new InterChirurgicale(
                0,
                StringToMySQL(request.getParameter("type_creation_inter")),
                StringToMySQL(request.getParameter("remarque_creation_inter")));

        this.getUnePrescription()
            .creerInterChirurgicale(lInterChirurgicale, idPersonnel, idDossier);

        ArrayList<Prescription> lesPrescriptions =
            this.getUnePrescription().rechercherPrescriptions("" + idDossier);
        request.setAttribute("lesPrescriptions", lesPrescriptions);
        String stringIdDossier = "" + idDossier;
        request.setAttribute("idDossier", stringIdDossier);

        lien = "/Vue/apercuPrescriptions.jsp";

        // Gestion de la sortie des patients
      } else if (request.getParameter("champ_sortie_id_patient") != null) {
        // Si c'est pour la sortie du patient
        if (request.getParameter("champ_sortie_patient_type").equals("sortie")) {
          // Si c'est un médecin
          if (request.getParameter("champ_sortie_patient_type_personnel").equals("Medecin")) {
            // On autorise la sortie
            this.getUnDossier().autoriserSortie(request.getParameter("champ_sortie_id_patient"));
          } else {
            // On enregistre la sortie
            this.getUnDossier().enregistrerSortie(request.getParameter("champ_sortie_id_patient"));
          }

          lien = "/Vue/apercuDossiers.jsp";

          // Si c'est pour l'admission du patient
        } else {
          String idPatient = request.getParameter("champ_sortie_id_patient");
          ArrayList<Patient> lesPatients = new ArrayList<Patient>();
          lesPatients = this.getUnPatient().rechercherPatients(idPatient, 1);
          Patient lePatient = new Patient();
          lePatient = lesPatients.get(0);

          ArrayList<Service> lesServices = this.getUnService().rechercherServices();
          request.setAttribute("lesServices", lesServices);

          ArrayList<Chambre> lesChambres =
              this.getUneChambre()
                  .rechercherChambresLibres(
                      lePatient.getUneChambre().getUnService().getIdService().toString());
          request.setAttribute("lesChambres", lesChambres);

          request.setAttribute("lePatient", lePatient);

          lien = "/Vue/modifDossier.jsp";
        }

      } else {
        lien = "/index.jsp";
      }
      getServletContext().getRequestDispatcher(lien).forward(request, response);
    } finally {
      out.close();
    }
  }