/LacoGig

Primary LanguageSwift

LacoGig | Данил Терлецкий. Telegram – @tdanil123

Настройки проекта:

  • Минимальная поддерживаемая iOS – 15
  • Верстка кодом на UIKit
  • Поддержка только iPhone
  • Только портретная ориентация экрана
  • Запрет на использование внешних библиотек
  • Архитектура проекта – MVP

Описание функционала:

  1. Необходимо реализовать список подработок с возможностью выбора для дальнейшего бронирования.
  2. При нажатии на ячейку подработки происходит её выбор. Можно выбрать несколько таких ячеек. Выбор сопровождается изменением UI ячейки.
  3. Количество выбранных ячеек отображается в кнопке.
  4. Нажатие на кнопку «Забронировать» вызывает системный алерт с текстом «Вы заработали **** рублей» с указанием суммы заработка за все выбранные подработки.
  5. При отсутствии выбранных подработок кнопка становится неактивной и меняет текст на «Выберите подработки».
  6. На экране присутствует системный компонент для поиска.
  7. Поиск фильтрует содержание списка по названию профессии и названию работодателя.
  8. Поиск не сбрасывает состояние выбранных подработок.
  9. Для создания списка используется UICollectionViewCompositionalLayout и UICollectionViewDiffableDataSource.
  10. Для моделей данных использовать строго структуры. Не менять свойства моделей напрямую из ячеек.
  11. Реализовать восстановление состояния выбранных подработок после перезапуска приложения через UserDefaults.

Ресурсы:


Результат:

image image image image