feat(inventory): 實作過期與瑕疵庫存總計顯示,並強化庫存明細過期提示
This commit is contained in:
@@ -135,6 +135,12 @@ export default function InventoryTable({
|
||||
<span className="text-sm text-gray-500">
|
||||
{hasInventory ? `${group.batches.length} 個批號` : '無庫存'}
|
||||
</span>
|
||||
{group.batches.some(b => b.expiryDate && new Date(b.expiryDate) < new Date()) && (
|
||||
<Badge className="bg-red-50 text-red-600 border-red-200">
|
||||
<AlertTriangle className="mr-1 h-3 w-3" />
|
||||
含過期項目
|
||||
</Badge>
|
||||
)}
|
||||
</div>
|
||||
<div className="flex items-center gap-4">
|
||||
<div className="text-sm">
|
||||
@@ -217,7 +223,23 @@ export default function InventoryTable({
|
||||
<TableCell>${batch.total_value?.toLocaleString()}</TableCell>
|
||||
</Can>
|
||||
<TableCell>
|
||||
{batch.expiryDate ? formatDate(batch.expiryDate) : "-"}
|
||||
{batch.expiryDate ? (
|
||||
<div className="flex items-center gap-2">
|
||||
<span className={new Date(batch.expiryDate) < new Date() ? "text-red-600 font-medium" : ""}>
|
||||
{formatDate(batch.expiryDate)}
|
||||
</span>
|
||||
{new Date(batch.expiryDate) < new Date() && (
|
||||
<Tooltip>
|
||||
<TooltipTrigger asChild>
|
||||
<AlertTriangle className="h-4 w-4 text-red-500 cursor-help" />
|
||||
</TooltipTrigger>
|
||||
<TooltipContent>
|
||||
<p>此批號已過期</p>
|
||||
</TooltipContent>
|
||||
</Tooltip>
|
||||
)}
|
||||
</div>
|
||||
) : "-"}
|
||||
</TableCell>
|
||||
<TableCell>
|
||||
{batch.lastInboundDate ? formatDate(batch.lastInboundDate) : "-"}
|
||||
@@ -280,7 +302,7 @@ export default function InventoryTable({
|
||||
})}
|
||||
|
||||
|
||||
</div>
|
||||
</TooltipProvider>
|
||||
</div >
|
||||
</TooltipProvider >
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user