Search in sources :

Example 1 with Republica

use of com.usp.icmc.taemcasa.Structures.Republica 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)

Example 2 with Republica

use of com.usp.icmc.taemcasa.Structures.Republica in project TaEmCasa by Dionen.

the class MinhasVagasActivity method onCreateView.

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View rootView = inflater.inflate(R.layout.search_my_list, container, false);
    // Incializa lista de moradias do usuário
    listaMoradias = new ArrayList<Republica>();
    // DEVE-SE OBTER AS MORADIAS E VAGAS DO USUARIO
    listaVagas = new HashMap<Republica, List<Vaga>>();
    ExpandableListView minhasMoradias = (ExpandableListView) rootView.findViewById(R.id.expandable_list);
    Button adicionarVaga = (Button) rootView.findViewById(R.id.adicionarVaga);
    /* Liga os valores ao layout */
    adapter = new ExpandableListAdapter(getActivity(), listaMoradias, listaVagas);
    minhasMoradias.setAdapter(adapter);
    /* Botão de iniciar cadastro de moradia */
    adicionarVaga.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Intent intent = new Intent(getContext(), AdicionarMoradia.class);
            intent.putExtra("user_id", getActivity().getIntent().getExtras().getString("user_id"));
            intent.putExtra("nome", getActivity().getIntent().getExtras().getString("nome"));
            intent.putExtra("sobrenome", getActivity().getIntent().getExtras().getString("sobrenome"));
            intent.putExtra("email", getActivity().getIntent().getExtras().getString("email"));
            startActivity(intent);
        }
    });
    return rootView;
}
Also used : Button(android.widget.Button) ArrayList(java.util.ArrayList) List(java.util.List) BaseExpandableListAdapter(android.widget.BaseExpandableListAdapter) Intent(android.content.Intent) ImageView(android.widget.ImageView) View(android.view.View) TextView(android.widget.TextView) ExpandableListView(android.widget.ExpandableListView) ExpandableListView(android.widget.ExpandableListView) Republica(com.usp.icmc.taemcasa.Structures.Republica)

Aggregations

Republica (com.usp.icmc.taemcasa.Structures.Republica)2 ArrayList (java.util.ArrayList)2 Intent (android.content.Intent)1 View (android.view.View)1 BaseExpandableListAdapter (android.widget.BaseExpandableListAdapter)1 Button (android.widget.Button)1 ExpandableListView (android.widget.ExpandableListView)1 ImageView (android.widget.ImageView)1 TextView (android.widget.TextView)1 RequestQueue (com.android.volley.RequestQueue)1 Response (com.android.volley.Response)1 MinhasMoradias (com.usp.icmc.taemcasa.MinhasVagas.MoradiaResponse.MinhasMoradias)1 Vaga (com.usp.icmc.taemcasa.Structures.Vaga)1 HashMap (java.util.HashMap)1 List (java.util.List)1 JSONArray (org.json.JSONArray)1 JSONException (org.json.JSONException)1 JSONObject (org.json.JSONObject)1