whilesmart/eloquent-assets
最新稳定版本:1.0.0
Composer 安装命令:
composer require whilesmart/eloquent-assets
包简介
Polymorphic asset register (equipment, domains, software, subscriptions) for Laravel applications.
README 文档
README
A polymorphic asset register for Laravel: one model for everything a business owns, whether
physical (equipment, vehicles) or digital (domains, software licenses, subscriptions). Each
asset is scoped to an owner (a workspace, organization, user) through
whilesmart/eloquent-owner-access,
carries a value, and optionally a renewal/expiry date.
Install
composer require whilesmart/eloquent-assets
php artisan migrate
Routes register automatically under the api prefix with auth:sanctum. Set
ASSETS_REGISTER_ROUTES=false to mount them yourself.
Owning model
Add the trait to whatever owns assets:
use Whilesmart\Assets\Traits\HasAssets; class Workspace extends Model { use HasAssets; } $workspace->assets()->create([ 'name' => 'acme.com', 'category' => 'domain', 'value_cents' => 1500, 'currency' => 'USD', 'expires_at' => now()->addYear(), 'renew_interval_months' => 12, 'details' => ['registrar' => 'Namecheap', 'auto_renew' => true], ]);
reference (e.g. AST-00001) is generated per owner when omitted. Category-specific fields
live in the details JSON column; common fields (value, status, expiry) are columns.
Endpoints
| Method | Path | Purpose |
|---|---|---|
| GET | /api/assets |
List (filter by category, status, expiring_within, q) |
| POST | /api/assets |
Create |
| GET | /api/assets/{asset} |
Show |
| PUT/PATCH | /api/assets/{asset} |
Update |
| DELETE | /api/assets/{asset} |
Soft delete |
| POST | /api/assets/{asset}/renew |
Advance expires_at by months (or renew_interval_months) |
| POST | /api/assets/{asset}/retire |
Mark retired |
Renewals
Asset::query()->expiringWithin(30) returns assets due within 30 days. Host apps can run a
scheduled sweep over this scope to send renewal reminders.
Status & category
AssetStatus: in_use, assigned, in_stock, maintenance, expiring, expired,
retired, disposed. AssetCategory lists the suggested categories, but category is a
plain string so new categories need no schema change.
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 2
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-06-11