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);
}
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;
}
Aggregations