feat: filtrar profesionales por ciudad del usuario al cargar lista
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
a2bcc8d86d
commit
b8b56c4aaa
@@ -5,15 +5,24 @@ import 'package:prosapp_web_app/services/api_service.dart';
|
||||
class ProfessionalsProvider extends ChangeNotifier {
|
||||
List<UsuarioProfesional> professionals = [];
|
||||
bool isLoading = true;
|
||||
String? _city;
|
||||
final _api = ApiService.instance;
|
||||
|
||||
ProfessionalsProvider() {
|
||||
getProfessionals();
|
||||
void updateCity(String? city) {
|
||||
if (_city != city) {
|
||||
_city = city;
|
||||
getProfessionals();
|
||||
}
|
||||
}
|
||||
|
||||
getProfessionals() async {
|
||||
isLoading = true;
|
||||
notifyListeners();
|
||||
try {
|
||||
final res = await _api.get('/professionals');
|
||||
final path = (_city != null && _city!.isNotEmpty)
|
||||
? '/professionals?city=${Uri.encodeComponent(_city!)}'
|
||||
: '/professionals';
|
||||
final res = await _api.get(path);
|
||||
final list = (res is Map ? res['data'] : res) as List;
|
||||
professionals = list
|
||||
.map((e) => UsuarioProfesional.fromDocument(e as Map<String, dynamic>))
|
||||
|
||||
Reference in New Issue
Block a user