feat: ajout de la configuration des émulateurs Firebase et mise à jour des services pour utiliser le backend sécurisé
This commit is contained in:
@@ -3,24 +3,28 @@ import 'package:em2rp/models/maintenance_model.dart';
|
||||
import 'package:em2rp/models/alert_model.dart';
|
||||
import 'package:em2rp/models/equipment_model.dart';
|
||||
import 'package:em2rp/services/equipment_service.dart';
|
||||
import 'package:em2rp/services/api_service.dart';
|
||||
|
||||
class MaintenanceService {
|
||||
final FirebaseFirestore _firestore = FirebaseFirestore.instance;
|
||||
final EquipmentService _equipmentService = EquipmentService();
|
||||
final ApiService _apiService = apiService;
|
||||
|
||||
// Collection references
|
||||
CollectionReference get _maintenancesCollection => _firestore.collection('maintenances');
|
||||
CollectionReference get _equipmentCollection => _firestore.collection('equipment');
|
||||
CollectionReference get _equipmentCollection => _firestore.collection('equipments');
|
||||
CollectionReference get _alertsCollection => _firestore.collection('alerts');
|
||||
|
||||
// CRUD Operations
|
||||
// ============================================================================
|
||||
// CRUD Operations - Utilise le backend sécurisé
|
||||
// ============================================================================
|
||||
|
||||
/// Créer une nouvelle maintenance
|
||||
/// Créer une nouvelle maintenance (via Cloud Function)
|
||||
Future<void> createMaintenance(MaintenanceModel maintenance) async {
|
||||
try {
|
||||
await _maintenancesCollection.doc(maintenance.id).set(maintenance.toMap());
|
||||
await _apiService.call('createMaintenance', maintenance.toMap());
|
||||
|
||||
// Mettre à jour les équipements concernés
|
||||
// Mettre à jour les équipements concernés (côté client pour l'instant)
|
||||
for (String equipmentId in maintenance.equipmentIds) {
|
||||
await _updateEquipmentMaintenanceList(equipmentId, maintenance.id);
|
||||
|
||||
@@ -35,11 +39,13 @@ class MaintenanceService {
|
||||
}
|
||||
}
|
||||
|
||||
/// Mettre à jour une maintenance
|
||||
/// Mettre à jour une maintenance (via Cloud Function)
|
||||
Future<void> updateMaintenance(String id, Map<String, dynamic> data) async {
|
||||
try {
|
||||
data['updatedAt'] = Timestamp.fromDate(DateTime.now());
|
||||
await _maintenancesCollection.doc(id).update(data);
|
||||
await _apiService.call('updateMaintenance', {
|
||||
'maintenanceId': id,
|
||||
'data': data,
|
||||
});
|
||||
} catch (e) {
|
||||
print('Error updating maintenance: $e');
|
||||
rethrow;
|
||||
|
||||
Reference in New Issue
Block a user