Olá. Tenho o método que tem por finalidade gerar um objeto em forma de json para enviar para a view, o problema que preciso fazer uma comparação entre dois valores que estão em listas separadas para então o if entrar em cena e gerar o objeto correto, mas eis o que tenho:
Compare = Aluguel = Alimentação
Compare = Energia = Alimentação
Compare = Aluguel = Alimentação
Compare = Energia = Alimentação
Compare = Alimentação = Alimentação
Compare = Alimentação = Alimentação
Compare = Água = Alimentação
Compare = Aluguel = Alimentação
Objeto = {"data":[["Despesa 4","3652.00"],["Despesa 5","1596.00"]],"id":"Alimentação"}
Compare = Aluguel = Alimentação
Compare = Energia = Alimentação
Compare = Aluguel = Alimentação
Compare = Energia = Alimentação
Compare = Alimentação = Alimentação
Compare = Alimentação = Alimentação
Compare = Água = Alimentação
Compare = Aluguel = Alimentação
Objeto = {"data":[["Despesa 4","3652.00"],["Despesa 5","1596.00"],["Despesa 4","3652.00"],["Despesa 5","1596.00"]],"id":"Alimentação"}
Compare = Aluguel = Alimentação
Compare = Energia = Alimentação
Compare = Aluguel = Alimentação
Compare = Energia = Alimentação
Compare = Alimentação = Alimentação
Compare = Alimentação = Alimentação
Compare = Água = Alimentação
Compare = Aluguel = Alimentação
Objeto = {"data":[["Despesa 4","3652.00"],["Despesa 5","1596.00"],["Despesa 4","3652.00"],["Despesa 5","1596.00"],["Despesa 4","3652.00"],["Despesa 5","1596.00"]],"id":"Alimentação"}
um dos 'for s' esta me trazendo apenas um item para comparação que é Alimentação e portanto só entra nesse item e tem essa loop para esse item que no meu caso é descartável. Exponho o meu controller para exemplificar:
// Pie Chart Despesas home
@RequestMapping(value = "/despesasPieCharts", method = RequestMethod.GET, produces = "application/json")
public @ResponseBody List<MinhasDespesas> despesasPieCharts(@AuthenticationPrincipal UsuarioLogado logado) throws JSONException, JsonProcessingException {
Long userId = logado.getId();
AtualizaMesAno mesAno = mesAnoService.findId(userId);
String mes = mesAno.getMes();
String ano = mesAno.getAno();
List<CatTipoDespesas> listCatDespesas = tipoDespesasService.findByUsuarioByDate(userId, mes, ano);
List<MinhasDespesas> listDespesas = minhasDespesasService.findByUsuarioByDate(userId, mes, ano);
JSONObject obj = new JSONObject();
JSONArray array = new JSONArray();
for(int i = 0; i < listDespesas.size(); i++){
String nomeTipoDespesa = "";
for(CatTipoDespesas cp : listCatDespesas){
nomeTipoDespesa = cp.getNomeTipoDespesas();
}
for(MinhasDespesas dp : listDespesas){
System.out.println("Compare = " + dp.getNomeCategoria() + " = " + nomeTipoDespesa);
if(dp.getNomeCategoria().equals(nomeTipoDespesa)){
obj.put("id", dp.getNomeCategoria());
String[] array1 = {dp.getDescricaoDespesa(), dp.getValorDespesa().toString()};
array.put(array1);
}
}
obj.put("data", array);
System.out.println("Objeto = " + obj);
}
return listDespesas;
}