Разработать веб-сайт на Python версии 3.11 фреймворке Fast Api с использованием базы данных PostgreSQL для Научно-исследовательского сектора. Была добавлена библиотека sqlalchemy для подключения к базе данных. Инициализацию подключения к базе данных реализовано в модуле database.py (Смотреть в приложении). Сайт должен обладать визуальным интерфейсом, позволяющим пользователям вводить, корректировать и удалять информацию из таблиц базы данных. Приложение должно поддерживать поисковые запросы, которые были реализованы в лабораторных работах, но вместо использования конкретных констант запросов, представленных в лабораторных работах, должно давать возможность вводить параметры запроса. Кроме того, приложение может предоставлять интерфейс, который позволяет вводить произвольные SQL-запросы и отображать результаты выполнения запроса в виде таблицы. Спроектировать базу данных для предметной области "Научно-исследовательский сектор".
В терминах ER-модели описать планирование работы в научно-исследовательском секторе.
Сектор разрабатывает проекты по двум направлениям -агрегаты бесперебойного питания и приводные преобразователи частоты, причём каждое из направлений может быть представлено одновременно несколькими различными проектами, которые различаются по области применения (для атомных электростанций, железных дорог, обогатительных комбинатов и пр.) и по техническим параметрам (мощности, токи, напряжения, частоты и пр).
Как правило, каждый из проектов делится на стадии (разработка технического задания, подготовка технического предложения, эскизное проектирование, техническое проектирование и пр. ). Каждой стадии соответствуют свои этапы: например, разработка технического задания включает анализ технических требований, подготовку проекта технического задания, его согласование и утверждение. В свою очередь, каждый из этапов состоит из определённых операций: например, анализ технических требований включает ознакомление с требованиями заказчика, изучение аналогичных требований к прототипу, анализ технической информации об аналогах и т.д.
Планирование работы сектора заключается во временном упорядочении выполнения проектов, их стадий, этапов и операций сотрудниками сектора.
Сотрудники сектора объединены в группы по функциональному признаку (расчёт, моделирование, разработка, конструирование и пр.). В каждой из групп имеются сотрудники различного уровня квалификации (главный специалист, ведущий сотрудник, инженер и т.д.) и подготовки (специалисты узкого и широкого профиля).
Система должна эффективно выдавать ответы на следующие запросы:
- Сроки выполнения каждого из проектов в целом, а также его стадий, этапов и операций.
- Распределение этапов среди групп.
- Распределение операций среди сотрудников.