50 lines
1002 B
Dart
50 lines
1002 B
Dart
import '../models/worker.dart';
|
|
import 'interface/IRepository.dart';
|
|
|
|
class LocalWorkerRepository implements Repository<Worker> {
|
|
final List<Worker> _workers = [
|
|
Worker(
|
|
id: '1',
|
|
name: 'Иван Петров',
|
|
|
|
),
|
|
Worker(
|
|
id: '2',
|
|
name: 'Мария Сидорова',
|
|
),
|
|
Worker(
|
|
id: '3',
|
|
name: 'Алексей Козлов',
|
|
),
|
|
Worker(
|
|
id: '4',
|
|
name: 'Елена Волкова',
|
|
)
|
|
];
|
|
|
|
@override
|
|
Future<List<Worker>> load() async {
|
|
return List.of(_workers);
|
|
}
|
|
|
|
@override
|
|
Future<Worker> add(Worker worker) async {
|
|
_workers.add(worker);
|
|
return worker;
|
|
}
|
|
|
|
@override
|
|
Future<void> update(Worker worker) async {
|
|
var index = _workers.indexWhere((item) => item.id == worker.id);
|
|
if (index != -1) {
|
|
_workers[index] = worker;
|
|
}
|
|
}
|
|
|
|
@override
|
|
Future<void> delete(String? id) async {
|
|
if (id == null)
|
|
return;
|
|
_workers.removeWhere((item) => item.id == id);
|
|
}
|
|
} |