Приложение предназначено для "покупки" офисной еды, взятой из наших холодильников.
Требования к мобильному приложению и исполнителю:
1. Платформы iOS/Android
2. Красивый, современный, удобный UI
3. Поддержка масштабируемой многоязычности
4. Удобная для доработок среда разработки
5. Необходимо только Front-end приложение, весь Back-end на нашей стороне
Предварительный функционал приложения
Регистрация пользователя:
Регистрация пользователя в мобильном приложении. (ФИО (отчество - опционально), номер телефона (сделать проверку по подтверждающему коду через СМС центр), e-mail (для восстановления аккаунта в случае утери тел), пароль).
* - информация о пользователе передается в Back-end, где пользователя активируют "вручную", т.о. у пользователя есть статус: активен/не активен
Привязка банковской карты пользователя для списания средств онлайн:
Фактически это предварительный платеж, путем вызова через API виджета платежного сервиса (все последующие оплаты будут проходить по предоставленному токену)
* - есть API выбранной платежной системы с данным необходимым функционалом
Использование холодильника (клиент):
Холодильник по умолчанию закрыт электрозамком (который управляется через Back-end)
Авторизация клиента - мобильным приложением: Сканирование QR кода наклеенного на холодильник (QR код фактически - это номер ID холодильника в системе), приложение передают в Back-end информацию о пользователе+ID холодильника
Если пользователь активный - Back-end откроет холодильник
Пользователь получает возможность брать товары
ВАЖНО:
Холодильники бывают 2-х типов (тип холодильника вернет Back-end, отсюда слегка разные UI):
а) с автоматическим контролером товаров внутри
б) без контроля товаров внутри, работающие на доверии
Если вариант холодильника "а", то взятые товары клиентом "видит" Back-end и в протоколе передает в приложение (вернее приложение получает список путем опроса)
Если вариант холодильника "б", то клиент должен считывать QR коды наклеенные на взятый товар в ручном режиме
По факту обоих вараинтов в мобильном приложении отображается список взятых товаров/цены/сумма - клиент нажимает "оплатить" - происходит автоматическое списание средств
Результат оплаты передается в Back-end
Использование холодильника (персонал):
Авторизация сотрудника сканированием QR кода? Back-end возвращает статус "сотрудник", приложение работает в режиме "сотрудник"
На экране отображается (полученный с Back-end) список товаров в хододильнике: Наименование/кол-во (срок годности некоторых товаров может подходить к концу (желтый) или уже закончился (красный), таким образом необходимо выделить соответствующим цветом строку с наименованием таких товаров)
* - конкретный просроченный товар сотрудник найдет сам
Под списком должна быть кнопка (в зависимости от типа холодильника):
Если вариант холодильника "а", то кнопка "ЗАГРУЗКА/ВЫГРУЗКА", при нажатии которой кнопка "активизируется" список при этом не меняется, сотрудник просто кладет/достает товары и это меняет кол-во товаров в списке
Если вариант холодильника "б", то 2-е отдельные кнопки ЗАГРУЗКА и ВЫГРУЗКА, при нажатии на выбранную - кнопка "активизируется" и появляется еще одна "СКАНИРОВАТЬ", нажимаем "сканировать" - работает камера на считывание QR кода с товара, считали - передали в Back-end, откуда вернулся обновленный список