import 'dart:convert'; import 'package:get/get_utils/src/get_utils/get_utils.dart'; import 'package:http/http.dart' as http; import '../../default_response_api.dart'; import '../../funcoes_gerais.dart'; import 'notificacoes_classes.dart'; class NotificacoesApi{ Future getNotificacoes(int pagina,{String lidas = 'T',String curtidas = 'T'}) async{ var retorno = new NotificacoesResponse( errorCode: 0, errorMessage: "", loadMore: false, results: [] ); if(await FuncoesGerais.checkInternetConnection() == false){ retorno.errorCode = 1; retorno.errorMessage = "Sem conexão com a Internet"; } else{ var token = await FuncoesGerais.getUsuToken(); String url = FuncoesGerais.urlBaseNewCore+'api/v1/user/notificacoes/$token/$pagina/10/$lidas/$curtidas'; Map heads = Map(); heads["Content-type"] = "application/json; charset=utf-8"; var response = await http.get(Uri.parse(url), headers: heads); //if (response != null) { if (!GetUtils.isNullOrBlank(response.body)!) { if (response.statusCode == 200) { var data = jsonDecode(response.body); retorno = NotificacoesResponse.fromJson(data); } else{ retorno.errorCode = response.statusCode; retorno.errorMessage = "Falha: ${response.statusCode}"; } } else{ retorno.errorCode = 2; retorno.errorMessage = "Falha na comunicação com o server. Tente novamente"; } } return retorno; } Future getNotificacao(int? id) async{ var retorno = new NotificacaoResponse( errorCode: 0, errorMessage: "" ); if(await FuncoesGerais.checkInternetConnection() == false){ retorno.errorCode = 1; retorno.errorMessage = "Sem conexão com a Internet"; } else{ var token = await FuncoesGerais.getUsuToken(); String url = FuncoesGerais.urlBaseNewCore+'api/v1/user/notificacao/$token/$id'; Map heads = Map(); heads["Content-type"] = "application/json; charset=utf-8"; var response = await http.get(Uri.parse(url), headers: heads); if (!GetUtils.isNullOrBlank(response.body)!) { if (response.statusCode == 200) { var data = jsonDecode(response.body); retorno = NotificacaoResponse.fromJson(data); } else{ retorno.errorCode = response.statusCode; retorno.errorMessage = "Falha: ${response.statusCode}"; } } else{ retorno.errorCode = 2; retorno.errorMessage = "Falha na comunicação com o server. Tente novamente"; } } return retorno; } Future notificacaoLike(NotificacaoLikeRequest post) async{ DefaultResponseApi objRetorno = new DefaultResponseApi(); if(await FuncoesGerais.checkInternetConnection() == false){ objRetorno.errorCode = 1; objRetorno.errorMessage = "Sem Conexão com a Internet."; return objRetorno; } var token = await FuncoesGerais.getUsuToken(); String url = FuncoesGerais.urlBaseNewCore+'api/v1/user/notificacaolike/$token'; Map heads = Map(); heads["Content-type"] = "application/json; charset=utf-8"; var body = json.encode(post); var response = await http.post(Uri.parse(url), headers: heads, body: body); if (!GetUtils.isNullOrBlank(response.body)!) { if (response.statusCode == 200) { var data = jsonDecode(response.body); objRetorno = DefaultResponseApi.fromJson(data); } else{ objRetorno.errorCode = response.statusCode; objRetorno.errorMessage = "Falha: ${response.statusCode}"; } } else{ objRetorno.errorCode = 2; objRetorno.errorMessage = "Falha na comunicação com o server. Tente novamente"; } return objRetorno; } Future notificacaoLida(NotificacaoLidaRequest post, int notificacaoId) async{ DefaultResponseApi objRetorno = new DefaultResponseApi(); if(await FuncoesGerais.checkInternetConnection() == false){ objRetorno.errorCode = 1; objRetorno.errorMessage = "Sem Conexão com a Internet."; return objRetorno; } var token = await FuncoesGerais.getUsuToken(); String url = FuncoesGerais.urlBaseNewCore+'api/v1/user/notificacaolida/$token/$notificacaoId'; Map heads = Map(); heads["Content-type"] = "application/json; charset=utf-8"; var body = json.encode(post); var response = await http.post(Uri.parse(url), headers: heads, body: body); if (!GetUtils.isNullOrBlank(response.body)!) { if (response.statusCode == 200) { var data = jsonDecode(response.body); objRetorno = DefaultResponseApi.fromJson(data); } else{ objRetorno.errorCode = response.statusCode; objRetorno.errorMessage = "Falha: ${response.statusCode}"; } } else{ objRetorno.errorCode = 2; objRetorno.errorMessage = "Falha na comunicação com o server. Tente novamente"; } return objRetorno; } }