Initial commit - app-padrao-1.0

This commit is contained in:
Erik Silva
2025-12-19 23:29:24 -03:00
commit ec76d3d633
205 changed files with 13131 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
import 'package:uuid/uuid.dart';
import 'package:barber_app/core/database/database_service.dart';
import 'package:barber_app/features/services/data/models/service_model.dart';
class ServiceRepository {
final _uuid = const Uuid();
String? get _currentUserId => DatabaseService.getCurrentUserId();
// Criar Serviço
Future<ServiceModel?> createService({
required String name,
required double price,
int durationMinutes = 30,
}) async {
if (_currentUserId == null) return null;
final service = ServiceModel(
id: _uuid.v4(),
name: name,
price: price,
durationMinutes: durationMinutes,
userId: _currentUserId!,
);
// ATENÇÃO: Precisamos adicionar servicesBoxInstance no DatabaseService
await DatabaseService.servicesBoxInstance.put(service.id, service);
return service;
}
// Editar
Future<void> updateService(ServiceModel service) async {
await DatabaseService.servicesBoxInstance.put(service.id, service);
}
// Deletar
Future<void> deleteService(String id) async {
await DatabaseService.servicesBoxInstance.delete(id);
}
// Listar Todos
List<ServiceModel> getAllServices() {
if (_currentUserId == null) return [];
return DatabaseService.servicesBoxInstance.values
.where((s) => s.userId == _currentUserId)
.toList()
..sort((a, b) => a.name.compareTo(b.name));
}
}