电商类站内虚拟积分与聚合支付通用解决方案
项目功能基本满足使用,并流畅运行,持续维护中,如有使用问题可提交 issue
此项目完全开源且功能已完成全部代码并满足基本需求(已服务多家电商公司),会一直汲取上线项目遇到的业务等问题来优化项目,dev 分支会更新公测代码,master 分支为稳定版本,功能还在调整与完善中,但已满足中小型电商项目使用,欢迎阅读文档学习并使用
Mysql5.7+ / MariaDB
项目后台使用 vue 搭建,此项目中已自带编译后前端文件
后台账号密码
聚合支付已对接laravel-pay
所有支付方式调用后返回值的使用方式可在 【统一下单】 中查看即可,无需看 laravel-pay 的文档 了
支持同时选择积分一起组合支付(三方支付只能一个,内部钱包可无限个),实现积分抵扣等需求,其他三方支付需查阅源码自行封装开发
站内积分为核心开发点,详细的API设计,积分的每次经历都会记录在表,方便审核和对账,详情介绍可查阅下方文档的白皮书介绍部分。
- 项目支持多种积分实现项目不同的业务逻辑,每种积分初始会有个系统总控盘,用于充值或赠送给用户
- 多种积分可相互实现转化,积分的操作我们统称为《转账》,积分的加减都必须有一个出账人和一个进账人,所以项目初始的时候都会有个控盘金额在系统余额中用来扣除
- 积分每一笔的加减记录都必须有一个转账行为(reason参数),每个业务对应一个reason,如提现成功为300001,发送红包为300002,用于开发者对此业务的中文释义以及对账的核实,保证用户积分余额经过每一笔转账之后是正确的
- 每种积分互相转账都是无限制的,只需对接好你的业务需求即可,需求需要怎么转就怎么转
- more...中央银行是什么、系统银行是什么、reason意义、多项目对接 请参阅项目介绍白皮书
github
码云(不保证及时更新)
如果你是Windows环境,因项目中涉及大金额运算(万亿以上,未使用 bcmath),需使用 php >= 7.1.12,推荐学习并使用 docker + laradock 搭建开发环境,避免 php 计算整数长度变为 2147483647 问题,Mac/Linux 平台无此问题
Linux 下使用 Makefile 自动安装
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 示例文件,自行配置即可
- Q1: 为什么数据库金额有的是 2147483647 类似数字
- A1: 项目并未使用 bcmath 扩展,7.1.12 以上的 linux PHP 已直接支持大金额加减乘除等运算,windows 环境 PHP 任何版本还是不能直接大金额运算,所以 windows 下推荐使用 docker for windows + laradock 安装开发环境,避免大金额运算问题,当然服务器也可以使用 docker + laradock 搭建相同的生产环境
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。