feat: 實作 Multi-tenancy 多租戶架構 (stancl/tenancy)
All checks were successful
Koori-ERP-Deploy-System / deploy-demo (push) Successful in 1m3s
Koori-ERP-Deploy-System / deploy-production (push) Has been skipped

- 安裝並設定 stancl/tenancy 套件
- 分離 Central / Tenant migrations
- 建立 Tenant Model 與資料遷移指令
- 建立房東後台 CRUD (Landlord Dashboard)
- 新增租戶管理頁面 (列表、新增、編輯、詳情)
- 新增域名管理功能
- 更新部署手冊
This commit is contained in:
2026-01-15 13:15:18 +08:00
parent 3e3d8ffb6c
commit 4f745c1021
51 changed files with 1954 additions and 1 deletions

34
app/Models/Tenant.php Normal file
View File

@@ -0,0 +1,34 @@
<?php
namespace App\Models;
use Stancl\Tenancy\Database\Models\Tenant as BaseTenant;
use Stancl\Tenancy\Contracts\TenantWithDatabase;
use Stancl\Tenancy\Database\Concerns\HasDatabase;
use Stancl\Tenancy\Database\Concerns\HasDomains;
/**
* 租戶 Model
*
* 代表 ERP 系統中的每一個客戶公司 (如:小小冰室、酒水客戶等)
*
* 自訂屬性 (存在 data JSON 欄位中,可透過 $tenant->name 存取):
* - name: 租戶名稱 (: 小小冰室)
* - email: 聯絡信箱
* - is_active: 是否啟用
*/
class Tenant extends BaseTenant implements TenantWithDatabase
{
use HasDatabase, HasDomains;
/**
* 定義獨立欄位 ( data JSON)
* 只有 id 是獨立欄位,其他自訂屬性都存在 data JSON
*/
public static function getCustomColumns(): array
{
return [
'id',
];
}
}