Данная скриптовая программа позволяет создать таблицу по образовательным программам в формате Google Spreadsheet. В таблице отображается информация об участии студентов в проектах с указанием проектов и другой информации.
Репозиторий программы
"Вовлеченность студентов в проектную деятельность" - таблица.
Для того чтобы начать пользоваться гугл таблицей, Вам необходимо получить файл с реквизитами для создания и модерации будущей таблицы - config.json.
Его необходимо получить, совершив следующие шаги по ссылке:
Google Drive Api и Google Sheets Api.config.json.Для более управляемого поведения требуется использовать виртуальную среду. Можно использовать любой доступный вариант, но рекомендуется venv. Виртуальная среда избавит от проблем, связанных с изменениями в глобальном интерпретаторе.
Для того чтобы установить адаптер, вам необходимо клонировать данный репозиторий, используя данную команду:
https://git.miem.hse.ru/394/adapters/cabinet.git
Для корректной работы Вам необходимо установить все зависимости, указанные в requirements.txt, используя команду:
pip install --extra-index-url https://footprint.auditory.ru/pypi/simple -r requirements.txt
Процесс создания таблицы интегрирован в адаптер Cabinet MIEM.
adapter \
cabinet \
api.py - модуль для работы с API Cabinet
responses.py - модуль для создания pydantic моделей
adapter_script.py - модуль обрабатывающий информацию о проектах
config.py - модуль для работы с конфигурацией программы
database.py - модуль для обращения к модулям пакета footprint_mongoengine
table.py - модуль для создания таблицы
utils.py - дополнительные функции и константы
.dockerignore
.env.example - структура .env файла
.gitignore
Dockerfile - описание docker контейнера
main.py - основной скрипт программы
requirements.txt - список зависимостей программы
README.md - описание
table.json - конфигурационные данные для таблицы
Для конфигруации используется table.json.
В данном файле расписаны:
Все функции, реализующие таблицу, находятся в файле table.py
clear_sheet - удаляется все данные с текущего листаupdate_edu_pr - обновляет информацию на листе для конкретной ОПget_users_from_sheet - получает количество всех студентов для конкретной образовательной программыget_students_per_course_in_pr - получает количество всех студентов и количество студентов, участвующих в проектах, относительно каждого курса для определенной ОПupdate_stat_program - обновляет лист о вовлеченности в проекты студентов каждой ОП относительно курса обучения (Стат. ОП)project_count_per_dep - получает количество проектов для конкретного департаментаcount_heads_per_dep - получает количество руководителей проектов, относящихся к определенному департаментуupdate_depart_stat - обновляет лист со статистикой проектов относительно каждого департамента (Стат. Деп.)get_all_head_projects - получает список всех проектов для конркетного руководителяupdate_head_stat - обновляет лист со статистикой по проектам для каждого руководителя (Стат. Рук.)Таблицы об участии студентов в проектах расположены каждая на отдельном листе с соответствующим названием ОП (аббревиатура).
| Группа | ФИО | Почта | Записан на проект | ID проекта | Название проекта | Руководители | Руководители направления | Департамент | Ссылка на проект |
|---|---|---|---|---|---|---|---|---|---|
| соответствующее название | имя студента | почта студента с доменом miem.hse.ru | статус участие в проекте (Да/Нет) | № проекта | соответствующее название | фио руководителя | фио руководителя направления | аббревиатура департамента | соответствующая ссылка |
Таблица со статистикой вовлеченности в проекты студентов каждой ОП относительно курса обучения (Стат. ОП).
| Образовательная программа | Аббревиатура | Общее заполнение | 1 курс | 2 курс | 3 курс | 4 курс | 5 курс | 6 курс |
|---|---|---|---|---|---|---|---|---|
| соответствующее название | аббревиатура ОП | процент участия студентов среди всех потоков данной ОП | процент участия студентов среди всех потоков данной ОП для конретного курса | процент участия студентов среди всех потоков данной ОП для конретного курса | процент участия студентов среди всех потоков данной ОП для конретного курса | процент участия студентов среди всех потоков данной ОП для конретного курса | процент участия студентов среди всех потоков данной ОП для конретного курса | процент участия студентов среди всех потоков данной ОП для конретного курса |
Таблица со статистикой проектов относительно каждого департамента (Стат. Деп.).
| Департамент | Аббревиатура | Кол-во руководителей c проектами | Кол-во проектов | Направление | Кол-во студентов | Кол-во студентов в проектах |
|---|---|---|---|---|---|---|
| соответствующее название | аббревиатура департамента | число | число | аббревиатура | число | число |
Таблица со статистикой по проектам для каждого руководителя (Стат. Рук.).
| Руководитель проекта | Почта | Департамент | Всего студентов | Количество проектов | ID проекта | Название проекта | Количество студентов | Руководитель направления | Ссылка на проект |
|---|---|---|---|---|---|---|---|---|---|
| ФИО | соответствующая почта | название департамента | кол-во студентов во всех проектах руководителя | количество проектов руковдителя | № проекта | соответствующее название | количество студентов для каждого проекта | фио руководителя направления | соответствующая ссылка |