Данное мобильное приложение выполняет роль агрегатора магазинов, цель - быстрый и удобный поиск продуктов. Дополнительная информация - http://pberry.ru/
- Поиск магазинов по названию продукта (основная киллер фича);
- Сортировка результатов поиска по рейтенгу/цене/растоянию;
- Просмотр информации о магазине, местоположении, ассортименте, а так же отзывах;
- Возможность добавлять в список покупок, из списка продуктов (записная книжка для похода в магазин) с сохранением статуса;
- Возможность отправить свой отзыв о магазине.
Некоторый функционал не попал в проектную работу, а именно:
- Добавление магазина в закладки, для получения в последствии уведомлений;
- Добавления в корзину из списка продуктов компании.
Данный функционал планируется добавить позже, уже не в рамках разработки проектной работы для Otus.
Для тестирования приложения необходимо подгрузить последний коммит ветки developer, запустить проект. Далее нужно ввести ключевое слово в поле поиска, например "все" - данное слово специально введено в тэги продуктов что бы отобразить несколько магазинов.Далее уже можно зайти в любой из найденных магазинов и искать по названию любого продукта из этого магазина. Еще варианты поиска:
- Барьер
- Мебель
Так же можно попробывать заполнить несколько продуктов через админку и найти их в приложении, доступы будут указаны ниже.
Сверху справа расположена кнопка для откртия меню выбора сортировки, после выбора элементы должны меняться в соотвествии с параметрами запроса.
Для добавление в список продуктов необходимо перейти в магазин, и выбрать необходимые продукты.
Статус покупки продукта должен сохраняться, проверить это можно перезайдя в приложение.
Вся информация о компании должна быть расположена в третьей вкладке, а расположение на карте во второй.
При добавлении нового отзыва, он должен добавться в список, а так же в общем списке магазинов (в поиске) у данного магазина должен смениться рейтинг.Сайт: https://lk.pberry.ru Логин: otusAdmin Пароль: Su35uES
Для тестирования был добавлен временный магазин.
- Alamofire
- Realm
Для реализации данного проекта, был выбран один из прострейших архитектурных паттернов MVP + ServiceLocator для менеджмента сервисов.