Files
ShopSolution-frontend/src/app/features/components/dashboard/dashboard-page/dashboard-page.component.ts
2025-10-24 14:11:54 +02:00

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
}
}