panigale / laravel5-point-system
There is no license information available for the latest version (1.1.0.9) of this package.
1.1.0.9
2023-08-07 00:25 UTC
Requires
- php: >=7.0.0
Requires (Dev)
- mockery/mockery: ~1.0
- phpunit/phpunit: ~6.0
This package is auto-updated.
Last update: 2026-07-07 07:12:50 UTC
README
Install
composer require panigale/laravel5-point-system
php artisan vendor:publish --provider="Panigale\PointSystemServiceProvider"
migrate point tables
php artisan migrate
功能
use Illuminate\Foundation\Auth\User as Authenticatable;
use Panigale\Point\Traits\HasRoles;
class User extends Authenticatable
{
use HasPoints;
// ...
}
可以自定義點數的名目,例如:
建立一個點數項目名為 event:1,並且這個點數將在 $expiryDateTime 過期
Create Point Rule
PointRoles::create(‘event:1’ ,$expiryDateTime)
add Points
並將點數賦予給 user
$user->addPoints('event:1' ,$numbers)
usage Point
將點數從 user 身上扣除
$user->usagePoint('event:1' ,$numbers)
or
$user->usagePoint([
'point1' => 200,
'point2' => 300
])
會取出所有未過期的點數,如果沒有指定什麼種類扣除,將會自動依照建立順序進行扣除(先進先出)
current Points
取得使用者目前所有可用點數
$currentPoints = $user-> currentPoints()
$event1Point = $currentPoints->even_1
all Points
取得使用者目前的所有點數(包含不可用)
$points = $user->allPoints()
enoughToUsePoint
點數是否足夠使用
$user->enoughToUsePoint([
'一般點數' => 200,
'紅利點數' => 500
])
or
$user->enoughToUsePoint(200)
migration
- point_rules
- points
- point_usages
License
Skeleton is released under the MIT License.