fix: corregir flujo completo de servicio y geocodificación

- Service.fromJson: lat/lng con Decimal de Prisma llegaban como string y
  el cast 'as num?' lanzaba TypeError silencioso → lista de servicios vacía.
  Mismo patrón que average_score, fix: double.tryParse(?.toString())
- service_status: agregar enumToStringService que mapea el enum de Flutter
  al string que espera el DTO del backend ('pending','accepted', etc.).
  changeServiceStatus enviaba el índice entero → @IsEnum rechazaba → el
  profesional no podía aceptar ni rechazar solicitudes
- maps_service: agregar MapsService.reverseGeocode que usa el Geocoder del
  Maps JS SDK ya cargado, sin requerir la Geocoding API habilitada por separado
- dashboard_view: _reverseGeocode usa el JS Geocoder en vez del endpoint HTTP

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Lizandro Guarnizo
2026-07-22 09:15:59 -05:00
co-authored by Claude Sonnet 4.6
parent 8296b5a3ea
commit 735d8c2ba0
5 changed files with 103 additions and 44 deletions
+1 -1
View File
@@ -21,7 +21,7 @@ class ServicesProvider extends ChangeNotifier {
Future<void> changeServiceStatus(String serviceId, ServiceStatus newStatus) async {
try {
await _api.patch('/services/$serviceId/status', {'status': enumToIntService(newStatus)});
await _api.patch('/services/$serviceId/status', {'status': enumToStringService(newStatus)});
notifyListeners();
} catch (e) {
print('Error al actualizar el estado: $e');