- Бордаченко Софія
- Радько Дарія
DigiUni Registry — це консольна інформаційна система для обліку студентів, викладачів, кафедр та факультетів університету. Програма підтримує CRUD-операції, пошук, сортування, авторизацію користувачів та збереження даних у файл.
При першому запуску програми система перевіряє наявність файлуDigiUni_Registry.json. Якщо файлу немає, система автоматично згенерує реалістичну стартову базу даних, щоб ви могли одразу протестувати пошук, сортування та інші функції.
- Вимоги
- Java 17+
- Maven
- Запуск
- Відкрити клас Main
- Запустити метод main()
Програма має три рівні доступу. За замовчуванням у системі зареєстровані такі користувачі (використовуйте їх для входу):
-
Адміністратор (Повний доступ + Управління користувачами)
- Логін: admin | Пароль: admin12
-
Менеджер (Доступ до додавання, редагування та видалення даних)
- Логін: Dasha | Пароль: 567
- Логін: Sofia | Пароль: 123
-
Користувач / Гість (Лише перегляд, пошук та сортування)
- Логін: Oleg | Пароль: user123
Управління здійснюється шляхом введення відповідної цифри з меню та натискання Enter. Щоб повернутися до попереднього меню, завжди використовуйте 0.
-
Інформація про університет Виводить загальну статичну довідку про НаУКМА (адреса, повна назва).
-
Управління Факультетами
- Для всіх: Перегляд існуючих факультетів.
- Для Admin/Manager: Додавання нових підрозділів, редагування інформації (зміна декана), видалення.
- Управління Кафедрами
- Для всіх: Перегляд існуючих кафедр.
- Для Admin/Manager: Додавання нових підрозділів, редагування інформації (зміна завідувача), видалення.
- Управління студентами
- Пошук: За ПІБ, курсом (1-6) або номером групи (1-6).
- Сортування: За алфавітом (в межах кафедри/факультету), за курсами.
- Для Admin/Manager: Реєстрація нових студентів, переведення на наступний курс, зміна групи, переведення на іншу кафедру, зміна статусу (навчається/академвідпустка/відрахований).
- Управління викладачами
- Пошук: За ПІБ або унікальним ID.
- Сортування: За алфавітом у межах факультету чи кафедри.
- Для Admin/Manager: Додавання викладачів із зазначенням їх посади (від лаборанта до декана), наукового ступеня та звання, редагування даних та видалення.
- Адмін-панель (Доступно лише для admin)
- Перегляд списку всіх зареєстрованих користувачів системи.
- Зміна ролей (можна підвищити USER до MANAGER або ADMIN).
- Видалення акаунтів (система не дозволить видалити власний акаунт).
Програма має вбудований захист від некоректного введення даних (перевірка форматів email, телефонів, дат народження). ВАЖЛИВО: Дані в системі жорстко пов'язані між собою. Якщо ви створюєте університет "з нуля", дотримуйтесь правильної послідовності додавання:
- Спочатку додайте Викладача (він стане деканом). Примітка: для першого викладача система може вимагати кафедру. Якщо база порожня, скористайтеся стартовою генерацією.
- Додайте Факультет (вказавши створеного викладача як декана).
- Додайте ще одного Викладача (для ролі завідувача кафедри).
- Додайте Кафедру (вказавши ID факультету та ПІБ завідувача).
- Тепер ви можете додавати Студентів, закріплюючи їх за існуючими кафедрами. Примітка: Під час введення ПІБ, ID або назв кафедр для переведення, програма перевіряє, чи дійсно вони існують у базі.
Усі зміни, які ви робите (редагування студентів, зміна ролей), відбуваються в оперативній пам'яті. Для того щоб зберегти дані, треба обов'язково виходьте з програми через пункт меню 0. Вихід у Головному меню. У цей момент система автоматично серіалізує всі об'єкти і перезапише JSON-файл. Якщо закрити консоль примусово (хрестиком), останні зміни буде втрачено.
- Дані автоматично зберігаються у файл: DigiUni_Registry.json
= При запуску:
- Якщо файл існує → дані завантажуються
- Якщо ні → створюються тестові дані