109 lines
3.2 KiB
TypeScript
109 lines
3.2 KiB
TypeScript
import { Component } from '@angular/core';
|
|
import { CommonModule } from '@angular/common';
|
|
import { KpiCardComponent } from '../kpi-card/kpi-card.component';
|
|
import { OrdersTableComponent } from '../../../../shared/components/data-display/orders-table/orders-table.component';
|
|
import { Kpi } from '../../../../core/models/dashboard.model';
|
|
|
|
|
|
@Component({
|
|
selector: 'app-dashboard-page',
|
|
imports: [CommonModule,KpiCardComponent,OrdersTableComponent],
|
|
templateUrl: './dashboard-page.component.html',
|
|
styleUrl: './dashboard-page.component.css'
|
|
})
|
|
export class DashboardPageComponent {
|
|
|
|
|
|
kpiData: Kpi[] = [
|
|
{
|
|
value: '€ 14.750',
|
|
label: 'Umsatz',
|
|
color: 'green',
|
|
iconName: 'placeholder',
|
|
},
|
|
{
|
|
value: '1.284',
|
|
label: 'Neue Nutzer',
|
|
color: 'blue',
|
|
iconName: 'placeholder',
|
|
},
|
|
{
|
|
value: '312',
|
|
label: 'Bestellungen',
|
|
color: 'orange',
|
|
iconName: 'placeholder',
|
|
},
|
|
{
|
|
value: '99.8%',
|
|
label: 'Verfügbarkeit',
|
|
color: 'purple',
|
|
iconName: 'placeholder',
|
|
},
|
|
];
|
|
|
|
mockOrders: any[] = [
|
|
{
|
|
id: 'a2d4b',
|
|
user: { name: 'Max Mustermann', email: 'max@test.de', avatarUrl: 'https://i.pravatar.cc/150?u=max' },
|
|
amount: '€129.99',
|
|
status: 'completed', // NEU: Sprechender Status
|
|
},
|
|
{
|
|
id: 'f8e9c',
|
|
user: { name: 'Erika Musterfrau', email: 'erika@test.de', avatarUrl: 'https://i.pravatar.cc/150?u=erika' },
|
|
amount: '€49.50',
|
|
status: 'processing', // NEU: Sprechender Status
|
|
},
|
|
{
|
|
id: 'h1g3j',
|
|
user: { name: 'John Doe', email: 'john.d@test.com', avatarUrl: 'https://i.pravatar.cc/150?u=john' },
|
|
amount: '€87.00',
|
|
status: 'cancelled', // NEU: Sprechender Status
|
|
},
|
|
{
|
|
id: 'h1g3j',
|
|
user: { name: 'John Doe', email: 'john.d@test.com', avatarUrl: 'https://i.pravatar.cc/150?u=john' },
|
|
amount: '€87.00',
|
|
status: 'info', // NEU: Sprechender Status
|
|
},
|
|
{
|
|
id: 'a2d4b',
|
|
user: { name: 'Max Mustermann', email: 'max@test.de', avatarUrl: 'https://i.pravatar.cc/150?u=max' },
|
|
amount: '€129.99',
|
|
status: 'completed', // NEU: Sprechender Status
|
|
},
|
|
{
|
|
id: 'f8e9c',
|
|
user: { name: 'Erika Musterfrau', email: 'erika@test.de', avatarUrl: 'https://i.pravatar.cc/150?u=erika' },
|
|
amount: '€49.50',
|
|
status: 'processing', // NEU: Sprechender Status
|
|
},
|
|
{
|
|
id: 'h1g3j',
|
|
user: { name: 'John Doe', email: 'john.d@test.com', avatarUrl: 'https://i.pravatar.cc/150?u=john' },
|
|
amount: '€87.00',
|
|
status: 'cancelled', // NEU: Sprechender Status
|
|
},
|
|
{
|
|
id: 'h1g3j',
|
|
user: { name: 'John Doe', email: 'john.d@test.com', avatarUrl: 'https://i.pravatar.cc/150?u=john' },
|
|
amount: '€87.00',
|
|
status: 'info', // NEU: Sprechender Status
|
|
},
|
|
];
|
|
|
|
handleDeleteOrder(orderId: string): void {
|
|
console.log('Lösche Bestellung mit ID:', orderId);
|
|
// Hier könnten Sie z.B. einen Bestätigungs-Dialog öffnen
|
|
}
|
|
handleViewDetails(orderId: string): void {
|
|
console.log('View Bestellung mit ID:', orderId);
|
|
// Hier könnten Sie z.B. einen Bestätigungs-Dialog öffnen
|
|
}
|
|
handleEditOrder(orderId: string): void {
|
|
console.log('Edit Bestellung mit ID:', orderId);
|
|
// Hier könnten Sie z.B. einen Bestätigungs-Dialog öffnen
|
|
}
|
|
|
|
}
|