2
Hello, I’m new to flutter and I’m trying to create a list with grouping using the map, but I’m not getting... I saw that I can use the Groupedlistview, but how to map it?
GroupedListView(
elements: _elements,
groupBy: (element) => element['group'],
groupSeparatorBuilder: _buildGroupSeparator,
itemBuilder: (context, element) => Text(element['name']),
order: GroupedListOrder.ASC,
),
My JSON, I want to list the content of "historico", grouping by "dentista_codigo" :
{
"status": {
"status": 1,
"result": "OK",
"mensagem": ""
},
"historico": [
{
"dentista_codigo": "000123",
"nome": "Dentista Teste 1",
"cod_tuss": "81000057",
"data_lancamento": "02/10/2019",
"descricao_tuss": "Consulta Odontológica de Urgência 24 H",
"dente_regiao": "36",
"face": "",
"procedimento_realizado": "1",
"data_realizacao": "02/10/2019",
"avaliacao": 5
},
{
"dentista_codigo": "000123",
"nome": "Dentista Teste 1",
"cod_tuss": "81000085",
"data_lancamento": "02/10/2019",
"descricao_tuss": "Consulta Odontológica de Urgência 24 H",
"dente_regiao": "11",
"face": "",
"procedimento_realizado": "1",
"data_realizacao": "02/10/2019",
"avaliacao": 5
},
{
"dentista_codigo": "999123",
"nome": "Dentista Teste 2",
"cod_tuss": "81000090",
"data_lancamento": "08/11/2018",
"descricao_tuss": "Consulta Odontológica de Urgência 24 H",
"dente_regiao": "11",
"face": "",
"procedimento_realizado": "1",
"data_realizacao": "08/11/2018",
"avaliacao": 3
}
]
}
The JSON response class
class Historico {
String dentistaCodigo;
String nome;
String codTuss;
String dataLancamento;
String descricaoTuss;
String denteRegiao;
String face;
String procedimentoRealizado;
String dataRealizacao;
int avaliacao;
Historico(
{this.dentistaCodigo,
this.nome,
this.codTuss,
this.dataLancamento,
this.descricaoTuss,
this.denteRegiao,
this.face,
this.procedimentoRealizado,
this.dataRealizacao,
this.avaliacao});
Historico.fromJson(Map<String, dynamic> json) {
dentistaCodigo = json['dentista_codigo'];
nome = json['nome'];
codTuss = json['cod_tuss'];
dataLancamento = json['data_lancamento'];
descricaoTuss = json['descricao_tuss'];
denteRegiao = json['dente_regiao'];
face = json['face'];
procedimentoRealizado = json['procedimento_realizado'];
dataRealizacao = json['data_realizacao'];
avaliacao = json['avaliacao'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['dentista_codigo'] = this.dentistaCodigo;
data['nome'] = this.nome;
data['cod_tuss'] = this.codTuss;
data['data_lancamento'] = this.dataLancamento;
data['descricao_tuss'] = this.descricaoTuss;
data['dente_regiao'] = this.denteRegiao;
data['face'] = this.face;
data['procedimento_realizado'] = this.procedimentoRealizado;
data['data_realizacao'] = this.dataRealizacao;
data['avaliacao'] = this.avaliacao;
return data;
}
}