feat(inventory): 開放倉庫編號編輯、優化調撥單條碼搜尋與庫存匯入範本雙分頁說明

This commit is contained in:
2026-02-06 16:36:14 +08:00
parent 200d1989bd
commit e018b75783
11 changed files with 555 additions and 20 deletions

View File

@@ -12,6 +12,10 @@ use App\Modules\Inventory\Models\Product;
use App\Modules\Inventory\Models\Inventory;
use App\Modules\Inventory\Models\InventoryTransaction;
use App\Modules\Inventory\Models\WarehouseProductSafetyStock;
use App\Modules\Inventory\Imports\InventoryImport;
use App\Modules\Inventory\Exports\InventoryTemplateExport;
use Maatwebsite\Excel\Facades\Excel;
use Symfony\Component\HttpFoundation\BinaryFileResponse;
use App\Modules\Core\Contracts\CoreServiceInterface;
@@ -603,4 +607,35 @@ class InventoryController extends Controller
return redirect()->back()->with('error', '未提供查詢參數');
}
/**
* 匯入入庫
*/
public function import(Request $request, Warehouse $warehouse)
{
$request->validate([
'file' => 'required|mimes:xlsx,xls,csv',
'inboundDate' => 'required|date',
'notes' => 'nullable|string',
]);
try {
Excel::import(
new InventoryImport($warehouse, $request->inboundDate, $request->notes),
$request->file('file')
);
return back()->with('success', '庫存資料匯入成功');
} catch (\Exception $e) {
return back()->withErrors(['file' => '匯入過程中發生錯誤: ' . $e->getMessage()]);
}
}
/**
* 下載匯入範本 (.xlsx)
*/
public function template()
{
return Excel::download(new InventoryTemplateExport, '庫存匯入範本.xlsx');
}
}