georgy-p / SDK-Garant-test-task

"SDK Garant" test task

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Тестовое задание на позицию Junior Frontend разработчик в «СДК Гарант»

Важно:

  • При разработке используйте версию ExtJS от 6.0.0.
  • При разработке фильтров нельзя использовать плагин «gridfilters». Используйте для фильтров компоненты textfield, combobox и т. д.
  • Библиотека: https://disk.yandex.ru/d/gTXAdutxRE5RHg
  • Документацию по фреймворку можно найти тут https://docs.sencha.com/extjs/7.2.0/.
  • Выполнение дополнительных заданий необязательно, но при выборе кандидата их выполнение будет учитываться.

Создать SPA приложение на фреймворке ext JS. Приложение имеет 2 экрана.

Экран 1:

Окно авторизации. Содержит окно с формой. Форма должна содержать текстовое поле «Пользователь», поле для пароля и кнопку войти. Вход осуществляется лишь при правильной паре логин пароль (логин admin пароль adm123). После входа экран авторизации должен закрыться, и пользователь должен попасть на экран 2.

Пример вида окна авторизации:

Screen Shot 2023-02-22 at 14 15 03

Экран 2:

Основной экран должен быть на всю ширину и высоту от окна браузера. Представляет из себя Панель, которая разделена на 2 части (таб панель и панель пользователя, функционал которых описан далее). Также у основного экрана есть верхнее меню с кнопкой «Документы».

Пример вида окна:

Screen Shot 2023-02-22 at 14 13 37

Панель пользователя:

Панель пользователя находиться с краю (для примера с правого) и представляет из себя текст «Добрый день admin» и кнопку выхода из системы. При нажатии на кнопку выхода из системы пользователя должно перекинуть на окно авторизации, а сам второй экран должен быть убран со странички

Таб панель:

Таб панель необходима для отображения вкладки документов. Вкладка документов открывается после клика на кнопку документы.

Вкладка документы:

На вкладке с товарами должна располагаться таблица документов со следующими колонками:

  • ID документа
  • Наименование документа
  • Описание документа
  • Подписан ли документ

Данные для таблицы получать из отдельного файла и описать в Store. При выводе если документ подписан нужно выделять ячейку зеленым фоном.

Пример вида вкладки:

Screen Shot 2023-02-22 at 14 13 49

При даблклике на документ открывается окно для изменения этого документа. Окно – форма в наименовании которой указан айди докумета, поле название, галочка подписать документ, и кнопка сохранить. Важно чтобы в окно данные подтягивались правильно из строки (если в строке написано что документ подписать то и галочка должна быть проставлена).

Screen Shot 2023-02-22 at 14 18 09

Дополнительные задания:

  • При помощи viewModel реализовать проброс логина с окна авторизации на панель пользователя (чтобы в поле приветствия вставлялся тот логин, который был введен в момент авторизации).
  • Реализовать 2 фильтра на вкладке документов по наименованию и чекбокс фильтр по подписи документа
  • Реализовать логику на сохранение товара: запрос на сервер с айди документа и измененными данными.
  • Реализовать логику добавления товара: открытие пустого окна и запрос на сервер со всеми данными (ответ от сервера писать необязательно).
  • Изменить основные цвета темы. Сделать красную тему чтобы она смотрелась лаконично.
  • Возможность альтернативного открытия товара в виде вкладки в таб панели (реализация на ваше усмотрение).

About

"SDK Garant" test task