Search in sources :

Example 1 with MinhasMoradias

use of com.usp.icmc.taemcasa.MinhasVagas.MoradiaResponse.MinhasMoradias in project TaEmCasa by Dionen.

the class MinhasVagasActivity method minhasVagasRefresh.

private void minhasVagasRefresh() {
    listaMoradias.clear();
    listaVagas.clear();
    Response.Listener<String> responseListener = new Response.Listener<String>() {

        @Override
        public void onResponse(String response) {
            JSONObject jsonResponse = null;
            try {
                System.out.println(response);
                jsonResponse = new JSONObject(response);
                boolean success = jsonResponse.getBoolean("success");
                if (success) {
                    HashMap<Integer, Republica> aux = new HashMap<Integer, Republica>();
                    JSONArray moradiasResponse = jsonResponse.getJSONArray("moradias");
                    for (int i = 0; i < moradiasResponse.length(); i++) {
                        JSONObject atual = moradiasResponse.getJSONObject(i);
                        int id = atual.getInt("id");
                        String username = atual.getString("username");
                        String nome = atual.getString("nome");
                        String descricao = atual.getString("descricao");
                        String rua = atual.getString("rua");
                        String numero = atual.getString("numero");
                        String complemento = atual.getString("complemento");
                        String bairro = atual.getString("bairro");
                        String cidade = atual.getString("cidade");
                        String estado = atual.getString("estado");
                        // O JSON vem com floats em formato de string, então é preciso
                        // fazer essa validação antes do parse para float
                        String s = atual.getString("latitude");
                        float latitude = 0;
                        if (s != "null")
                            latitude = Float.parseFloat(s);
                        float longitude = 0;
                        s = atual.getString("longitude");
                        if (s != "null")
                            longitude = Float.parseFloat(s);
                        String telefone = atual.getString("telefone");
                        String imagem = atual.getString("imagem");
                        String sTipo = atual.getString("tipo");
                        int tipo = 0;
                        if (!sTipo.equals("null"))
                            tipo = Integer.parseInt(sTipo);
                        int perfil = atual.getInt("perfil");
                        int qtd_moradores = atual.getInt("qtd_moradores");
                        // O bd armazena true como 1, então é preciso fazer essa
                        // validação para conseguir utilizar o boolean do java
                        boolean aceita_animais = false;
                        int bool = atual.getInt("aceita_animais");
                        if (bool == 1)
                            aceita_animais = true;
                        Republica dados = new Republica(id, username, nome, descricao, rua, numero, complemento, bairro, cidade, estado, latitude, longitude, telefone, imagem, tipo, perfil, qtd_moradores, aceita_animais);
                        listaMoradias.add(dados);
                        listaVagas.put(dados, new ArrayList<Vaga>());
                        aux.put(id, dados);
                    }
                    JSONArray vagasResponse = jsonResponse.getJSONArray("vagas");
                    for (int i = 0; i < vagasResponse.length(); i++) {
                        JSONObject atual = vagasResponse.getJSONObject(i);
                        int id = atual.getInt("id");
                        int id_rep = atual.getInt("id_rep");
                        String preco = atual.getString("preco");
                        String tipo = Integer.toString(atual.getInt("tipo"));
                        boolean individual = false;
                        int bool = atual.getInt("individual");
                        if (bool == 1)
                            individual = true;
                        Vaga dados = new Vaga(id, id_rep, preco, tipo, individual);
                        Republica auxiliar = aux.get(id_rep);
                        listaVagas.get(auxiliar).add(dados);
                    }
                    java.util.Iterator iter = listaVagas.values().iterator();
                    while (iter.hasNext()) {
                        ArrayList<Vaga> l = (ArrayList<Vaga>) iter.next();
                        if (l.size() == 0)
                            l.add(new Vaga("-1"));
                    }
                    java.util.Iterator iter2 = listaVagas.keySet().iterator();
                    while (iter2.hasNext()) {
                        Republica aux3 = (Republica) iter2.next();
                        System.out.println(aux3 + "  " + listaVagas.get(aux3).get(0).getPrice());
                    }
                    adapter.notifyDataSetChanged();
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
    };
    /* ENTRA NA DATABASE ONLINE */
    MinhasMoradias minhasMoradiasRequest = new MinhasMoradias(getActivity().getIntent().getExtras().getString("email"), responseListener);
    RequestQueue queue = Volley.newRequestQueue(getContext());
    // Executa as tarefas requisitadas
    queue.add(minhasMoradiasRequest);
}
Also used : HashMap(java.util.HashMap) JSONArray(org.json.JSONArray) ArrayList(java.util.ArrayList) JSONException(org.json.JSONException) Vaga(com.usp.icmc.taemcasa.Structures.Vaga) MinhasMoradias(com.usp.icmc.taemcasa.MinhasVagas.MoradiaResponse.MinhasMoradias) Response(com.android.volley.Response) JSONObject(org.json.JSONObject) RequestQueue(com.android.volley.RequestQueue) Republica(com.usp.icmc.taemcasa.Structures.Republica)

Aggregations

RequestQueue (com.android.volley.RequestQueue)1 Response (com.android.volley.Response)1 MinhasMoradias (com.usp.icmc.taemcasa.MinhasVagas.MoradiaResponse.MinhasMoradias)1 Republica (com.usp.icmc.taemcasa.Structures.Republica)1 Vaga (com.usp.icmc.taemcasa.Structures.Vaga)1 ArrayList (java.util.ArrayList)1 HashMap (java.util.HashMap)1 JSONArray (org.json.JSONArray)1 JSONException (org.json.JSONException)1 JSONObject (org.json.JSONObject)1