DigiHub

Портфель360 — цифровые сервисы школы

Школьная платформа, которая связывает кабинеты родителей и сотрудников, организацию питания, учёт проходов и работу терминалов столовой.

Клиентский проект.

Портфель360: школьные сервисы и мобильные веб-кабинеты родителя и учителя

О продукте

Портфель360 объединяет ежедневные школьные процессы в ролевых кабинетах. Родитель видит баланс, питание и события ребёнка; учитель работает с классами и заявками; школа и поставщик питания управляют своими операциями. В состав проекта входят веб-интерфейс, desktop-клиенты, POS столовой и Android-приложение. Клиентский проект; название заказчика не раскрывается.

Задача

Связать разные рабочие процессы, сохранив понятный интерфейс для каждой роли. Родителю нужен быстрый ответ о своём ребёнке, учителю — действия по назначенным классам, столовой — заявки и выдача питания. При этом необходимо учитывать область доступа, историю операций и работу внутри школы при потере внешнего соединения.

Решение

Спроектировали кабинеты вокруг ежедневных задач. Общий Go API обслуживает веб и приложения, сервер проверяет разрешения и область доступа. Планирование питания связывает каталоги, группы классов и учебный календарь. Для локальной работы предусмотрены школьный сервер, PostgreSQL и очередь событий; desktop-клиенты используют SQLite для кэша и офлайн-операций.

Рабочий день начинается с нужных действий

Главные страницы разделены по задачам. Родителю показываем выбранного ребёнка, баланс, питание и сообщения. Учителю — посещаемость, заявку на питание и назначенные классы. Адаптивный веб-интерфейс сохраняет эти сценарии на телефоне.

Мобильные веб-кабинеты родителя и учителя в Портфель360
Скриншоты адаптивной веб-версии. Имена, школа, суммы и классы созданы для тестовых сценариев.

От меню — к назначению питания

Планирование начинается с каталога блюд и комплексов. Из них собираются меню и цикл, затем выбираются школы, группы и даты. Отдельный предпросмотр позволяет проверить результат до записи. Повторный запрос с тем же идентификатором назначения не создаёт дубли.

Схема планирования питания: каталог, меню и цикл, предпросмотр, календарь
Схема реализованного процесса планирования питания, подготовленная для кейса.

Школьный контур и облако

Для рабочих мест внутри школы предусмотрен локальный сервер. Desktop-клиенты и POS взаимодействуют с ним, а изменения попадают в очередь синхронизации. Такая архитектура отделяет локальные операции от доступности внешнего канала; после восстановления связи узлы обмениваются накопленными событиями.

Схема школьного сервера, desktop и POS клиентов, очереди событий и облачного узла
Упрощённая схема архитектуры. На иллюстрации нет адресов серверов и сведений о заказчике.

Как это работает

Роль определяет рабочий контекст

Кабинет показывает нужные разделы и действия. Сервер отдельно проверяет разрешения, школу и назначенные классы; переход по прямой ссылке не расширяет доступ.

Питание по учебному календарю

Поставщик собирает меню и циклический план, выбирает школы, период и правило для неучебных дней. Предпросмотр показывает будущие назначения. Перед записью сервер повторно проверяет состав, цены и пересечения с календарём.

Локальная работа и последующая синхронизация

Desktop и POS могут обращаться к школьному серверу по локальной сети. Операции сохраняются в базе и очереди событий, а обмен с облачным узлом выполняется при доступном соединении.

Действия с понятной историей

Личный кабинет связывает баланс, питание, проходы и уведомления ребёнка. Для сотрудников предусмотрены отчёты и диагностика операций, чтобы разбирать конкретные записи в их рабочем контексте.

Результат работы

Разработана система связанных школьных сервисов: ролевые кабинеты, баланс и история операций, питание, проходы, уведомления и отчёты. Подготовлены отдельные клиенты для рабочих мест и мобильных пользователей, локальный школьный узел и синхронизация с облаком. Рабочие экраны и сценарии доступа проверяются на синтетических данных. Публичный кейс показывает реализованные возможности без раскрытия заказчика и данных школьников.

  • Go
  • PostgreSQL
  • React
  • TypeScript
  • Flutter
  • Dart
  • Kotlin
  • SQLite