1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/yybawang-ebank

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

ЭБэнк

Электронная система для внутреннего виртуального накопления баллов и агрегации платежей.

Проект функционально полностью готов к использованию, работает без сбоев и находится в стадии непрерывной поддержки. При возникновении проблем с использованием можно создать issue.

  • Вступил в стадию плавной поддержки.
  • Рекомендуется для использования в малых и средних проектах.

Этот проект является полностью открытым исходным кодом и имеет завершённый функционал (уже используется многими компаниями электронной коммерции). Мы будем продолжать оптимизировать проект на основе проблем, возникающих при эксплуатации в реальных условиях, а также обновлять код в ветке dev для публичного тестирования. Код в ветке master стабилен и подходит для небольших и средних проектов электронной коммерции. Приглашаем изучить документацию и использовать проект.

Выбор технологии проекта

PHP7.1+

Laravel5.5

Mysql5.7+ / MariaDB

Vue2

MDUI

Проект использует Vue для создания бэкенда. В этом проекте уже есть скомпилированные файлы для фронтенда.

Бэкенд-аккаунт и пароль:

  • admin
  • 123456

Введение

Этот электронный банк включает две основные функции:

1. Агрегация платежей

Агрегация платежей уже интегрирована с laravel-pay

  • Платёжная система Alipay для ПК
  • Платёжная система Alipay H5
  • Платёжная система Alipay APP
  • Реверсивная оплата через Alipay
  • Оплата картой через Alipay (реверсивная)
  • Сканирование кода Alipay (прямая оплата)
  • Корпоративный перевод Alipay
  • WeChat Official Account
  • WeChat H5
  • WeChat APP
  • Оплата через сканирование кода WeChat (прямая)
  • Оплата WeChat через карту (реверсивная)
  • WeChat Mini Program Payment
  • WeChat Corporate Transfer
  • WeChat Red Packet

Все способы оплаты вызывают возврат значения, которое можно найти в разделе «Создание единого заказа». Нет необходимости просматривать документацию laravel-pay. Поддерживается одновременный выбор баллов для совместной оплаты (только один из сторонних платёжных сервисов, неограниченное количество внутренних кошельков), а также реализация требований по накоплению баллов и другим функциям. Для других сторонних платёжных систем необходимо проверить исходный код и разработать собственную интеграцию.

2. Внутренние баллы

Баллы являются ключевым аспектом разработки, и API тщательно спроектирован. Каждый раз, когда происходит изменение баллов, оно записывается в таблицу для удобства аудита и бухгалтерского учёта. Подробности можно найти в белой книге проекта.

  1. Проект поддерживает различные методы реализации баллов для разных бизнес-логик проекта. У каждого типа баллов изначально есть системный общий счётчик, который можно использовать для пополнения или отправки пользователям
  2. Различные типы баллов могут быть преобразованы друг в друга, и все операции с баллами мы называем «переводами». У каждой операции с баллами должен быть отправитель и получатель, поэтому у системы изначально есть сумма на счёте, которая используется для вычета
  3. Каждая операция с баллами должна иметь причину перевода (параметр reason). Для каждой бизнес-операции существует своя причина, например, успешный вывод средств — 300001, отправка красного конверта — 300002. Это используется разработчиками для описания этой бизнес-операции на китайском языке и для подтверждения правильности баланса баллов пользователя после каждой операции перевода
  4. Переводы между различными типами баллов не ограничены, просто подключите свои бизнес-требования, и всё готово. Требуются ли какие-либо переводы, зависит от вашего бизнеса
  5. Подробнее... Что такое центральный банк, что такое системный банк, значение причины, мультипроектная интеграция см. белую книгу проекта

Документы

Прочтите онлайн-документы

github

github

码云(не гарантируется своевременность обновлений)

码云

Установка

Если вы используете Windows, из-за того, что проект включает в себя большие денежные расчёты (более 10^18, без использования bcmath), требуется PHP версии 7.1.12 или выше. Рекомендуется использовать docker + laradock для создания среды разработки, чтобы избежать проблемы с целочисленной длиной PHP в 2147483647. На платформах Mac/Linux такой проблемы нет.

laradock для установки среды разработки, тестирования и производства

Установка с помощью Makefile в Linux

1. cd [каталог проекта]
2. cp .env.example .env
// Создание базы данных
CREATE SCHEMA `ebank` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
3.  Отредактируйте файл .env, настройте базу данных, redis, SMTP и т. д., затем продолжите выполнение следующих команд
4. make && make install

Ручная установка в Windows

1. cd [каталог проекта]
2. copy .env.example .env
// Подключение к базе данных и выполнение оператора для создания базы данных
3. CREATE SCHEMA `ebank` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

// Отредактируйте файл .env для настройки базы данных, redis, SMTP и т.д., а затем выполните следующие команды
4. npm install && npm run prod
5. composer install
6. php artisan app:install

Последний шаг

Настройте nginx для доступа и мониторинга очередей:

В каталоге проекта есть примеры файлов ebank_nginx.conf и ebank_supervisor.ini. Вы можете настроить их самостоятельно.

План развития

  • SDK инкапсуляция, предоставляющая класс запроса API для отправки запросов API в библиотеки EBankSdk.php (просмотр кода) для любого другого фреймворка PHP, который также требует PHP версии 7.1 или выше
  • Централизованная система, несколько проектов соответствуют нескольким клиентам, баллы не мешают друг другу, реализуется создание одной системы, которую можно использовать для нескольких проектов
  • Настройка ключа API на стороне администратора, настройка ключа API на странице управления
  • Запись журнала вызовов интерфейса API на стороне клиента, удобная для устранения неполадок
  • Все меню на стороне администратора используют RESTful API
  • Настройка ставки, можно переключиться на нисходящий канал для подключения, реализовать функцию, аналогичную четырёхстороннему платежу
  • Графики статистики пользователей за день, вчерашних пользователей, потребления, доходов и т. д.
  • Статистика ошибок интерфейса клиента
  • Перепроектирование потока воды
  • Справочная документация по функциям на стороне администратора
  • Интеграция с hhxsv5/laravel-s, опционально постоянная память (запустите php bin/laravels start для запуска, также можно использовать supervisor для управления процессом(документация), только для обслуживания WEB-сервиса, очередь по-прежнему использует supervisor

Q && A

  • Q1: Почему в базе данных есть такие числа, как 2147483647?
  • A1: Проект не использует расширение bcmath, PHP версии 7.1.12 и выше напрямую поддерживает большие денежные расчёты, но PHP любой версии в среде Windows по-прежнему не может выполнять большие денежные расчёты напрямую, поэтому рекомендуется использовать docker for windows + laradock для создания среды разработки в среде Windows (также можно использовать supervisor), чтобы избежать проблем с большими денежными расчётами. Конечно, сервер также может использовать docker + laradock для построения той же производственной среды.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

:robot: Решения для виртуальных баллов и агрегации платежей в сфере электронной коммерции. Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/yybawang-ebank.git
git@api.gitlife.ru:oschina-mirror/yybawang-ebank.git
oschina-mirror
yybawang-ebank
yybawang-ebank
master