instruction_app/lib/data/worker_repository.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);
}
}