Ejemplo n.º 1
0
    def update(session, id_grade, value, new_date, new_path_file, note,
               feedback):
        try:
            new_date = str_to_date(new_date)
            s = session.query(Grade).filter_by(id_grade=id_grade)
            if new_path_file == '':
                s.update({
                    Grade.value: value,
                    Grade.note: note,
                    Grade.feedback: feedback,
                    Grade.date: new_date
                })
            else:
                s.update({
                    Grade.value: value,
                    Grade.path_file: new_path_file,
                    Grade.note: note,
                    Grade.feedback: feedback,
                    Grade.date: new_date
                })
            session.commit()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 2
0
    def all(session, discipline, group_number):
        try:
            student_all: list = session.query(Student).join(Group).filter(
                Group.number == group_number).order_by(Student.fio).all()

            safety_all: list = session.query(Safety).join(Group).join(
                Discipline).filter(Group.number == group_number).filter(
                    Discipline.name == discipline).all()

            ls = []

            for i in student_all:
                row = []
                row.append(i.fio)

                for j in safety_all:
                    pass_safety = session.query(PassSafety).join(Student).join(Safety). \
                        filter(Student.id_student == i.id_student).filter(Safety.id_safety == j.id_safety).first()

                    if pass_safety:
                        row.append(str(pass_safety.date))
                    else:
                        row.append('')

                ls.append(row)

            ls = np.array(ls)

            return ls

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 3
0
    def all(session, discipline, group_number):
        try:
            student_all: list = session.query(Student).join(Group).filter(
                Group.number == group_number).order_by(Student.fio).all()

            work_all: list = session.query(Work).join(Group).join(
                Discipline).filter(Group.number == group_number).filter(
                    Discipline.name == discipline).all()

            ls = []

            history_all: list = session.query(HistoryGrade).all()

            for i in history_all:
                for j in work_all:
                    if i.id_work == j.id_work:
                        for k in student_all:
                            if i.id_student == k.id_student:
                                row = []
                                row.append(k.fio)
                                row.append(j.name)
                                row.append(i.action)
                                row.append(str(i.date))
                                row.append(i.value)

                                ls.append(row)

            ls = np.array(ls)
            return ls

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 4
0
    def show_name(session, group_number, discipline_name, flag_header=False):
        try:
            occupation_all: list = session.query(Occupation).join(Group).join(
                Discipline).join(ScheduledDay).filter(
                    Group.number == group_number).filter(
                        Discipline.name == discipline_name).order_by(
                            ScheduledDay.date).all()

            occupation_count: int = len(occupation_all)

            if flag_header:
                ls = []
                ls.append('ФИО студента')
            else:
                ls = []

            # Заполняем шапку таблицы
            for i in range(occupation_count):
                value = str(occupation_all[i].scheduled_day.date)
                value += "|" + occupation_all[i].class_format.name
                ls.append(value)
            return ls

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 5
0
    def show_name(session,
                  group_number: str,
                  discipline_name: str,
                  flag_header=False):
        try:
            work_all: list = session.query(Work).join(Group).join(
                Discipline).filter(Group.number == group_number).filter(
                    Discipline.name == discipline_name).order_by(
                        Work.id_work).all()

            work_count: int = len(work_all)

            if flag_header:
                ls = []
                ls.append('ФИО студента')
            else:
                ls = []

            # Заполняем шапку таблицы
            for i in range(work_count):
                ls.append(work_all[i].name)
                if flag_header:
                    ls.append('Дата защиты')
            return ls

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 6
0
    def add(session, discipline_name, group_number, name, task, note,
            grade_scale, new_date, isdeadline):
        try:
            new_date = str_to_date(new_date)
            g = session.query(Group).filter_by(number=group_number).first()
            id_group = g.id_group
            d = session.query(Discipline).filter_by(
                name=discipline_name).first()
            id_discipline = d.id_discipline
            max = grade_scale.split('-', 1)
            max = max[1]
            gr = session.query(GradeScale).filter_by(max=max).first()
            id_grade_scale = gr.id_grade_scale
            new_work = Work(id_group=id_group,
                            id_discipline=id_discipline,
                            id_grade_scale=id_grade_scale,
                            name=name,
                            task=task,
                            note=note,
                            deadline=new_date,
                            isdeadline=isdeadline)
            session.add(new_work)
            session.commit()
            session.flush()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 7
0
    def get_from_id(session, id_work):
        try:
            w = session.query(Work).filter_by(id_work=id_work).first()
            return w

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 8
0
    def get(session):
        try:
            settings = session.query(Settings).first()
            return settings.schedule_format

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 9
0
    def delete(session, number):
        try:
            s = session.query(Student).filter_by(number=number)
            s.delete()
            session.commit()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 10
0
    def set(session, new_value):
        try:
            s = session.query(Settings)
            s.update({Settings.schedule_format: new_value})
            session.commit()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 11
0
 def add(session, name):
     try:
         new = ClassFormat(name=name)
         session.add(new)
         session.commit()
         session.flush()
     except Exception as e:
         session.rollback()
         bd_error()
Ejemplo n.º 12
0
    def update(session, old_number, corps, number):
        try:
            s = session.query(Audience).filter_by(number=old_number)
            s.update({Audience.corps: corps, Audience.number: number})
            session.commit()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 13
0
 def add(session, corps, number):
     try:
         new_audience = Audience(corps=corps, number=number)
         session.add(new_audience)
         session.commit()
         session.flush()
     except Exception as e:
         session.rollback()
         bd_error()
Ejemplo n.º 14
0
    def update(session, old_name, name):
        try:
            s = session.query(ClassFormat).filter_by(name=old_name)
            s.update({ClassFormat.name: name})
            session.commit()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 15
0
    def delete(session, id_grade):
        try:
            s = session.query(Grade).filter_by(id_grade=id_grade)
            s.delete()
            session.commit()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 16
0
    def get(session, id_work, student_name):
        try:
            g = session.query(Grade).join(Work).join(Student).filter(
                Work.id_work == id_work).filter(
                    Student.fio == student_name).first()
            return g

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 17
0
 def add(self, session, number, note, spec):
     try:
         s = session.query(Specialty).filter_by(name=spec).first()
         id_spec = s.id_specialty
         new_group = Group(number=number, note=note, id_specialty=id_spec)
         session.add(new_group)
         session.commit()
         session.flush()
     except Exception as e:
         bd_error()
Ejemplo n.º 18
0
    def show_name(self, session):
        try:
            list_all = session.query(Discipline).all()
            ls = []
            for i in list_all:
                ls.append(i.name)
            return ls

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 19
0
    def get(session, group_number, discipline_name, work_choosen):
        try:
            w = session.query(Work).join(Group).join(Discipline).filter(
                Group.number == group_number).filter(
                    Discipline.name == discipline_name).filter(
                        Work.name == work_choosen).first()
            return w

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 20
0
    def show_name(session):
        try:
            list_all = session.query(Audience).order_by(Audience.corps).all()
            ls = []
            for i in list_all:
                value = i.corps + ' ' + i.number
                ls.append(value)
            return ls

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 21
0
    def update(session, old_number, fio, number, note):
        try:
            s = session.query(Student).filter_by(number=old_number)
            s.update({
                Student.number: number,
                Student.note: note,
                Student.fio: fio
            })
            session.commit()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 22
0
    def show_name(session, group_number: str):
        try:
            student_list: list = session.query(Student).all()
            ls: list = []
            for i in student_list:
                if i.group.number == group_number:
                    ls.append(i.fio)

            return ls

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 23
0
    def add(session, fio, number, note, group_number):
        try:
            g = session.query(Group).filter_by(number=group_number).first()
            id_group = g.id_group
            new_student = Student(fio=fio,
                                  number=number,
                                  note=note,
                                  id_group=id_group)
            session.add(new_student)
            session.commit()
            session.flush()

        except Exception as e:
            bd_error()
Ejemplo n.º 24
0
    def show_all(session):
        try:
            list = session.query(ClassFormat).all()
            ls = []
            for i in list:
                ls1 = []
                ls1.append(i.name)
                ls.append(ls1)

            return ls

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 25
0
    def all(session):
        try:
            grade_scale_list: list = session.query(GradeScale).all()
            ls: list = []
            for i in grade_scale_list:
                min = str(i.min)
                max = str(i.max)
                value = min + "-" + max
                ls.append(value)

            return ls

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 26
0
    def update(self, session, old_number, number, note, spec):
        try:
            s = session.query(Specialty).filter_by(name=spec).first()
            id_spec = s.id_specialty
            g = session.query(Group).filter_by(number=old_number)
            g.update({
                Group.number: number,
                Group.note: note,
                Group.id_specialty: id_spec
            })
            session.commit()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 27
0
    def show_all(session):
        try:
            list = session.query(Audience).all()
            ls = []
            for i in list:
                ls1 = []
                ls1.append(i.corps)
                ls1.append(i.number)
                ls.append(ls1)

            return ls

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 28
0
    def delete(session, id_work):
        try:
            grade = session.query(Grade).join(Work).filter(
                Work.id_work == id_work).all()
            for i in grade:
                id_grade = i.id_grade
                s = session.query(Grade).filter_by(id_grade=id_grade)
                s.delete()

            s = session.query(Work).filter_by(id_work=id_work)
            s.delete()
            session.commit()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 29
0
    def add(session, discipline, group_number, name):
        try:
            g = session.query(Group).filter_by(number=group_number).first()
            id_group = g.id_group
            d = session.query(Discipline).filter_by(name=discipline).first()
            id_discipline = d.id_discipline
            new_safety = Safety(name=name,
                                id_group=id_group,
                                id_discipline=id_discipline)
            session.add(new_safety)
            session.commit()
            session.flush()

        except Exception as e:
            session.rollback()
            bd_error()
Ejemplo n.º 30
0
    def update(session, fio, safety, new_date, discipline_name, group_number):
        try:
            s = session.query(PassSafety).join(Safety).join(Discipline).join(Group).join(Student).filter(
                Discipline.name == discipline_name) \
                .filter(Group.number == group_number).filter(Safety.name == safety).filter(Student.fio == fio).first()
            id = s.id_pass_safety

            s = session.query(PassSafety).filter_by(id_pass_safety=id)
            new_date = str_to_date(new_date)
            s.update({PassSafety.date: new_date})
            session.commit()

        except Exception as e:
            print(e)
            session.rollback()
            bd_error()