Files
Handwerksfreund_Frontend/src/views/InventoryView.tsx
T
2026-07-27 00:11:10 +02:00

65 lines
2.7 KiB
TypeScript

import React from 'react';
import { AlertTriangle } from 'lucide-react';
export const InventoryView: React.FC = () => {
const parts = [
{ name: 'Buderus Logamax plus GB172-24', category: 'Gas-Brennwertgerät', stock: 4, minStock: 2, status: 'Ausreichend' },
{ name: 'Bosch EasyControl CT200', category: 'Raumthermostat', stock: 1, minStock: 3, status: 'Nachbestellen' },
{ name: 'Honeywell Hauswasserfilter FF06', category: 'Wasserfilter', stock: 0, minStock: 2, status: 'Kritisch' },
{ name: 'Grundfos Magna3 32-120 F', category: 'Heizungsumwälzpumpe', stock: 6, minStock: 3, status: 'Ausreichend' },
{ name: 'Viessmann Vitodens 200-W', category: 'Gas-Brennwertgerät', stock: 2, minStock: 2, status: 'Ausreichend' },
];
return (
<>
<header className="header-bar">
<h1 className="header-title">Lager & Teileverwaltung</h1>
<div style={{ display: 'flex', alignItems: 'center', gap: '8px', color: '#ef4444', fontWeight: 600, fontSize: '0.9rem' }}>
<AlertTriangle size={18} /> 2 Bestandswarnungen
</div>
</header>
<section className="content-card">
<h2 className="card-heading">Ersatzteilbestand & Bestellwarnungen</h2>
<div className="table-responsive">
<table className="orders-table">
<thead>
<tr>
<th>Artikelbezeichnung</th>
<th>Kategorie</th>
<th>Lagerbestand</th>
<th>Mindestbestand</th>
<th>Status</th>
</tr>
</thead>
<tbody>
{parts.map((p, idx) => (
<tr key={idx}>
<td style={{ fontWeight: 600, color: '#0f172a' }}>{p.name}</td>
<td style={{ color: '#64748b' }}>{p.category}</td>
<td style={{ fontWeight: 700, color: p.stock <= p.minStock ? '#ef4444' : '#0f172a' }}>
{p.stock} Stk.
</td>
<td>{p.minStock} Stk.</td>
<td>
<span className={`badge ${
p.status === 'Kritisch' || p.status === 'Nachbestellen'
? 'badge-scheduled'
: 'badge-in-progress'
}`} style={{
backgroundColor: p.status === 'Kritisch' ? '#fef2f2' : p.status === 'Nachbestellen' ? '#fffbeb' : '#dcfce7',
color: p.status === 'Kritisch' ? '#991b1b' : p.status === 'Nachbestellen' ? '#b45309' : '#15803d'
}}>
{p.status}
</span>
</td>
</tr>
))}
</tbody>
</table>
</div>
</section>
</>
);
};