/
evernotenkai
/
DataBaseXJavaProject
Обзор
Документация
Войти
/
evernotenkai
/
DataBaseXJavaProject
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/app/ui/admin/AdminDashboardView.java
54 строки
2 KB
Makson4ik
Весь проект с src db и прочим делом
12 май 2026, 22:43
12 май 2026, 22:43
431f4aa
Код
Авторство
О чём код?
package app.ui.admin; import app.model.DashboardStats; import app.service.DashboardService; import app.ui.components.PageHeader; import app.ui.components.StatCard; import app.ui.components.UiKit; import app.util.Dialogs; import javafx.geometry.Insets; import javafx.scene.layout.GridPane; import javafx.scene.layout.VBox; public class AdminDashboardView extends VBox { private final StatCard teachers = new StatCard("Преподаватели", "0"); private final StatCard students = new StatCard("Студенты", "0"); private final StatCard courses = new StatCard("Курсы", "0"); private final StatCard users = new StatCard("Аккаунты", "0"); private final StatCard submissions = new StatCard("Отправки", "0"); public AdminDashboardView(DashboardService service) { getStyleClass().add("content-root"); setSpacing(18); getChildren().add(new PageHeader("Обзор системы", "Ключевые показатели, чтобы администратор видел картину целиком.")); GridPane grid = new GridPane(); grid.setHgap(16); grid.setVgap(16); grid.add(teachers, 0, 0); grid.add(students, 1, 0); grid.add(courses, 2, 0); grid.add(users, 3, 0); grid.add(submissions, 4, 0); getChildren().add(grid); VBox card = UiKit.card( UiKit.section("Что делает администратор"), UiKit.subtitle("Создаёт пользователей, назначает преподавателей на курсы и зачисляет студентов."), UiKit.subtitle("Через этот кабинет подключаются все основные справочники и организационные процессы.") ); card.setPadding(new Insets(18)); getChildren().add(card); try { DashboardStats stats = service.loadAdminStats(); teachers.setValue(String.valueOf(stats.getFirst())); students.setValue(String.valueOf(stats.getSecond())); courses.setValue(String.valueOf(stats.getThird())); users.setValue(String.valueOf(stats.getFourth())); submissions.setValue(String.valueOf(stats.getFifth())); } catch (Exception e) { Dialogs.error("Ошибка dashboard", e); } } }