Exemplo n.º 1
0
class EtudiantDBAPI(IPersistence):
    """
    Cette classe sert d'interface pour 
    la mannipulation de la base par le module core
    """
    def __init__(self):
        self.db_manager = DatabaseManager()
        self._conn = self.db_manager.get_connection()
        self._cursor = None

    def add(self, etudiant):
        """Permet d'insérer des données dans la table module"""
        self.req = "INSERT INTO etudiant(nom, prenom, matricule, telephone, adresse, email, date_naissance, lieu_naissance, nationalite, idFiliere, nom_contact, prenom_contact, telephone_contact, email_contact) \
        values(%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)"

        self.args = (etudiant.nom, etudiant.prenom, etudiant.matricule,
                     etudiant.telephone, etudiant.adresse, etudiant.email,
                     etudiant.date_naissance, etudiant.lieu_naissance,
                     etudiant.nationalite, etudiant.idFiliere,
                     etudiant.nom_contact, etudiant.prenom_contact,
                     etudiant.telephone_contact, etudiant.email_contact)
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème sur l'insertion dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def edit(self, id, module):
        """Permet de modifier des données de la table module """
        self.req = "UPDATE module SET nom_module = %s, \
                     volume_horaire = %s,  \
                     coefficient = %s WHERE id = %s"

        self.args = (module.nom_module,module.volume_horaire, \
                        module.coefficient, id)

        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème pendant la modification dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def delete(self, id):
        self.req = "DELETE FROM module WHERE id = %s"
        self.args = (id, )
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème pendant la suppression dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def get_by_id(self, id):
        self.etudiant = Etudiant()
        self.req = "SELECT * from etudiant WHERE id = %s"
        self.args = (id, )
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self.ligne = self._cursor.fetchone()
            if (self.ligne):
                self.etudiant.id = self.ligne[0]
                self.etudiant.nom_etudiant = self.ligne[1]
                self.etudiant.volume_horaire = self.ligne[2]
                self.etudiant.coefficient = self.ligne[3]
        except Error as error:
            print(f"Problème de la sélection dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

        return self.etudiant

    def get_all(self):
        self.all_etudiants = []
        self.req = "SELECT * from etudiant"
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req)
            self.lignes = self._cursor.fetchall()
            if (self.lignes):
                self.all_etudiants = self.lignes
        except Error as error:
            print(f"Problème de la sélection dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

        return self.all_etudiants
Exemplo n.º 2
0
class FicheNotesDBAPI(IPersistence):
    """
    Cette classe sert d'interface pour 
    la mannipulation de la base par le module core
    """
    def __init__(self):
        self.db_manager = DatabaseManager()
        self._conn = self.db_manager.get_connection()
        self._cursor = None

    def add(self, fiche_note):
        """Permet d'insérer des données dans la table module"""
        self.req = "INSERT INTO fiche_note(date, type_evaluation, numero_evaluation, id_prof, id_groupe, id_module) \
        values(%s, %s, %s, %s, %s, %s)"

        self.args = (fiche_note.date_creation, fiche_note.type_evaluation,
                     fiche_note.numero_evaluation, fiche_note.id_prof,
                     fiche_note.id_groupe, fiche_note.id_module)
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème sur l'insertion dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def add_note(self, note):
        """Permet d'insérer des données dans la table module"""

        print(self.args)
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème sur l'insertion dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def edit(self, id, fiche_note):
        """Permet de modifier des données de la table module """
        self.req = "UPDATE fiche_note SET type_evaluation = %s, \
                     numero_evaluation = %s,  \
                     WHERE id = %s"

        self.args = (fiche_note.type_evaluation, fiche_note.numero_evaluation,
                     id)

        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème pendant la modification dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def delete(self, id):
        self.req = "DELETE FROM fiche_note WHERE id = %s"
        self.args = (id, )
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème pendant la suppression dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def get_by_id(self, id):
        self.etudiant = FicheNote()
        self.req = "SELECT * from note WHERE id_etudiant = %s"
        self.args = (id, )
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self.ligne = self._cursor.fetchone()
            if (self.ligne):
                self.etudiant.id = self.ligne[0]
                self.etudiant.nom_etudiant = self.ligne[1]
                self.etudiant.volume_horaire = self.ligne[2]
                self.etudiant.coefficient = self.ligne[3]
        except Error as error:
            print(f"Problème de la sélection dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

        return self.etudiant

    def get_all(self):
        self.all_etudiants = []
        self.req = "SELECT * from fiche_note"
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req)
            self.lignes = self._cursor.fetchall()
            if (self.lignes):
                self.all_etudiants = self.lignes
        except Error as error:
            print(f"Problème de la sélection dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

        return self.all_etudiants
Exemplo n.º 3
0
class ProfDBAPI(IPersistence):
    """
    Cette classe sert d'interface pour 
    la mannipulation de la base par le module core
    """
    def __init__(self):
        self.db_manager = DatabaseManager()
        self._conn = self.db_manager.get_connection()
        self._cursor = None

    def add(self, prof):
        """Permet d'insérer des données dans la table module"""
        self.req = "INSERT INTO prof(matricule, nom, prenom, telephone, adresse, email, date_naissance, lieu_naissance, nationalite, specialite) \
        values(%s, %s, %s, %s, %s, %s, %s, %s, %s, %s)"

        self.args = (prof.matricule, prof.nom, prof.prenom, prof.telephone,
                     prof.adresse, prof.email, prof.date_naissance,
                     prof.lieu_naissance, prof.nationalite, prof.specialite)
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème sur l'insertion dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def edit(self, id, prof):
        """Permet de modifier des données de la table module """
        self.req = "UPDATE prof SET nom = %s, \
                     prenom = %s,  \
                     telephone = %s WHERE id = %s"

        self.args = (prof.nom,prof.prenom, \
                        prof.telephone, id)

        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème pendant la modification dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def delete(self, id):
        self.req = "DELETE FROM prof WHERE id = %s"
        self.args = (id, )
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème pendant la suppression dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def get_by_id(self, id):
        self.prof = Prof()
        self.req = "SELECT * from prof WHERE id = %s"
        self.args = (id, )
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self.ligne = self._cursor.fetchone()
            if (self.ligne):
                self.prof.id = self.ligne[0]
                self.prof.matricule = self.ligne[1]
                self.prof.nom = self.ligne[2]
                self.prof.prenom = self.ligne[3]
                self.prof.email = self.ligne[4]
                self.prof.specialite = self.ligne[5]
        except Error as error:
            print(f"Problème de la sélection dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

        return self.prof

    def get_all(self):
        self.all_professeurs = []
        self.req = "SELECT * from prof"
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req)
            self.lignes = self._cursor.fetchall()
            if (self.lignes):
                self.all_professeurs = self.lignes
        except Error as error:
            print(f"Problème de la sélection dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

        return self.all_professeurs
Exemplo n.º 4
0
class ModuleDBAPI(IPersistence):
    """
    Cette classe sert d'interface pour 
    la mannipulation de la base par le module core
    """
    def __init__(self):
        self.db_manager = DatabaseManager()
        self._conn = self.db_manager.get_connection()
        self._cursor = None

    def add(self, module):
        """Permet d'insérer des données dans la table module"""
        self.req = "INSERT INTO module(nom_module, volume_horaire, coefficient) \
        values(%s, %s, %s)"

        self.args = (module.nom_module, module.volume_horaire,
                     module.coefficient)
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème sur l'insertion dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def edit(self, id, module):
        """Permet de modifier des données de la table module """
        self.req = "UPDATE module SET nom_module = %s, \
                     volume_horaire = %s,  \
                     coefficient = %s WHERE id = %s"

        self.args = (module.nom_module,module.volume_horaire, \
                        module.coefficient, id)

        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème pendant la modification dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def delete(self, id):
        self.req = "DELETE FROM module WHERE module.id = %s"
        self.args = (id)
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème pendant la suppression dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def get_by_id(self, id):
        self.module = Module()
        self.req = "SELECT * from module WHERE id = %s"
        self.args = (id, )
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self.ligne = self._cursor.fetchone()
            if (self.ligne):
                self.module.id = self.ligne[0]
                self.module.nom_module = self.ligne[1]
                self.module.volume_horaire = self.ligne[2]
                self.module.coefficient = self.ligne[3]
        except Error as error:
            print(f"Problème de la sélection dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

        return self.module

    def get_all(self):
        self.all_modules = []
        self.req = "SELECT * from module"
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req)
            self.lignes = self._cursor.fetchall()
            if (self.lignes):
                self.all_modules = self.lignes
        except Error as error:
            print(f"Problème de la sélection dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

        return self.all_modules
Exemplo n.º 5
0
class GroupeDBAPI(IPersistence):
    """
    Cette classe sert d'interface pour 
    la mannipulation de la base par le module core
    """

    def __init__(self):
        self.db_manager = DatabaseManager()
        self._conn = self.db_manager.get_connection()
        self._cursor = None

    def add(self, groupe):
        """Permet d'insérer des données dans la table module"""  
        self.req = "INSERT INTO groupe(nom_groupe, cycle, niveau, id_filiere, date_creation) \
        values(%s, %s, %s, %s, %s)"
        self.args = (groupe.nom_groupe, groupe.cycle, groupe.niveau, groupe.id_filiere, groupe.date_creation)
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req,self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème sur l'insertion dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def edit(self, id, groupe):
        """Permet de modifier des données de la table module """
        self.req = "UPDATE groupe SET nom_groupe = %s, \
                     id_filiere = %s,  \
                     WHERE id = %s"
        
        self.args = (groupe.nom_groupe,groupe.id_filiere, id)
        
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req,self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème pendant la modification dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()
    
    def delete(self, id):
        self.req = "DELETE FROM groupe WHERE id = %s"
        self.args = (id,)
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req,self.args)
            self._conn.commit()
        except Error as error:
            print(f"Problème pendant la suppression dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

    def get_by_id(self, id):
        #self.groupe = Groupe()
        self.all_groupes = []
        self.req = "SELECT * from groupe WHERE id_filiere = %s"
        self.args = (id,)
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req, self.args)
            self.ligne = self._cursor.fetchall()
            if(self.ligne):
                self.all_groupes = self.ligne
                # self.groupe.id = self.ligne[0]
                # self.groupe.nom_groupe = self.ligne[1]
                # self.groupe.cycle = self.ligne[2]
                # self.groupe.niveau = self.ligne[3]
                # self.groupe.date_creation = self.ligne[4]
        except Error as error:
            print(f"Problème de la sélection dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()

        return self.all_groupes
    
    def get_all(self):
        self.all_groupes = []
        self.req = "SELECT * from groupe"
        try:
            self._cursor = self._conn.cursor()
            self._cursor.execute(self.req)
            self.lignes = self._cursor.fetchall()
            if(self.lignes):
               self.all_groupes = self.lignes
        except Error as error:
            print(f"Problème de la sélection dans la base: {error}")
        finally:
            self._cursor.close()
            self.db_manager.close_connection()
        
        return self.all_groupes