1. 實作倉儲管理系統 (Warehouse Management):包含總覽、庫存、調撥、機台庫存與補貨模組。 2. 建立倉儲相關資料結構:新增 warehouses, warehouse_stocks, stock_in_orders, stock_movements, transfer_orders, replenishment_orders 等資料表。 3. 優化商品管理 (Product Management) 介面:調整商品與類別管理的分頁、搜尋與編輯邏輯,並導入極簡奢華風 UI。 4. 增強遠端機台管理 (Remote Machine Management):優化機台清單、庫存監控與遠端出貨介面,提升載入效能。 5. 更新全站導覽選單 (Sidebar):整合倉儲管理入口,並修復側邊欄語法錯誤。 6. 標準化分頁組件 (Pagination):套用 luxury 奢華風分頁樣式。 7. 補齊多語系語系檔 (i18n):更新 zh_TW.json,包含倉儲與商品模組相關詞彙。
83 lines
1.5 KiB
PHP
83 lines
1.5 KiB
PHP
<?php
|
||
|
||
namespace App\Models\Warehouse;
|
||
|
||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||
use Illuminate\Database\Eloquent\Model;
|
||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||
use App\Traits\TenantScoped;
|
||
|
||
class Warehouse extends Model
|
||
{
|
||
use HasFactory, SoftDeletes, TenantScoped;
|
||
|
||
protected $fillable = [
|
||
'company_id',
|
||
'name',
|
||
'type',
|
||
'address',
|
||
'manager_user_id',
|
||
'is_active',
|
||
];
|
||
|
||
protected $casts = [
|
||
'is_active' => 'boolean',
|
||
];
|
||
|
||
/**
|
||
* Scope:僅篩選啟用的倉庫
|
||
*/
|
||
public function scopeActive($query)
|
||
{
|
||
return $query->where('is_active', true);
|
||
}
|
||
|
||
/**
|
||
* Scope:僅篩選總倉
|
||
*/
|
||
public function scopeMain($query)
|
||
{
|
||
return $query->where('type', 'main');
|
||
}
|
||
|
||
/**
|
||
* Scope:僅篩選分倉
|
||
*/
|
||
public function scopeBranch($query)
|
||
{
|
||
return $query->where('type', 'branch');
|
||
}
|
||
|
||
/**
|
||
* 倉庫負責人
|
||
*/
|
||
public function manager()
|
||
{
|
||
return $this->belongsTo(\App\Models\System\User::class, 'manager_user_id');
|
||
}
|
||
|
||
/**
|
||
* 倉庫庫存(各商品)
|
||
*/
|
||
public function stocks()
|
||
{
|
||
return $this->hasMany(WarehouseStock::class);
|
||
}
|
||
|
||
/**
|
||
* 庫存異動紀錄
|
||
*/
|
||
public function movements()
|
||
{
|
||
return $this->hasMany(StockMovement::class);
|
||
}
|
||
|
||
/**
|
||
* 入庫單
|
||
*/
|
||
public function stockInOrders()
|
||
{
|
||
return $this->hasMany(StockInOrder::class);
|
||
}
|
||
}
|