/
syunya
/
Course2026
Обзор
Документация
Войти
/
syunya
/
Course2026
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/main/java/ru.machine.service/controller/MainMenuController.java
167 строк
4 KB
syunya
Update: main_menu.fxml, MainMenuController.java
23 июн 2026, 19:55
Верифицирован
23 июн 2026, 19:55
1509455
Код
Авторство
О чём код?
package ru.machine.service.controller; import javafx.fxml.FXML; import javafx.fxml.FXMLLoader; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.stage.Stage; import ru.machine.service.dao.RoleDAO; import ru.machine.service.util.Session; public class MainMenuController { @FXML private Label userLabel; @FXML private Label roleLabel; @FXML private Button btnUsers; @FXML private Button btnWorkTypes; @FXML private Button btnReports; @FXML public void initialize() { if (Session.getCurrentUser() == null) { return; } userLabel.setText( "Пользователь: " + Session.getCurrentUser().getFullName() ); try { RoleDAO roleDAO = new RoleDAO(); roleLabel.setText( "Роль: " + roleDAO.getRoleName( Session.getCurrentUser().getRoleId() ) ); } catch (Exception e) { e.printStackTrace(); } boolean isAdmin = Session.getCurrentUser().getRoleId() == 1; btnUsers.setVisible(isAdmin); btnUsers.setManaged(isAdmin); btnWorkTypes.setVisible(isAdmin); btnWorkTypes.setManaged(isAdmin); btnReports.setVisible(isAdmin); btnReports.setManaged(isAdmin); } @FXML private void openClients() { openWindow("/clients.fxml"); } @FXML private void openMachines() { openWindow("/machines.fxml"); } @FXML private void openRepairs() { openWindow("/repairs.fxml"); } @FXML private void openProfile() { openWindow("/profile.fxml"); } @FXML private void openUsers() { openWindow("/users.fxml"); } @FXML private void openWorkTypes() { openWindow("/work_types.fxml"); } @FXML private void openReports() { openWindow("/reports.fxml"); } @FXML private void logout() { try { Session.setCurrentUser(null); FXMLLoader loader = new FXMLLoader( getClass().getResource( "/login.fxml" ) ); Stage stage = (Stage) userLabel .getScene() .getWindow(); stage.setScene( new Scene( loader.load(), 400, 300 ) ); stage.setTitle("Авторизация"); } catch (Exception e) { e.printStackTrace(); } } private void openWindow(String fxml) { try { FXMLLoader loader = new FXMLLoader( getClass().getResource(fxml) ); Stage stage = (Stage) userLabel .getScene() .getWindow(); stage.setScene( new Scene( loader.load(), 1000, 700 ) ); } catch (Exception e) { e.printStackTrace(); } } }