ТЗ переведено с английского гугл переводчиком. Срок 3-5 дней. Админку можно делать на любом Laravel хакатоне. Дизайн как таковой не нужен обычный бутстрап.
1- Письмо электронной почты получено почтовым сервером
2- Мы получаем с заданием cron почтовый ящик IMAP для получения электронной почты
3- Мы анализируем электронную почту (электронное письмо всегда в одном формате)
3.1. Информация, которую мы должны хранить в нашей БД: номер позиции, название продукта, описание продукта, количество, цена и ссылочный номер, идентификатор электронной почты, хэшированный идентификатор электронной почты (это будет наш токен в нашем будущем URL-адресе нашему клиенту) и примечание (Может иметь несколько позиций за один заказ)
4- Мы создаем заказ и храним его в нашей БД (задаем статус заказа «created»)
5- Мы отправляем электронное письмо клиенту со ссылкой для перехода к оплате (мы используем хешированный идентификатор электронной почты как токен в URL-адресе)
6- Клиент должен будет ввести свои платежные данные и информацию о доставке (флажок, чтобы проверить, совпадает ли его с тем, чтобы он не вводил информацию 2 раза)
7- Исходя из его адреса доставки, мы добавляем налоги (нам нужно установить налоги в БД, чтобы мы могли получить% от налогов, больше информации об этом в разделе администратора)
7.1. Также будет добавлена плата за посылку на основе информации о БД (до налогов, дополнительной информации в разделе администратора)
8- Мы обращаемся к API-интерфейсу beanstream для обработки платежа
9- Если платеж не выполнен, сообщение об ошибке
10- Если платеж будет успешным, отправьте электронное письмо клиенту и в магазине, чтобы подтвердить, что платеж в порядке. Измените статус заказа в БД на "оплаченную"
-------
Раздел администратора
Вы можете использовать bootstrap для этого раздела, вам не нужно быть фантастическим, просто работающим и плавным.
Что мы можем сделать в разделе администратора:
1- Список заказов (paginate), быстрый просмотр ID / items & quantity / total price / button для просмотра более подробной информации / изменения / изменения статуса.
2- Изменение налогов для каждой провинции (данные можно найти здесь для начальной настройки
www.calculconversion.com/... 2.1. Я вижу что-то подобное в БД [id, канадский налог, провинциальный налог, код провинции] / 1, 5, 9.975, QC
2.2 код провинции здесь должен соответствовать такому выбору, который мы разрешаем в нашей форме информации о доставке, чтобы вы могли сопоставлять налоги с областью адресов доставки
3 тарифы доставки, уметь определять стоимость доставки по общей стоимости заказа и по провинции,
3.1 что-то вроде [(0,29.99) от 0 до 29.99 $, цена доставки, код провинции]
3.1.1 пример: 0,29,99; 10 $; QC | 30,59,99; 30 долларов США; QC | 0,29.99; 15 $; ON