simulacion de estados y flujo de notificacion, modificacion de estilos en todas las vistas
This commit is contained in:
@@ -16,13 +16,38 @@ class IncidentService {
|
||||
final Dio _dio;
|
||||
|
||||
Future<List<UnitOption>> listUnits() async {
|
||||
final res = await _dio.get<List<dynamic>>('/incidents/units');
|
||||
final res = await _dio.get<List<dynamic>>(
|
||||
'/incidents/units',
|
||||
options: Options(
|
||||
receiveTimeout: const Duration(seconds: 6),
|
||||
sendTimeout: const Duration(seconds: 6),
|
||||
),
|
||||
);
|
||||
return (res.data ?? [])
|
||||
.whereType<Map>()
|
||||
.map((e) => UnitOption.fromJson(Map<String, dynamic>.from(e)))
|
||||
.toList();
|
||||
}
|
||||
|
||||
/// Devuelve la unidad asignada al domicilio (vía su ruta).
|
||||
/// `null` si el backend responde 404 (sin ruta o sin unidad).
|
||||
Future<UnitOption?> getAddressUnit(String addressId) async {
|
||||
try {
|
||||
final res = await _dio.get<Map<String, dynamic>>(
|
||||
'/addresses/$addressId/unit',
|
||||
options: Options(
|
||||
receiveTimeout: const Duration(seconds: 6),
|
||||
sendTimeout: const Duration(seconds: 6),
|
||||
),
|
||||
);
|
||||
if (res.data == null) return null;
|
||||
return UnitOption.fromJson(res.data!);
|
||||
} on DioException catch (e) {
|
||||
if (e.response?.statusCode == 404) return null;
|
||||
rethrow;
|
||||
}
|
||||
}
|
||||
|
||||
Future<IncidentReport> createIncident({
|
||||
required String category,
|
||||
required String description,
|
||||
|
||||
Reference in New Issue
Block a user