Exemplo n.º 1
0
    def __s_modificare(self):
        """
        Functia citeste datele de intrare si tipareste rezultatul / mesajul de eroare pentru modificarea studentului.
        """

        if lista_stud.get_length() == 0:
            print(
                "Nu exista niciun student in baza de date, deci nu se poate efectua modificarea!"
            )

        else:
            print(cyan("Lista de studenti este:"))
            print(cyan(lista_stud.get_printable_content()))

            print(
                yellow(
                    "Introduceti ID-ul studentului pe care doriti sa il modificati: ",
                    'bold'))

            ok = 0
            while not ok:
                try:
                    stud_id = input().strip()

                    srv_student = ServiceStudent()
                    srv_student.srv_pre_modificare_student(stud_id)

                    print(
                        yellow(
                            "Introduceti noul set de date pentru studentul ales.\n"
                            "Fiecare pereche de date de intrare ar trebui sa contina ID-ul studentului, numele si "
                            "prenumele, dar si numarul grupei, separate prin cate o virgula si cate un spatiu.",
                            'bold'))

                    ok2 = 0
                    while not ok2:
                        try:
                            intrare = input()

                            srv_student = ServiceStudent()
                            srv_student.srv_modificare_student(
                                stud_id, intrare)

                            ok = 1
                            ok2 = 1

                            print(
                                cyan("Modificarea a fost efectuata cu succes!",
                                     'bold'))
                            print(
                                cyan(lista_stud.get_printable_content(),
                                     'bold'))

                        except Exception as ex:
                            print(red(ex, 'bold'))

                except Exception as ex:
                    print(red(ex, 'bold'))
Exemplo n.º 2
0
    def __s_adaugare(self):
        """
        Functia citeste datele de intrare si tipareste rezultatul / mesajul de eroare pentru adaugarea studentului.
        """

        print(
            yellow(
                "Introduceti datele studentului pe care doriti sa il adaugati.\n"
                "Fiecare pereche de date de intrare ar trebui sa contina ID-ul studentului, numele si prenumele, "
                "dar si numarul grupei, separate prin cate o virgula si cate un spatiu.",
                'bold'))

        ok = 0
        while not ok:
            try:
                intrare = input().strip()

                srv_student = ServiceStudent()
                srv_student.srv_adaugare_student(intrare)

                ok = 1

                print(cyan("Adaugarea a fost efectuata cu succes!", 'bold'))
                print(cyan("Lista de studenti a devenit:", 'bold'))
                print(cyan(lista_stud.get_printable_content(), 'bold'))

            except Exception as ex:
                print(red(ex, 'bold'))
Exemplo n.º 3
0
    def __s_generare(self):
        """
         Functia citeste datele de intrare si tipareste lista cu studentii generati aleator.
        """

        print(
            yellow(
                "Introduceti numarul de studenti pe care doriti sa ii generati:",
                'bold'))

        ok = 0
        while not ok:
            try:
                intrare = input().strip()

                srv_student = ServiceStudent()
                srv_student.srv_solve_generare_student(intrare)

                print(cyan("Lista de studenti generata aleator este:", 'bold'))
                print(cyan(lista_stud.get_printable_content(), 'bold'))

                ok = 1

            except Exception as ex:
                print(red(ex, 'bold'))
Exemplo n.º 4
0
    def __s_afisare(self):
        """
        Functia afiseaza lista de studenti.
        """

        if lista_stud.get_length() != 0:
            print(cyan(lista_stud.get_printable_content(), 'bold'))

        else:
            print("Lista de studenti este vida!\n")
Exemplo n.º 5
0
    def __s_stergere(self):
        """
        Functia citeste datele de intrare si tipareste rezultatul / mesajul de eroare pentru stergerea studentului.
        """

        if lista_stud.get_length() == 0:
            print(
                "Nu exista niciun student in baza de date, deci nu se poate efectua stergerea!"
            )

        else:
            print(cyan("Lista de studenti este:", 'bold'))
            print(cyan(lista_stud.get_printable_content(), 'bold'))

            print(
                yellow(
                    "Introduceti ID-ul studentului pe care doriti sa il eliminati din baza de date: ",
                    'bold'))

            ok = 0
            while not ok:
                try:
                    stud_id = input().strip()

                    srv_student = ServiceStudent()
                    srv_student.srv_stergere_student(stud_id)

                    ok = 1

                    print(cyan("Stergerea a fost efectuata cu succes!",
                               'bold'))
                    print(cyan("Lista de studenti a devenit:", 'bold'),
                          end=" ")
                    if lista_stud.get_length() == 0:
                        print(cyan("vida.", 'bold'))

                    else:
                        print('\n', end="")
                        print(cyan(lista_stud.get_printable_content(), 'bold'))

                except Exception as ex:
                    print(red(ex, 'bold'))
Exemplo n.º 6
0
    def __a_notare(self):
        """
        Functia citeste datele de intrare si tipareste rezultatul / mesajul de eroare pentru notarea unei probleme
        asignate.
        """

        if lista_stud.get_length() == 0:
            print(
                red(
                    "Nu exista niciun student in baza de date, deci nu se poate efectua asignarea!",
                    'bold'))

        else:
            if lista_prob.get_length() == 0:
                print(
                    red(
                        "Nu exista nicio probleme in baza de date, deci nu se poate efectua asignarea!",
                        'bold'))

            else:
                print(cyan("Lista de studenti este:", 'bold'))
                print(cyan(lista_stud.get_printable_content(), 'bold'))

                print(
                    yellow(
                        "Introduceti ID-ul studentului caruia doriti sa ii notati o problema: ",
                        'bold'))

                ok = 0
                while not ok:
                    try:
                        intrare = input().strip()

                        srv_asignare = ServiceAsignare()

                        student = srv_asignare.srv_pre_asignare_problema(
                            intrare)

                        if lista_asignari.get_nr_probleme(student) == 0:
                            raise NotareError(
                                "Studentul cu ID-ul dat nu are nicio problema asignata! Introduceti alt "
                                "ID:")

                        print(
                            cyan("Studentul are acum asignate problemele: ",
                                 'bold'))
                        print(
                            cyan(
                                lista_asignari.get_probleme_from_student(
                                    student), 'bold'))

                        print(
                            yellow(
                                "Introduceti numarul laboratorului si numarul problemei asignate studentului"
                                " pe care doriti sa o notati studentului:",
                                'bold'))

                        ok2 = 0
                        while not ok2:
                            try:
                                intrare2 = input().strip()

                                srv_asignare.srv_pre_notare_problema(
                                    student, intrare2)

                                print(
                                    yellow(
                                        "Introduceti nota (numar intreg cuprins intre 1 si 10) pe care doriti sa "
                                        "o asignati studentului la problema introdusa:",
                                        'bold'))

                                ok3 = 0
                                while not ok3:
                                    try:
                                        intrare3 = input().strip()

                                        srv_asignare.srv_notare_problema(
                                            student, intrare2, intrare3)

                                        print(
                                            cyan(
                                                "Studentul are acum asignate problemele: ",
                                                'bold'))
                                        print(
                                            cyan(
                                                lista_asignari.
                                                get_probleme_from_student(
                                                    student), 'bold'))

                                        ok = 1
                                        ok2 = 1
                                        ok3 = 1

                                    except Exception as ex:
                                        print(red(ex, 'bold'))

                            except Exception as ex:
                                print(red(ex, 'bold'))

                    except Exception as ex:
                        print(red(ex, 'bold'))
Exemplo n.º 7
0
    def __a_asignare(self):
        """
        Functia citeste datele de intrare si tipareste rezultatul / mesajul de eroare pentru asignarea unei probleme.
        """

        if lista_stud.get_length() == 0:
            print(
                "Nu exista niciun student in baza de date, deci nu se poate efectua asignarea!"
            )

        else:
            if lista_prob.get_length() == 0:
                print(
                    "Nu exista nicio problema in baza de date, deci nu se poate efectua asignarea!"
                )

            else:
                print(cyan("Lista de studenti este:", 'bold'))
                print(cyan(lista_stud.get_printable_content(), 'bold'))

                print(cyan("Lista de probleme este:", 'bold'))
                print(cyan(lista_prob.get_printable_content(), 'bold'))

                print(
                    yellow(
                        "Introduceti ID-ul studentului caruia doriti sa ii asignati o problema: ",
                        'bold'))

                ok = 0
                while not ok:
                    try:
                        intrare = input().strip()

                        srv_asignare = ServiceAsignare()

                        student = srv_asignare.srv_pre_asignare_problema(
                            intrare)

                        print(
                            yellow(
                                "Introduceti numarul laboratorului si numarul problemei pe care doriti sa o "
                                "asignati studentului:", 'bold'))

                        ok2 = 0
                        while not ok2:
                            try:
                                intrare2 = input().strip()

                                srv_asignare.srv_asignare_problema(
                                    student, intrare2)

                                ok = 1
                                ok2 = 1

                                print(
                                    cyan(
                                        "Studentul are acum asignate problemele:",
                                        'bold'))
                                print(
                                    cyan(
                                        lista_asignari.
                                        get_probleme_from_student(student),
                                        'bold'))

                            except Exception as ex:
                                print(red(ex, 'bold'))

                    except Exception as ex:
                        print(red(ex, 'bold'))