second commit
This commit is contained in:
24
lib/domain/repositories/customer_repository.dart
Normal file
24
lib/domain/repositories/customer_repository.dart
Normal file
@@ -0,0 +1,24 @@
|
||||
import '../entities/customer.dart';
|
||||
|
||||
abstract class CustomerRepository {
|
||||
/// Primary lookup on the Existing Customer screen.
|
||||
Future<Customer?> findByMobile(String mobile);
|
||||
|
||||
Future<Customer?> findById(String id);
|
||||
|
||||
Future<Customer> create(Customer customer);
|
||||
|
||||
Future<Customer> update(Customer customer);
|
||||
|
||||
/// Applies loyalty and lifetime-spend changes once a sale completes.
|
||||
Future<Customer> recordSale({
|
||||
required String customerId,
|
||||
required double amount,
|
||||
required int pointsEarned,
|
||||
required int pointsRedeemed,
|
||||
});
|
||||
|
||||
Future<List<Customer>> search(String query);
|
||||
|
||||
Future<List<Customer>> recent({int limit = 20});
|
||||
}
|
||||
Reference in New Issue
Block a user