Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 
 
 
 

56 linhas
1.6 KiB

  1. import 'package:dio/dio.dart';
  2. import 'package:qadirneyriz/config/config.dart';
  3. import 'package:qadirneyriz/models/home/home_models.dart';
  4. import 'package:qadirneyriz/setting/setting.dart';
  5. import 'package:qadirneyriz/utils/result/result.dart';
  6. class HomeApi {
  7. getTodayMeetings() async {
  8. Map<String, String> headers = {
  9. 'Accept': 'application/json',
  10. };
  11. String dataToken = setting.userLocalDb.getUser().token!;
  12. if (dataToken != '') {
  13. headers['Authorization'] = "Bearer $dataToken";
  14. }
  15. final String link =
  16. "${config.network.baseUrl}today-meetings?lang=${setting.userLocalDb.getUser().language}";
  17. final response = await Dio().get(link,
  18. options: Options(
  19. headers: headers,
  20. ));
  21. TodayMeetingModel list = TodayMeetingModel.fromJson(response.data);
  22. return list;
  23. }
  24. // log out
  25. Future<Result?> logOutApi() async {
  26. try {
  27. Map<String, String> headers = {"Accept": "application/json"};
  28. String dataToken = setting.userLocalDb.getUser().token!;
  29. if (dataToken != '') {
  30. headers['Authorization'] = "Bearer $dataToken";
  31. }
  32. final res = await Dio().post("${config.network.baseUrl}admin/logout",
  33. options: Options(headers: headers));
  34. if (res.statusCode == 200 || res.statusCode == 201) {
  35. setting.userLocalDb.logOut();
  36. return const Result(isOk: true);
  37. }
  38. } on DioException catch (e) {
  39. // print(e);
  40. // print(e.response!.data);
  41. return Result(
  42. isOk: false,
  43. errors: e.response!.data['errors'],
  44. message: e.response!.data['message']);
  45. }
  46. return const Result(isOk: false);
  47. }
  48. }