Files
Holzleitner-Lieferservice-App/lib/domain/entity/customer.dart
Dennis Nemec a9bf8ecdd1 Final commit.
2026-06-01 17:12:28 +02:00

54 lines
1.2 KiB
Dart

import 'address.dart';
/// Kunden-Stammdatensatz. Ein Kunde kann mehrere `CustomerContact`s haben
/// (Ehepartner, Hausverwalter, …); diese werden separat in der
/// `TourDetails.contacts`-Map geführt.
class Customer {
const Customer({
required this.id,
required this.name,
required this.erpCustomerId,
required this.address,
});
final String id;
final String name;
/// ERP-Kundennummer (Legacy). Wird in der App nur informativ in der
/// Detail-Ansicht angezeigt.
final int erpCustomerId;
final Address address;
Customer copyWith({
String? id,
String? name,
int? erpCustomerId,
Address? address,
}) {
return Customer(
id: id ?? this.id,
name: name ?? this.name,
erpCustomerId: erpCustomerId ?? this.erpCustomerId,
address: address ?? this.address,
);
}
}
/// Ansprechpartner zu einem Kunden. Optional, daher als eigene Liste in
/// `TourDetails` — eine Lieferung referenziert n Kontakte per Id.
class CustomerContact {
const CustomerContact({
required this.id,
required this.customerId,
required this.name,
this.phone,
this.email,
});
final String id;
final String customerId;
final String name;
final String? phone;
final String? email;
}