ahora si es la version final final ya neta enserio we
This commit is contained in:
@@ -12,6 +12,7 @@ import '../../core/theme/app_theme.dart';
|
|||||||
import '../../core/widgets/app_widgets.dart';
|
import '../../core/widgets/app_widgets.dart';
|
||||||
import '../home/colonias_data.dart';
|
import '../home/colonias_data.dart';
|
||||||
import 'colonias_provider.dart';
|
import 'colonias_provider.dart';
|
||||||
|
import '../../core/network/api_client.dart';
|
||||||
|
|
||||||
const Map<String, String> _cpToColonia = {
|
const Map<String, String> _cpToColonia = {
|
||||||
'38000': 'Zona Centro',
|
'38000': 'Zona Centro',
|
||||||
@@ -144,18 +145,7 @@ class _AddAddressPageState extends ConsumerState<AddAddressPage> {
|
|||||||
|
|
||||||
setState(() => _loading = true);
|
setState(() => _loading = true);
|
||||||
try {
|
try {
|
||||||
const storage = FlutterSecureStorage();
|
final dio = ref.read(apiClientProvider);
|
||||||
final token = await storage.read(key: authTokenStorageKey) ?? '';
|
|
||||||
|
|
||||||
final dio = Dio(
|
|
||||||
BaseOptions(
|
|
||||||
baseUrl: const String.fromEnvironment(
|
|
||||||
'API_BASE_URL',
|
|
||||||
defaultValue: 'http://localhost:8000',
|
|
||||||
),
|
|
||||||
headers: {'Authorization': 'Bearer $token'},
|
|
||||||
),
|
|
||||||
);
|
|
||||||
|
|
||||||
final body = <String, dynamic>{
|
final body = <String, dynamic>{
|
||||||
'label': _labelCtrl.text.trim().isEmpty
|
'label': _labelCtrl.text.trim().isEmpty
|
||||||
@@ -244,8 +234,9 @@ class _AddAddressPageState extends ConsumerState<AddAddressPage> {
|
|||||||
padding: const EdgeInsets.all(14),
|
padding: const EdgeInsets.all(14),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: AppTheme.primaryLight.withValues(alpha: 0.5),
|
color: AppTheme.primaryLight.withValues(alpha: 0.5),
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(
|
||||||
BorderRadius.circular(AppTheme.radiusSm),
|
AppTheme.radiusSm,
|
||||||
|
),
|
||||||
border: Border.all(color: AppTheme.primaryMid),
|
border: Border.all(color: AppTheme.primaryMid),
|
||||||
),
|
),
|
||||||
child: Column(
|
child: Column(
|
||||||
@@ -311,8 +302,9 @@ class _AddAddressPageState extends ConsumerState<AddAddressPage> {
|
|||||||
Container(
|
Container(
|
||||||
height: 220,
|
height: 220,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(
|
||||||
BorderRadius.circular(AppTheme.radiusMd),
|
AppTheme.radiusMd,
|
||||||
|
),
|
||||||
border: Border.all(color: AppTheme.border),
|
border: Border.all(color: AppTheme.border),
|
||||||
boxShadow: AppTheme.softShadow,
|
boxShadow: AppTheme.softShadow,
|
||||||
),
|
),
|
||||||
@@ -324,7 +316,8 @@ class _AddAddressPageState extends ConsumerState<AddAddressPage> {
|
|||||||
initialZoom: 15.0,
|
initialZoom: 15.0,
|
||||||
cameraConstraint: bounds != null
|
cameraConstraint: bounds != null
|
||||||
? CameraConstraint.containCenter(
|
? CameraConstraint.containCenter(
|
||||||
bounds: bounds)
|
bounds: bounds,
|
||||||
|
)
|
||||||
: const CameraConstraint.unconstrained(),
|
: const CameraConstraint.unconstrained(),
|
||||||
onTap: (_, latlng) => _fetchStreetName(latlng),
|
onTap: (_, latlng) => _fetchStreetName(latlng),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import '../../core/theme/app_theme.dart';
|
|||||||
import '../../core/widgets/app_widgets.dart';
|
import '../../core/widgets/app_widgets.dart';
|
||||||
import '../../core/constants/auth_constants.dart';
|
import '../../core/constants/auth_constants.dart';
|
||||||
import 'colonias_provider.dart';
|
import 'colonias_provider.dart';
|
||||||
|
import '../../core/network/api_client.dart';
|
||||||
|
|
||||||
const Map<String, String> _cpToColonia = {
|
const Map<String, String> _cpToColonia = {
|
||||||
'38000': 'Zona Centro',
|
'38000': 'Zona Centro',
|
||||||
@@ -139,19 +140,7 @@ class _NewAddressPageState extends ConsumerState<NewAddressPage> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const storage = FlutterSecureStorage();
|
final dio = ref.read(apiClientProvider);
|
||||||
final token = await storage.read(key: authTokenStorageKey) ?? '';
|
|
||||||
|
|
||||||
if (token.isNotEmpty) {
|
|
||||||
final dio = Dio(
|
|
||||||
BaseOptions(
|
|
||||||
baseUrl: const String.fromEnvironment(
|
|
||||||
'API_BASE_URL',
|
|
||||||
defaultValue: 'http://localhost:8000',
|
|
||||||
),
|
|
||||||
headers: {'Authorization': 'Bearer $token'},
|
|
||||||
),
|
|
||||||
);
|
|
||||||
await dio.post(
|
await dio.post(
|
||||||
'/addresses',
|
'/addresses',
|
||||||
data: {
|
data: {
|
||||||
@@ -170,7 +159,6 @@ class _NewAddressPageState extends ConsumerState<NewAddressPage> {
|
|||||||
true,
|
true,
|
||||||
); // Devuelve true para recargar la lista en la pantalla anterior
|
); // Devuelve true para recargar la lista en la pantalla anterior
|
||||||
}
|
}
|
||||||
}
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
debugPrint('Error al guardar domicilio: $e');
|
debugPrint('Error al guardar domicilio: $e');
|
||||||
if (mounted) {
|
if (mounted) {
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:dio/dio.dart';
|
import 'package:dio/dio.dart';
|
||||||
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
||||||
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_map/flutter_map.dart';
|
import 'package:flutter_map/flutter_map.dart';
|
||||||
import 'package:go_router/go_router.dart';
|
import 'package:go_router/go_router.dart';
|
||||||
import 'package:latlong2/latlong.dart';
|
import 'package:latlong2/latlong.dart';
|
||||||
@@ -9,15 +10,16 @@ import '../../core/theme/app_theme.dart';
|
|||||||
import '../../core/models/ui_models.dart';
|
import '../../core/models/ui_models.dart';
|
||||||
import 'colonias_data.dart';
|
import 'colonias_data.dart';
|
||||||
import '../../core/widgets/app_widgets.dart';
|
import '../../core/widgets/app_widgets.dart';
|
||||||
|
import '../../core/network/api_client.dart';
|
||||||
|
|
||||||
class MyHouseScreen extends StatefulWidget {
|
class MyHouseScreen extends ConsumerStatefulWidget {
|
||||||
const MyHouseScreen({super.key});
|
const MyHouseScreen({super.key});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<MyHouseScreen> createState() => _MyHouseScreenState();
|
ConsumerState<MyHouseScreen> createState() => _MyHouseScreenState();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _MyHouseScreenState extends State<MyHouseScreen> {
|
class _MyHouseScreenState extends ConsumerState<MyHouseScreen> {
|
||||||
bool _isLoading = true;
|
bool _isLoading = true;
|
||||||
UIHouseModel? _casa;
|
UIHouseModel? _casa;
|
||||||
|
|
||||||
@@ -29,23 +31,7 @@ class _MyHouseScreenState extends State<MyHouseScreen> {
|
|||||||
|
|
||||||
Future<void> _cargarDomicilio() async {
|
Future<void> _cargarDomicilio() async {
|
||||||
try {
|
try {
|
||||||
const storage = FlutterSecureStorage();
|
final dio = ref.read(apiClientProvider);
|
||||||
final token = await storage.read(key: authTokenStorageKey) ?? '';
|
|
||||||
|
|
||||||
if (token.isEmpty) {
|
|
||||||
setState(() => _isLoading = false);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
final dio = Dio(
|
|
||||||
BaseOptions(
|
|
||||||
baseUrl: const String.fromEnvironment(
|
|
||||||
'API_BASE_URL',
|
|
||||||
defaultValue: 'http://localhost:8000',
|
|
||||||
),
|
|
||||||
headers: {'Authorization': 'Bearer $token'},
|
|
||||||
),
|
|
||||||
);
|
|
||||||
|
|
||||||
final res = await dio.get('/addresses');
|
final res = await dio.get('/addresses');
|
||||||
if (res.data is List && (res.data as List).isNotEmpty) {
|
if (res.data is List && (res.data as List).isNotEmpty) {
|
||||||
|
|||||||
Reference in New Issue
Block a user