简介
只要在开发项目中用户需要使用余额就可以使用此插件,比如说用户的余额、积分、金豆、抽奖次数等,可自定义余额类型
预览
查看总后台的用户余额
安装插件
sh
composer require superadminx/balance
卸载插件
sh
composer remove superadminx/balance
使用
扩展自己的余额类型
1、在plugin/balance/config/app.php
中设置自己的余额类型,可增加、修改、减少自己的余额类型
查看代码
php
<?php
use support\Request;
return [
'debug' => getenv('DE_BUG') == 'true' ? true : false,
'controller_suffix' => '',
'controller_reuse' => true,
'version' => '1.0.0',
// 各种余额类型
'balance_type' => [
[
'field' => 'money', // 字段名称
'title' => '余额', // 字段中文
'precision' => 2 // 小数点保留位数
],
[
'field' => 'integral',
'title' => '积分',
'precision' => 0
],
]
];
2、修改数据表sa_balane
中的字段,修改同上,增加、修改、减少自己的余额字段
TIP
完成以上两步即可,后台的列表、明细、导出等都会自动更改为新的余额类型
如果是删除某余额类型,如删除积分integral,最好同时删除一下sa_balance_details表中balance_type=integral
的数据
程序内部使用
在程序内部用提供了两个方法:
php
// 获取用户的余额,如果新用户注册后想初始化用户的余额,也可以调此方法
$userBalance = \plugin\balance\api\Balance::get(
// 用户id
$userId,
// 可选,余额类型,否则返回所有的
$balanceType
);
// 变更用户的余额
// 成功不返回任何值,失败会抛出错误
// 不允许修改余额为负数,如张三给李四转账,都不用先判断张三余额是否足够(因为余额不足会抛出错误),直接先调用此方法扣除张三的余额,在增加李四的余额即可
\plugin\balance\api\Balance::change(
// 用户id
$userId,
// 变更的余额类型,如 money
$balanceType,
// 变更的值,正数为加,负数为减
$changeValue,
// 标题,变更的原因
$title
);