Fingli Group

Тест для php-разработчиков

Задание: На основе фильтров формы #form-filter получить список деклараций с сайта Федеральной службы по аккредитации и вывести список в таблицу #declaration-list, со всеми указанными в таблице полями.

Выполнение задачи должно занять менее 4-х часов. В случае возникновения сложностей авторизации и получения данных на сайте ФСА, можно задать уточняющие вопросы, чтобы не тратить лишнее время на поиски решения.

  1. Доработать форму:
    1. Добавить недостающие опции в поле "Статус";
    2. Добавить фильтр по номеру декларации о соответствии;
    3. Добавить фильтры по дате регистрации декларации "с" и "по";
    4. Добавить фильтры по дате окончания действия декларации "с" и "по";
    5. Добавить ограничение по запрашиваемому размеру списка деклараций (25/50/100);
    • Использовать стили Bootstrap
  2. С помощью Ajax, отправить фильтры в формате json в php-скрипт текущего приложение;
  3. На основе фильтров получить с сайта список деклараций;
  4. Вернуть ответ в формате json;
    • Ответ должен содержать статус получения списка и массив деклараций;
    • Объект декларации должен содержать только поля, указанные в таблице;
    • В случае возникновения ошибки, должен отправляться соответствующий http код, название и описание ошибки;
  5. Вывести список деклараций.
    • Используя базовые стили Bootstrap, выделить строки цветом на основе статуса декларации;
    • В случае ошибки получения списка, вывести соответствующее сообщение с описанием ошибки;
  6. Результатом выполнения задания должен быть новый репозиторий.

Авторизация на сайте ФСА

POST: https://pub.fsa.gov.ru/login '{"username": "anonymous", "password": "hrgesf7HDR67Bd"}'

Directory structure

app/            contains application files
public_html/    contains the entry script and Web resources
vendor/         contains dependent 3rd-party packages