import 'package:computo_lite/services/services.dart'; import 'package:computo_lite/viewmodels/login_view_model.dart'; import 'package:firebase_auth/firebase_auth.dart'; import 'package:http/http.dart' as http; import 'dart:convert'; import '../data/session/session_storage.dart'; const List idsTipoBodegaDisabled = [0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 13]; class ScheduleViewModel { final BaseService _services = BaseService(); //final LoginViewModel _loginViewModel = LoginViewModel.instance(); Future>> getSchedules( List ignoreIds, List idsTipoAgenda, int idTipoAgenda) async { try { String url = "agenda?limite=-1&ordenar=nombre.asc&idTipoAgenda=$idTipoAgenda&idTipoAgenda2=${idsTipoAgenda.join(",")}"; //User? userAuth = _loginViewModel.getUserAuth(); String? userToken = await SessionStorage().getToken(); http.Response? jsonResponse = await _services.get(url); Map response = json.decode(jsonResponse!.body); return List>.from(response["resultado"]) .where((Map agenda) => !ignoreIds.contains(agenda["idAgenda"])) .toList(); } catch (e) { print(e); return []; } } Future>> getTiposAgenda() async { String url = "agenda/tipo-agenda?ordenar=idTipoAsistente.desc"; String? userToken = await SessionStorage().getToken(); http.Response? jsonResponse = await _services.get(url); Map response = json.decode(jsonResponse!.body); List> tipos = List>.from(response["resultado"]); return tipos .where((Map agenda) => !idsTipoBodegaDisabled.contains(agenda["id"])) .toList(); } }