Цей Web-додаток розгорнуто на власному хостингу / This Web application is deployed on my own hosting: https://diplomas-rails.vladloz.pp.ua/
Web-додаток призначений для підготовки до друку документів про вищу освіту на основі замовлень із Єдиної державної електронної бази з питань освіти (ЄДЕБО).
Перелік документів, які можна згенерувати за допомогою цього додатку (після завершення його розроблення):
- Диплом молодшого бакалавра.
- Диплом молодшого спеціаліста (застарілий).
- Диплом бакалавра.
- Диплом спеціаліста (застарілий).
- Диплом магістра.
Також з його допомогою можна згенерувати дублікати дипломів, зазначених у п.п. 1-5.
Вхідною інформацією для додатку є:
- Файли замовлень на дипломи у форматі XML, які вивантажені з ЄДЕБО і містять дані про осіб, яким повинні бути видані дипломи.
- Файли шаблонів у форматі Microsoft Word (.dotx), які містять форми дипломів, затверджені МОН України.
Результатом є файли дипломів у форматі Microsoft Word 2007+ (.docx), у яких дані випускників вписані у форми дипломів. Усі файли дипломів однієї генерації упаковано в zip-архів.
Web-додаток створено з використанням фреймворку Ruby on Rails: Ruby version 3+; Rails version 7.0. XML-файли замовлень і zip-архіви з файлами дипломів зберігаються з використанням технології Active Storage.
- Створити модель Order для зберігання замовлень у сховищі, контролер, і в'юшку, в якій має бути назва додатку, короткий опис призначення і форма для завантаження замовлень. У контролері створити два методи:
- index - формує перелік замовлень;
- create - завантажує замовлення з комп'ютера користувача у сховище.
- Після того, як у методі create буде завантажено хоча б один XML-файл, необхідно доповнити в'юшку формою для видалення замовлень і списком завантажених замовлень.
- Написати тести для пп. 1 і 2.
- Створити у контролері метод delete_all для видалення замовлень з бази даних і сховища. Доповнити тести.
- Створити на в'юшці форму для генерації дипломів. Підготувати файли шаблонів дипломів у форматі Word (.dotx) і розмістити їх у каталозі /public/templates.
- Створити модель Diploma для розміщення згенерованих дипломів у сховищі. Доповнити тести.
- Створити у контролері метод get_diplomas, який повинен парсити XML-файл кожного замовлення і, застосовуючи відповідний шаблон, генерувати docx-файли дипломів і зберігати їх у cховищі.
- Доповнити метод get_diplomas кодом для створення zip-архіву з файлами дипломів і вивести на в'юшку посилання для скачування цього zip-архіву на комп'ютер користувача. Доповнити тести.