Files
star-erp/resources/js/Pages/Warehouse/InventoryHistory.tsx
2026-01-07 13:06:49 +08:00

71 lines
3.0 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { Head, Link } from "@inertiajs/react";
import AuthenticatedLayout from "@/Layouts/AuthenticatedLayout";
import { Button } from "@/Components/ui/button";
import { ArrowLeft } from "lucide-react";
import { Warehouse } from "@/types/warehouse";
import TransactionTable, { Transaction } from "@/Components/Warehouse/Inventory/TransactionTable";
import { getInventoryBreadcrumbs } from "@/utils/breadcrumb";
interface Props {
warehouse: Warehouse;
inventory: {
id: string;
productName: string;
productCode: string;
quantity: number;
};
transactions: Transaction[];
}
export default function InventoryHistory({ warehouse, inventory, transactions }: Props) {
return (
<AuthenticatedLayout breadcrumbs={getInventoryBreadcrumbs(warehouse.id, warehouse.name, "庫存變動紀錄")}>
<Head title={`庫存異動紀錄 - ${inventory.productName}`} />
<div className="container mx-auto p-6 max-w-4xl">
{/* Header */}
<div className="mb-6">
<Link href={`/warehouses/${warehouse.id}/inventory`}>
<Button
variant="outline"
className="gap-2 button-outlined-primary mb-6"
>
<ArrowLeft className="h-4 w-4" />
</Button>
</Link>
<div className="flex items-center gap-2 text-sm text-gray-500 mb-2">
<span></span>
<span>/</span>
<span></span>
<span>/</span>
<span className="text-gray-900"></span>
</div>
<div className="flex items-center justify-between">
<div>
<h1 className="mb-2"></h1>
<p className="text-gray-600">
<span className="font-medium text-gray-900">{inventory.productName}</span>
{inventory.productCode && <span className="text-gray-500 ml-2">({inventory.productCode})</span>}
</p>
</div>
</div>
</div>
{/* Content */}
<div className="bg-white rounded-lg shadow-sm border p-6">
<div className="flex justify-between items-center mb-4 border-b pb-4">
<h3 className="font-medium text-lg"></h3>
<div className="text-sm text-gray-500">
<span className="font-medium text-gray-900">{inventory.quantity}</span>
</div>
</div>
<TransactionTable transactions={transactions} />
</div>
</div>
</AuthenticatedLayout>
);
}