75 lines
1.6 KiB
Dart
75 lines
1.6 KiB
Dart
import 'package:latlong2/latlong.dart';
|
|
import 'package:niogu_app/core/enums/customer_source.dart';
|
|
import 'package:niogu_app/core/enums/order_source.dart';
|
|
import 'package:niogu_app/core/enums/order_status.dart';
|
|
import 'package:uuid/uuid.dart';
|
|
|
|
enum CustomerEmpty { loading, empty_database, empty_search_result, has_data }
|
|
|
|
class DisplayCustomers {
|
|
final String id;
|
|
final String name;
|
|
|
|
const DisplayCustomers({
|
|
required this.id,
|
|
required this.name
|
|
});
|
|
}
|
|
|
|
class UpsertCustomer {
|
|
final String id;
|
|
final String name;
|
|
final String? email;
|
|
final String? phoneNumber;
|
|
|
|
UpsertCustomer({
|
|
String? id,
|
|
required this.name,
|
|
required this.email,
|
|
required this.phoneNumber
|
|
}) : id = id ?? const Uuid().v7().toString();
|
|
}
|
|
|
|
class CustomerDetail {
|
|
final String id;
|
|
final String name;
|
|
final String email;
|
|
final String phoneNumber;
|
|
final CustomerSource customerSource;
|
|
|
|
const CustomerDetail({
|
|
required this.id,
|
|
required this.name,
|
|
required this.email,
|
|
required this.phoneNumber,
|
|
required this.customerSource,
|
|
});
|
|
}
|
|
|
|
class CustomerAddress {
|
|
final String label;
|
|
final String fullAddress;
|
|
final LatLng coordinate;
|
|
|
|
const CustomerAddress({
|
|
required this.label,
|
|
required this.fullAddress,
|
|
required this.coordinate,
|
|
});
|
|
}
|
|
|
|
class CustomerActivities {
|
|
final String id;
|
|
final String orderNumber;
|
|
final OrderSource orderSource;
|
|
final OrderStatus orderStatus;
|
|
final DateTime orderDate;
|
|
|
|
const CustomerActivities({
|
|
required this.id,
|
|
required this.orderNumber,
|
|
required this.orderSource,
|
|
required this.orderStatus,
|
|
required this.orderDate
|
|
});
|
|
} |