salvarFiltrosShared static method
void
salvarFiltrosShared({
Implementation
static void salvarFiltrosShared ({required ObservableList<FiltrosCarrregados> listaFiltrosCarregadoss}) async {
List<String> valoresSalvosCarregados = [];
List<String> valoresSalvosConstruirTela = [];
if(!isfiltrosSalvosApp){
final prefs = await SharedPreferences.getInstance();
prefs.remove('filtrosSalvos.$bancoDeDados.$matricula');
prefs.remove('filtrosContruirTela.$bancoDeDados.$matricula');
prefs.remove('isfiltrosSalvosApp.$bancoDeDados.$matricula');
isfiltrosSalvosApp = false;
}else{
if (listaFiltrosCarregadoss.isNotEmpty) {
final prefs = await SharedPreferences.getInstance();
prefs.remove('filtrosSalvos.$bancoDeDados.$matricula');
prefs.remove('filtrosContruirTela.$bancoDeDados.$matricula');
prefs.remove('isfiltrosSalvosApp.$bancoDeDados.$matricula');
for (FiltrosCarrregados itens in listaFiltrosCarregadoss) {
Map<String, dynamic> itemMap = {
'indexFiltros': itens.indexFiltros,
'indexPagina': itens.indexPagina,
'pesquisaFeita': itens.pesquisaFeita,
'listaFiltros': itens.listaFiltros.map((filtro) => {
'titulo': filtro.titulo,
'codigo' : filtro.codigo,
'subtitulo' : filtro.subtitulo,
'selecionado': filtro.selecionado,
}).toList(),
'valorSelecionadoParaDropDown': itens.valorSelecionadoParaDropDown,
'tipoFiltro': itens.tipoFiltro,
"tipoWidget" : itens.tipoWidget,
};
String jsonString = jsonEncode(itemMap);
valoresSalvosCarregados.add(jsonString);
}
for (FiltrosPageAtual itens in listaFiltrosParaConstruirTelaTemp) {
Map<String, dynamic> itemMap = {
'qualPaginaFiltroPertence': itens.qualPaginaFiltroPertence,
'filtrosWidgetModel': {
"arquivoQuery" : itens.filtrosWidgetModel.arquivoQuery,
"bancoBuscarFiltros" : itens.filtrosWidgetModel.bancoBuscarFiltros,
"funcaoPrincipal" : itens.filtrosWidgetModel.funcaoPrincipal,
"subtitulo" : itens.filtrosWidgetModel.subtitulo,
"tipoFiltro" : itens.filtrosWidgetModel.tipoFiltro,
"tipoWidget" : itens.filtrosWidgetModel.tipoWidget,
"titulo" : itens.filtrosWidgetModel.titulo,
"itensSelecionados" : itens.filtrosWidgetModel.itensSelecionados!.map((e) => {
'titulo': e.titulo,
'codigo' : e.codigo,
'subtitulo' : e.subtitulo,
'selecionado': e.selecionado,
},).toList(),
}
};
String jsonString = jsonEncode(itemMap);
valoresSalvosConstruirTela.add(jsonString);
}
prefs.setStringList('filtrosSalvos.$bancoDeDados.$matricula', valoresSalvosCarregados);
prefs.setStringList('filtrosContruirTela.$bancoDeDados.$matricula', valoresSalvosConstruirTela);
prefs.setBool('isfiltrosSalvosApp.$bancoDeDados.$matricula', isfiltrosSalvosApp);
}
}
}