ajustes no sigtap e visita domiciliar

This commit is contained in:
Reginaldo
2024-01-31 16:38:18 -03:00
parent c9513ff6fd
commit cfdfb316f8
26 changed files with 695 additions and 484 deletions

View File

@@ -46,22 +46,101 @@ class _ImportSigtapScreenState extends State<ImportSigtapScreen> {
stage = "Etapa 1 de 4 - Importando informações do CONECTASUS";
});
await ApiDataImportSigtap().loadSIGTAP(urlAPI, mode, nameCityApi).then((valueAPI)async{
setState(() {
stage = "Etapa 2 de 4 - Gravando os Procedimentos no Aplicativo";
});
// print(valueAPI['procedimentos']);
await DbSqliteSigtap().saveProceduresSigtapDB(valueAPI['procedimentos']).then((value)async{
await DbSqliteSigtap().saveProceduresRegisterSigtapDB(valueAPI['procedimentosRegistros']).then((value)async{
List<Map<String, dynamic>> rows = [];
List<dynamic> procedimentos = valueAPI['procedimentos'];
print(procedimentos);
if(procedimentos.isNotEmpty){
for(int i=0;procedimentos.length > i;i++){
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : procedimentos[i]['codProcedimento'],
'DESC_PROC_SIGTAP' : procedimentos[i]['nome'],
'GRUPO_PROC_SIGTAP' : procedimentos[i]['codGrupo'],
'QTDE_MAXIMA' : procedimentos[i]['qtdeMax'],
'IDADE_MIN' : procedimentos[i]['idadeMin'],
'IDADE_MAX' : procedimentos[i]['idadeMax'],
'SEXO' : procedimentos[i]['sexo'],
};
rows.add(row);
setState(() {});
}
}
await DbSqliteSigtap().saveProceduresSigtapDB(rows).then((value)async{
setState(() {
stage = "Etapa 2 de 4 - Gravando os Procedimentos no Aplicativo";
});
List<Map<String, dynamic>> rows = [];
List list = valueAPI['procedimentosRegistros'];
if(list.isNotEmpty) {
for (int i = 0; list.length > i; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP': list[i]['codProcedimento'],
'CODIGO_REGISTRO': list[i]['codRegistro'],
};
rows.add(row);
setState(() {});
}
}
await DbSqliteSigtap().saveProceduresRegisterSigtapDB(rows).then((value)async{
setState(() {
stage = "Etapa 3 de 4 - Gravando os CIDs no Aplicativo";
});
await DbSqliteSigtap().saveSigtapCID(valueAPI['CID']).then((value)async{
await DbSqliteSigtap().saveProceduresSigtapCID(valueAPI['procedimentosCID']).then((value)async{
setState(() {
stage = "Etapa 4 de 4 - Gravando os CIDs no Aplicativo";
});
await DbSqliteSigtap().saveCBOSigtap(valueAPI['CBO']).then((value)async{
await DbSqliteSigtap().saveProceduresCBOSigtap(valueAPI['procedimentosCBO']).then((value)async{
List<Map<String, dynamic>> rows = [];
List list = valueAPI['CID'];
if(list.isNotEmpty) {
for (int i = 0; list.length > i; i++) {
Map<String, dynamic> row = {
'CODIGO_CID' : list[i]['codCID'],
'DESCRICAO_CID' : list[i]['descCID'],
'RESTRICAO_SEXO' : list[i]['restSexo'],
};
rows.add(row);
setState(() {});
}
}
await DbSqliteSigtap().saveSigtapCID(rows).then((value)async{
setState(() {
stage = "Etapa 4 de 4 - Gravando os CIDs no Aplicativo";
});
List<Map<String, dynamic>> rows = [];
List list = valueAPI['procedimentosCID'];
if(list.isNotEmpty) {
for (int i = 0; list.length > i; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : list[i]['codProcedimento'],
'CODIGO_CID' : list[i]['codCID'],
};
rows.add(row);
setState(() {});
}
}
await DbSqliteSigtap().saveProceduresSigtapCID(rows).then((value)async{
List<Map<String, dynamic>> rows = [];
List list = valueAPI['CBO'];
if(list.isNotEmpty) {
for (int i = 0; list.length > i; i++) {
Map<String, dynamic> row = {
'CODIGO_CBO' : list[i]['codCBO'],
'DESCRICAO_CBO' : list[i]['descCBO'],
};
rows.add(row);
setState(() {});
}
}
await DbSqliteSigtap().saveCBOSigtap(rows).then((value)async{
List<Map<String, dynamic>> rows = [];
List list = valueAPI['procedimentosCBO'];
if(list.isNotEmpty) {
for (int i = 0; list.length > i; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : list[i]['codProcedimento'],
'CODIGO_CBO' : list[i]['codCBO'],
};
rows.add(row);
setState(() {});
}
}
await DbSqliteSigtap().saveProceduresCBOSigtap(rows).then((value)async{
await DbSqliteSigtap().saveSyncSigtap(valueAPI['competencia']).then((value)async{
setState(() {
finish = true;

View File

@@ -6,6 +6,7 @@ import 'package:rkm/widgets/button_default.dart';
import 'package:rkm/widgets/text_default.dart';
import '../config/const_variable.dart';
import '../service/api/api_data_load.dart';
import '../service/db/db_querys.dart';
import '../service/db/db_sqlite_load.dart';
import '../service/shared_preferences/shared_preferences_service.dart';
@@ -20,12 +21,11 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
final PrefService _prefService = PrefService();
String messageSteps = 'Aguarde ...';
bool finish = false;
String idUsuario = '';
String mode = '';
String urlAPI = '';
bool loading = false;
String nameCityApi = '';
String user = '';
String username = '';
double countProg = 0.0;
@override
@@ -40,7 +40,7 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
urlAPI = list[0]['URLAPI'];
mode = list[0]['MODE'];
nameCityApi = list[0]['NAME_CITY_API'];
user = list[0]['USER'];
username = list[0]['USER'];
if(urlAPI!=''){
initLoading();
}
@@ -48,295 +48,293 @@ class _LoadInitScreenState extends State<LoadInitScreen> {
}
initLoading()async{
await ApiDataLoad().loadPerm(urlAPI,mode,nameCityApi,user).then((response)async{
await ApiDataLoad().loadPerm(urlAPI,mode,nameCityApi,username).then((response)async{
print(response);
if(response['status'] == 0){
AlertDialogDefault().alert(context, 'Erro', 'Permissão negada', 'Voltar');
} else if(response['status'] == 1 && response['load_perm'] == "S") {
idUsuario = response['idUsuario'].toString();
print('idUsuario $idUsuario');
_prefService.createCacheidUsuario(idUsuario).then((value)async{
await ApiDataLoad().loadUnidades(urlAPI,mode,nameCityApi,user).then((value)async{
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 1 de 11 - Gravando as Unidades no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'ID_UNIDADE': list[i]['idUnidade'],
'NOME_UNIDADE': list[i]['nomeFantasia'],
'CNES_UNIDADE': list[i]['nrCNES']
};
rows.add(row);
countProg = 0.1;
setState(() {});
}
await DbSqliteLoad().saveUnidadesDB(rows).then((value)async{
await ApiDataLoad().loadProcedimentos(urlAPI,mode,nameCityApi,user).then((value)async{
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 2 de 11 - Gravando os Procedimentos no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : list[i]['codProcedimento'],
'DESC_PROC_SIGTAP' : list[i]['nome'],
'GRUPO_PROC_SIGTAP' : list[i]['codGrupo'],
'QTDE_MAXIMA' : list[i]['qtdeMax'],
'IDADE_MIN' : list[i]['idadeMin'],
'IDADE_MAX' : list[i]['idadeMax'],
'SEXO' : list[i]['sexo'],
};
rows.add(row);
countProg = 0.2;
setState(() {});
}
await DbSqliteLoad().saveProceduresDB(rows).then((value)async{
print('finalizou save Procedures');
await ApiDataLoad().loadProcedimentosRegistros(urlAPI,mode,nameCityApi,user).then((value)async{
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 3 de 11 - Gravando os Procedimentos Registros no Aplicativo";
});
print('finalizou saveProceduresRegisterDB');
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : list[i]['codProcedimento'],
'CODIGO_REGISTRO' : list[i]['codRegistro'],
};
rows.add(row);
countProg = 0.3;
setState(() {});
}
await DbSqliteLoad().saveProceduresRegisterDB(rows).then((value)async{
await ApiDataLoad().loadCID(urlAPI,mode,nameCityApi,user).then((value)async{
print('loadCID');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 4 de 11 - Gravando os CIDs no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'CODIGO_CID' : list[i]['codCID'],
'DESCRICAO_CID' : list[i]['descCID'],
'RESTRICAO_SEXO' : list[i]['restSexo'],
};
rows.add(row);
countProg = 0.4;
setState(() {});
}
await DbSqliteLoad().saveCID(rows).then((value)async{
print('finalizou saveCID');
await ApiDataLoad().loadProcedimentosCID(urlAPI,mode,nameCityApi,user).then((value)async{
print('loadProcedimentosCID');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 5 de 11 - Gravando os Procedimentos CIDs no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : list[i]['codProcedimento'],
'CODIGO_CID' : list[i]['codCID'],
};
rows.add(row);
countProg = 0.5;
setState(() {});
}
await DbSqliteLoad().saveProceduresCID(rows).then((value)async{
print('finalizou saveProceduresCID');
await ApiDataLoad().loadCBO(urlAPI,mode,nameCityApi,user).then((value)async{
print('loadCBO');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 6 de 11 - Gravando os CBOs no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'CODIGO_CBO' : list[i]['codCBO'],
'DESCRICAO_CBO' : list[i]['descCBO'],
};
rows.add(row);
countProg = 0.6;
setState(() {});
}
await DbSqliteLoad().saveCBO(rows).then((value)async{
print('finalizou saveCBO');
await ApiDataLoad().loadProcedimentosCBO(urlAPI,mode,nameCityApi,user).then((value)async{
print('loadProcedimentosCBO');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 7 de 11 - Gravando os Procedimentos CBO no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : value[i]['codProcedimento'],
'CODIGO_CBO' : value[i]['codCBO'],
};
rows.add(row);
countProg = 0.7;
setState(() {});
}
await DbSqliteLoad().saveProceduresCBO(rows).then((value)async{
print('finalizou saveProceduresCBO');
await ApiDataLoad().loadCIAP(urlAPI,mode,nameCityApi,user).then((value)async{
print('loadCIAP');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length != 0){
setState(() {
messageSteps = "Etapa 8 de 11 - Gravando os CIAPs no Aplicativo";
});
for(int i=0;list.length > i;i++){
Map<String, dynamic> row = {
'CODIGO_CIAP' : list[i]['codCIAP'],
'DESC_CIAP' : list[i]['descCIAP'],
'TIPO_CIAP' : list[i]['tipoCIAP'],
};
rows.add(row);
countProg = 0.8;
setState(() {});
}
await DbSqliteLoad().saveCIAP(rows).then((value)async{
print('finalizou saveCIAP');
await ApiDataLoad().loadMunicipios(urlAPI,mode,nameCityApi,user).then((value)async{
print('loadMunicipios');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length!=0){
setState(() {
messageSteps = "Etapa 9 de 11 - Gravando os Municípios no Aplicativo";
});
for(int i=0;list.length > i;i++){
Map<String, dynamic> row = {
'ID_MUNICIPIO' : list[i]['idMunicipio'],
'CODIGO_IBGE' : list[i]['codIBGE'],
'NO_MUNICIPIO' : list[i]['nomeMunicipio'],
'UF_ESTADO' : list[i]['UF'],
'ID_PAIS' : list[i]['idPais'],
};
rows.add(row);
countProg = 0.9;
setState(() {});
}
await DbSqliteLoad().saveCity(rows).then((value)async{
await ApiDataLoad().loadEquipes(urlAPI,mode,nameCityApi,user).then((value)async{
print('loadEquipes');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length!=0){
setState(() {
messageSteps = "Etapa 10 de 11 - Gravando as Equipes no Aplicativo";
});
for(int i=0;list.length > i;i++){
Map<String, dynamic> row = {
'ID_EQUIPE' : list[i]['idEquipe'],
'ID_UNIDADE' : list[i]['idUnidade'],
'INE' : list[i]['INE'],
'ID_ATB_AREA' : list[i]['idAtbArea'],
'AREA' : list[i]['area'],
'ID_ATB_MICROAREA': list[i]['idAtbMicroarea'],
'MICROAREA' : list[i]['microarea'],
};
rows.add(row);
countProg = 0.92;
setState(() {});
}
await DbSqliteLoad().saveTeam(rows).then((value)async{
countProg = 0.95;
setState(() {});
print('finalizou saveTeam');
await ApiDataLoad().loadEquipeComponentes(urlAPI,mode,nameCityApi,user).then((value)async{
print('loadEquipeComponentes');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length!=0) {
setState(() {
messageSteps ="Etapa 11 de 11 - Gravando os Profissionais das Equipes no Aplicativo";
});
for(int i=0;list.length > i;i++){
Map<String, dynamic> row = {
'ID_EQUIPE' : list[i]['idEquipe'],
'ID_PROFISSIONAL' : list[i]['idProfissional'],
'ATIVO' : list[i]['ativo'],
};
rows.add(row);
countProg = 0.97;
setState(() {});
}
await DbSqliteLoad().saveTeamComponents(rows).then((value)async{
print('finalizou saveTeamComponents');
setState(() {
countProg = 1;
finish = true;
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Profissionais Equipes não carregadas, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Equipes não carregadas, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Municípios não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'CIAPs não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Procedimentos CBOs não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'CBOs não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Procedimentos CIDs não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'CIDs não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Procedimentos Registros não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Procedimentos não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Unidades não carregadas, tente novamente!', 'Voltar');
await ApiDataLoad().loadUnidades(urlAPI,mode,nameCityApi,username).then((value)async{
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 1 de 11 - Gravando as Unidades no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'ID_UNIDADE': list[i]['idUnidade'],
'NOME_UNIDADE': list[i]['nomeFantasia'],
'CNES_UNIDADE': list[i]['nrCNES']
};
rows.add(row);
countProg = 0.1;
setState(() {});
}
});
await DbSqliteLoad().saveUnidadesDB(rows).then((value)async{
await ApiDataLoad().loadProcedimentos(urlAPI,mode,nameCityApi,username).then((value)async{
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 2 de 11 - Gravando os Procedimentos no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : list[i]['codProcedimento'],
'DESC_PROC_SIGTAP' : list[i]['nome'],
'GRUPO_PROC_SIGTAP' : list[i]['codGrupo'],
'QTDE_MAXIMA' : list[i]['qtdeMax'],
'IDADE_MIN' : list[i]['idadeMin'],
'IDADE_MAX' : list[i]['idadeMax'],
'SEXO' : list[i]['sexo'],
};
rows.add(row);
countProg = 0.2;
setState(() {});
}
await DbSqliteLoad().saveProceduresDB(rows).then((value)async{
print('finalizou save Procedures');
await ApiDataLoad().loadProcedimentosRegistros(urlAPI,mode,nameCityApi,username).then((value)async{
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 3 de 11 - Gravando os Procedimentos Registros no Aplicativo";
});
print('finalizou saveProceduresRegisterDB');
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : list[i]['codProcedimento'],
'CODIGO_REGISTRO' : list[i]['codRegistro'],
};
rows.add(row);
countProg = 0.3;
setState(() {});
}
await DbSqliteLoad().saveProceduresRegisterDB(rows).then((value)async{
await ApiDataLoad().loadCID(urlAPI,mode,nameCityApi,username).then((value)async{
print('loadCID');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 4 de 11 - Gravando os CIDs no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'CODIGO_CID' : list[i]['codCID'],
'DESCRICAO_CID' : list[i]['descCID'],
'RESTRICAO_SEXO' : list[i]['restSexo'],
};
rows.add(row);
countProg = 0.4;
setState(() {});
}
await DbSqliteLoad().saveCID(rows).then((value)async{
print('finalizou saveCID');
await ApiDataLoad().loadProcedimentosCID(urlAPI,mode,nameCityApi,username).then((value)async{
print('loadProcedimentosCID');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 5 de 11 - Gravando os Procedimentos CIDs no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : list[i]['codProcedimento'],
'CODIGO_CID' : list[i]['codCID'],
};
rows.add(row);
countProg = 0.5;
setState(() {});
}
await DbSqliteLoad().saveProceduresCID(rows).then((value)async{
print('finalizou saveProceduresCID');
await ApiDataLoad().loadCBO(urlAPI,mode,nameCityApi,username).then((value)async{
print('loadCBO');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 6 de 11 - Gravando os CBOs no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'CODIGO_CBO' : list[i]['codCBO'],
'DESCRICAO_CBO' : list[i]['descCBO'],
};
rows.add(row);
countProg = 0.6;
setState(() {});
}
await DbSqliteLoad().saveCBO(rows).then((value)async{
print('finalizou saveCBO');
await ApiDataLoad().loadProcedimentosCBO(urlAPI,mode,nameCityApi,username).then((value)async{
print('loadProcedimentosCBO');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length !=0){
setState(() {
messageSteps = "Etapa 7 de 11 - Gravando os Procedimentos CBO no Aplicativo";
});
for (int i = 0; i < list.length; i++) {
Map<String, dynamic> row = {
'COD_PROC_SIGTAP' : value[i]['codProcedimento'],
'CODIGO_CBO' : value[i]['codCBO'],
};
rows.add(row);
countProg = 0.7;
setState(() {});
}
await DbSqliteLoad().saveProceduresCBO(rows).then((value)async{
print('finalizou saveProceduresCBO');
await ApiDataLoad().loadCIAP(urlAPI,mode,nameCityApi,username).then((value)async{
print('loadCIAP');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length != 0){
setState(() {
messageSteps = "Etapa 8 de 11 - Gravando os CIAPs no Aplicativo";
});
for(int i=0;list.length > i;i++){
Map<String, dynamic> row = {
'CODIGO_CIAP' : list[i]['codCIAP'],
'DESC_CIAP' : list[i]['descCIAP'],
'TIPO_CIAP' : list[i]['tipoCIAP'],
};
rows.add(row);
countProg = 0.8;
setState(() {});
}
await DbSqliteLoad().saveCIAP(rows).then((value)async{
print('finalizou saveCIAP');
await ApiDataLoad().loadMunicipios(urlAPI,mode,nameCityApi,username).then((value)async{
print('loadMunicipios');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length!=0){
setState(() {
messageSteps = "Etapa 9 de 11 - Gravando os Municípios no Aplicativo";
});
for(int i=0;list.length > i;i++){
Map<String, dynamic> row = {
'ID_MUNICIPIO' : list[i]['idMunicipio'],
'CODIGO_IBGE' : list[i]['codIBGE'],
'NO_MUNICIPIO' : list[i]['nomeMunicipio'],
'UF_ESTADO' : list[i]['UF'],
'ID_PAIS' : list[i]['idPais'],
};
rows.add(row);
countProg = 0.9;
setState(() {});
}
await DbSqliteLoad().saveCity(rows).then((value)async{
await ApiDataLoad().loadEquipes(urlAPI,mode,nameCityApi,username).then((value)async{
print('loadEquipes');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length!=0){
setState(() {
messageSteps = "Etapa 10 de 11 - Gravando as Equipes no Aplicativo";
});
for(int i=0;list.length > i;i++){
Map<String, dynamic> row = {
'ID_EQUIPE' : list[i]['idEquipe'],
'ID_UNIDADE' : list[i]['idUnidade'],
'INE' : list[i]['INE'],
'ID_ATB_AREA' : list[i]['idAtbArea'],
'AREA' : list[i]['area'],
'ID_ATB_MICROAREA': list[i]['idAtbMicroarea'],
'MICROAREA' : list[i]['microarea'],
};
rows.add(row);
countProg = 0.92;
setState(() {});
}
await DbSqliteLoad().saveTeam(rows).then((value)async{
countProg = 0.95;
setState(() {});
print('finalizou saveTeam');
await ApiDataLoad().loadEquipeComponentes(urlAPI,mode,nameCityApi,username).then((value)async{
print('loadEquipeComponentes');
List list = value;
List<Map<String, dynamic>> rows = [];
if(list.length!=0) {
setState(() {
messageSteps ="Etapa 11 de 11 - Gravando os Profissionais das Equipes no Aplicativo";
});
for(int i=0;list.length > i;i++){
Map<String, dynamic> row = {
'ID_EQUIPE' : list[i]['idEquipe'],
'ID_PROFISSIONAL' : list[i]['idProfissional'],
'ATIVO' : list[i]['ativo'],
};
rows.add(row);
countProg = 0.97;
setState(() {});
}
await DbSqliteLoad().saveTeamComponents(rows).then((value)async{
print('finalizou saveTeamComponents');
setState(() {
countProg = 1;
finish = true;
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Profissionais Equipes não carregadas, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Equipes não carregadas, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Municípios não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'CIAPs não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Procedimentos CBOs não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'CBOs não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Procedimentos CIDs não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'CIDs não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Procedimentos Registros não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Procedimentos não carregados, tente novamente!', 'Voltar');
}
});
});
}else{
AlertDialogDefault().alert(context, 'Error', 'Unidades não carregadas, tente novamente!', 'Voltar');
}
});
}
});

View File

@@ -81,10 +81,15 @@ class _LoginSavedScreenState extends State<LoginSavedScreen> {
setState(() {
loading = false;
});
Navigator.push(
context,
MaterialPageRoute(builder: (context) => HomeScreen()),
);
int mes = DateTime.now().month;
if(widget.listControl[0]['COMPETENCIA'].toString()=='${DateTime.now().year}${mes<10?'0${mes}':'$mes'}'){
Navigator.push(
context,
MaterialPageRoute(builder: (context) => HomeScreen()),
);
}else{
Navigator.pushNamed(context, '/import_sigtap');
}
});
}
}

View File

@@ -9,6 +9,7 @@ import 'package:rkm/widgets/text_default.dart';
import 'package:sqflite/sqflite.dart';
import '../../controllers/main_controllers.dart';
import '../../service/api/api_data_load.dart';
import '../../service/api/api_data_sync.dart';
import '../../service/db/db_sqlite_load.dart';
import '../../service/shared_preferences/shared_preferences_service.dart';
import '../../widgets/title_input.dart';
@@ -37,7 +38,7 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
List searchUnitCodList=[];
List<String> listTeam = [];
String idUnidade ='';
String idUsuario ='1';
int idUsuario =0;
final PrefService _prefService = PrefService();
@@ -112,14 +113,20 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
super.initState();
recupDB();
getUnit();
// getUser();
}
getUser(){
_prefService.readCacheIdUsuario('idUsuario').then((value){
if(value != null){
idUsuario = value;
Future<int> getUser()async{
await ApiDataSync().syncProfissionais(urlAPI,mode,nameCityApi,inputUser.text,idUnidade).then((value)async{
List users = value;
for(int i =0; users.length > i; i++){
if( value[i]['username'].toString().toUpperCase()==inputUser.text.toUpperCase()){
print('idUsuario' + value[i]['idProfissional'].toString());
idUsuario = value[i]['idProfissional'];
}
}
print(value);
});
return idUsuario;
}
getUnit()async{
@@ -144,20 +151,30 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
}
}
if(idUnidade!=''){
// print('idUnidade');
// print(idUnidade);
// print('idUsuario');
// print(idUsuario);
var query = "SELECT * FROM EQUIPES JOIN PROFISSIONAIS_EQUIPE ON PROFISSIONAIS_EQUIPE.ID_EQUIPE = EQUIPES.ID_EQUIPE WHERE ID_UNIDADE = $idUnidade AND ID_PROFISSIONAL = $idUsuario";
List list = await db.rawQuery(query);
listTeam.clear();
for(int i=0; list.length > i;i++){
listTeam.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}');
}
setState(() {});
getUser().then((value)async{
var query = "SELECT * FROM EQUIPES JOIN PROFISSIONAIS_EQUIPE ON PROFISSIONAIS_EQUIPE.ID_EQUIPE = EQUIPES.ID_EQUIPE WHERE ID_UNIDADE = $idUnidade AND ID_PROFISSIONAL = $value";
List list = await db.rawQuery(query);
listTeam.clear();
for(int i=0; list.length > i;i++){
listTeam.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']==null?'':list[i]['MICROAREA']}');
}
var query1 = "SELECT * FROM EQUIPES WHERE ID_EQUIPE = $idUnidade";
List list1 = await db.rawQuery(query1);
print(list1);
var query2 = "SELECT * FROM PROFISSIONAIS_EQUIPE WHERE ID_PROFISSIONAL = $idUsuario";
List list2 = await db.rawQuery(query2);
print(list2);
print(list2.length);
print('idUsuario');
print(idUsuario);
print('idUnidade');
print(idUnidade);
print('listTeam');
print(listTeam);
setState(() {});
_prefService.createCacheidUsuario(value.toString());
});
}
// print('listTeam');
// print(listTeam);
}
@override
@@ -168,6 +185,7 @@ class _SyncLoginScreenState extends State<SyncLoginScreen> {
return Scaffold(
appBar: AppBar(
iconTheme: ConstVariable().iconThemeDataDefault,
centerTitle: true,
title: TextDefault(text: 'RKM AB - Sincronização de Unidade',fontSize: ConstVariable().fontSizeTitleAppBar,color: ColorPalette.white),
),

View File

@@ -185,7 +185,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
var queryControl = "SELECT * FROM CONTROLE_INTERNO";
List listControl = await db.rawQuery(queryControl);
final PrefService _prefService = PrefService();
_prefService.readCacheUnidade('idUnidade').then((listUnidade)async{
_prefService.readCacheUnidade().then((listUnidade)async{
idUnidade =listUnidade[0];
});
setState(() {
@@ -214,9 +214,10 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
for(int i=0; listVillageDB.length > i;i++){
villageDB.add('${listVillageDB[i]['NO_BAIRRO']}');
}
if(widget.listData[0]['NO_BAIRRO_LOGR']!=null && widget.listData[0]['NO_BAIRRO_LOGR']!=''){
if(widget.listData[0]['NO_BAIRRO_LOGR']!=null && widget.listData[0]['NO_BAIRRO_LOGR']!='' && !villageDB.contains(widget.listData[0]['NO_BAIRRO_LOGR'])){
villageDB.add(widget.listData[0]['NO_BAIRRO_LOGR']);
}
// print(villageDB);
setState(() {});
}

View File

@@ -61,7 +61,7 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
List<String> listCBO = [];
List<String> listINEPROF = [];
String idUsuario = '';
int idUsuario = 0;
String idUnidade = '';
String nomeUnidade = '';
String INE_DB='';
@@ -128,12 +128,12 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
getUser(){
final PrefService _prefService = PrefService();
_prefService.readCacheIdUsuario('idUsuario').then((value){
_prefService.readCacheIdUsername('idUsuario').then((value){
if(value != null){
idUsuario = value;
}
});
_prefService.readCacheUnidade('idUnidade').then((value){
_prefService.readCacheUnidade().then((value){
if(value!=null){
idUnidade = value[0];
nomeUnidade = value[1];

View File

@@ -133,7 +133,7 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
String? CBO_RESP_CADASTRO;
String? INE_RESP_CADASTRO;
String CNS_PROFISSIONAL='';
String idUsuario = '';
int idUsuario = 0;
String idUnidade = '';
String nomeUnidade = '';
String date_cad = '';
@@ -161,12 +161,12 @@ class _RegisterIndividualScreenState extends State<RegisterIndividualScreen> {
final PrefService _prefService = PrefService();
getUser(){
_prefService.readCacheIdUsuario('idUsuario').then((value){
_prefService.readCacheIdUsername('idUsuario').then((value){
if(value != null){
idUsuario = value;
}
});
_prefService.readCacheUnidade('idUnidade').then((value){
_prefService.readCacheUnidade().then((value){
if(value!=null){
idUnidade = value[0];
nomeUnidade = value[1];

View File

@@ -1,4 +1,7 @@
import 'package:flutter/material.dart';
import 'package:rkm/config/const_variable.dart';
import 'package:rkm/widgets/appbar_default.dart';
import 'package:rkm/widgets/screen_dev.dart';
class ComplementarySheetScreen extends StatefulWidget {
const ComplementarySheetScreen({Key? key}) : super(key: key);
@@ -10,6 +13,10 @@ class ComplementarySheetScreen extends StatefulWidget {
class _ComplementarySheetScreenState extends State<ComplementarySheetScreen> {
@override
Widget build(BuildContext context) {
return Center(child: Text('Ficha Complementar'),);
return Scaffold(
appBar: AppBarDefault().appbar(context, 'RKM AB - Ficha Complemetar'),
body: ScreenDev(),
);
}
}

View File

@@ -1,5 +1,8 @@
import 'package:flutter/material.dart';
import '../../widgets/appbar_default.dart';
import '../../widgets/screen_dev.dart';
class ConsumptionMarkersScreen extends StatefulWidget {
const ConsumptionMarkersScreen({Key? key}) : super(key: key);
@@ -10,6 +13,9 @@ class ConsumptionMarkersScreen extends StatefulWidget {
class _ConsumptionMarkersScreenState extends State<ConsumptionMarkersScreen> {
@override
Widget build(BuildContext context) {
return Center(child: Text('Marcadores de Consumo'),);
return Scaffold(
appBar: AppBarDefault().appbar(context, 'RKM AB - Marcadores de Consumo'),
body: ScreenDev(),
);
}
}

View File

@@ -1,5 +1,8 @@
import 'package:flutter/material.dart';
import '../../widgets/appbar_default.dart';
import '../../widgets/screen_dev.dart';
class EligibilityAssessmentScreen extends StatefulWidget {
const EligibilityAssessmentScreen({Key? key}) : super(key: key);
@@ -10,6 +13,9 @@ class EligibilityAssessmentScreen extends StatefulWidget {
class _EligibilityAssessmentScreenState extends State<EligibilityAssessmentScreen> {
@override
Widget build(BuildContext context) {
return Center(child: Text('Avaliação de Elegibilidade'),);
return Scaffold(
appBar: AppBarDefault().appbar(context, 'RKM AB - Avaliação de Elegibilidade'),
body: ScreenDev(),
);
}
}

View File

@@ -67,7 +67,7 @@ class _HomeVisitScreenState extends State<HomeVisitScreen> {
String INE_PROFISSIONAL='';
String CD_USUARIO_SUS='';
String idUnidade = '';
String idUsuario = '';
int idUsuario = 0;
String date = '';
String dateDB = '';
List <String> typeTurnService = [];
@@ -107,13 +107,13 @@ class _HomeVisitScreenState extends State<HomeVisitScreen> {
CD_USUARIO_SUS = list[0]['CD_USUARIO_SUS'];
});
final PrefService _prefService = PrefService();
_prefService.readCacheIdUsuario('idUsuario').then((value){
_prefService.readCacheIdUsername('idUsuario').then((value){
if(value != null){
idUsuario = value;
loadData();
}
});
_prefService.readCacheUnidade('idUnidade').then((value){
_prefService.readCacheUnidade().then((value){
if(value!=null){
idUnidade = value[0];
CNES_UNIDADE.text = value[1];
@@ -159,6 +159,8 @@ class _HomeVisitScreenState extends State<HomeVisitScreen> {
}
loadData()async{
print('idUsuario');
print(idUsuario);
await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){
ID_PROFISSIONAL = list['ID_PROFISSIONAL'];
NOME_PROFISSIONAL.text = list['NOME_PROFISSIONAL'];
@@ -261,7 +263,7 @@ class _HomeVisitScreenState extends State<HomeVisitScreen> {
'DESFECHO' : DESFECHO_COD,
'PESO' : PESO.text,
'ALTURA' : ALTURA.text,
'ID_PROFISSIONAL' : int.parse(idUsuario),
'ID_PROFISSIONAL' : idUsuario,
'CBO_PROFISSIONAL' : CBO_PROFISSIONAL,
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
'CNES_UNIDADE' : CNES_UNIDADE.text,

View File

@@ -1,5 +1,8 @@
import 'package:flutter/material.dart';
import '../../widgets/appbar_default.dart';
import '../../widgets/screen_dev.dart';
class ProceduresScreen extends StatefulWidget {
const ProceduresScreen({Key? key}) : super(key: key);
@@ -10,6 +13,9 @@ class ProceduresScreen extends StatefulWidget {
class _ProceduresScreenState extends State<ProceduresScreen> {
@override
Widget build(BuildContext context) {
return Center(child: Text('Procedimentos'),);
return Scaffold(
appBar: AppBarDefault().appbar(context, 'RKM AB - Procedimentos'),
body: ScreenDev(),
);
}
}

View File

@@ -1,5 +1,8 @@
import 'package:flutter/material.dart';
import '../../widgets/appbar_default.dart';
import '../../widgets/screen_dev.dart';
class ServiceDentalScreen extends StatefulWidget {
const ServiceDentalScreen({Key? key}) : super(key: key);
@@ -10,6 +13,9 @@ class ServiceDentalScreen extends StatefulWidget {
class _ServiceDentalScreenState extends State<ServiceDentalScreen> {
@override
Widget build(BuildContext context) {
return Center(child: Text('Atendimento Odontológico'),);
return Scaffold(
appBar: AppBarDefault().appbar(context, 'RKM AB - Atendimento Odontológico'),
body: ScreenDev(),
);
}
}

View File

@@ -40,7 +40,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
String date='';
String dateDB='';
String idUsuario='';
int idUsuario=0;
String idUnidade='';
String? nameCityApi;
String? mode;
@@ -129,36 +129,20 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
getUser()async{
final PrefService _prefService = PrefService();
_prefService.readCacheIdUsuario('idUsuario').then((value){
if(value != null){
idUsuario = value;
_prefService.readCacheIDUser().then((value){
if(value != 0){
idUsuario = int.parse(value);
// print('idUsuario get');
// print(idUsuario);
loadData();
}
});
_prefService.readCacheUnidade('idUnidade').then((value){
_prefService.readCacheUnidade().then((value){
if(value!=null){
idUnidade = value[0];
CNES_UNIDADE.text = value[1];
}
});
await DbSqliteLoad().intialDB().then((db)async{
List list = await db.query('ARGS');
urlAPI = list[0]['URLAPI'];
mode = list[0]['MODE'];
nameCityApi = list[0]['NAME_CITY_API'];
}).then((value)async{
await ApiDataImportSigtap().loadSIGTAP(urlAPI, mode, nameCityApi).then((value)async{
await DbSqliteSigtap().saveProceduresSigtapDB(value).then((db)async{
List list = await db.query('PROCEDIMENTOS_SIGTAP');
for(int i = 0; list.length>i;i++){
if(list[i]['COD_PROC_SIGTAP']!=null && list[i]['DESC_PROC_SIGTAP']!=null){
PROCEDIMENTOS_SIGTAP.add(list[i]['COD_PROC_SIGTAP']+' - ' + list[i]['DESC_PROC_SIGTAP']);
}
}
setState(() {});
});
});
});
await DBQuerys().buscaCIAP().then((list){
listCIAP.add(DropDownDataModel(cod: int.parse(list['CODIGO_CIAP']), title: list['DESC_CIAP']));
});
@@ -168,6 +152,8 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
}
loadData()async{
// print('idUsuario');
// print(idUsuario);
await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){
ID_PROFISSIONAL = list['ID_PROFISSIONAL'];
NOME_PROFISSIONAL.text = list['NOME_PROFISSIONAL'];
@@ -177,15 +163,62 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
}
setState(() {});
});
await DBQuerys().buscaCBOProfissional(idUsuario).then((list){
await DBQuerys().buscaCBOProfissional(idUsuario).then((list)async{
if(list.length!=0){
for(int i = 0; list.length>i;i++){
listCBO.add(list[i]['CODIGO_CBO'].toString());
}
}
if(listCBO.isNotEmpty){
await DbSqliteLoad().intialDB().then((db)async{
List list = await db.query('ARGS');
urlAPI = list[0]['URLAPI'];
mode = list[0]['MODE'];
nameCityApi = list[0]['NAME_CITY_API'];
}).then((value)async{
//sigtap
for(int i = 0; listCBO.length>i;i++){
print(listCBO[i]);
await DBQuerys().buscaCBOSProfissional(listCBO[i]).then((sigtap)async{
print('indice $i');
print(sigtap);
if(listCBO[i]==sigtap[0]['CODIGO_CBO']){
PROCEDIMENTOS_SIGTAP.add(sigtap[0]['CODIGO_CBO']+' - ' + sigtap[0]['DESCRICAO_CBO']);
List<String> aux = PROCEDIMENTOS_SIGTAP.toSet().toList();
PROCEDIMENTOS_SIGTAP = aux;
}
});
}
print(PROCEDIMENTOS_SIGTAP);
setState(() {});
// await ApiDataImportSigtap().loadSIGTAP(urlAPI, mode, nameCityApi).then((value)async{
// List<dynamic> procedimentos = value['procedimentos'];
// print(procedimentos.length);
// print(procedimentos);
// if(procedimentos.isNotEmpty){
// await DbSqliteSigtap().saveProceduresSigtapDB(procedimentos).then((db)async{
// List list = await db.query('PROCEDIMENTOS_SIGTAP');
// for(int i = 0; list.length>i;i++){
// if(list[i]['COD_PROC_SIGTAP']!=null && list[i]['DESC_PROC_SIGTAP']!=null){
// PROCEDIMENTOS_SIGTAP.add(list[i]['COD_PROC_SIGTAP']+' - ' + list[i]['DESC_PROC_SIGTAP']);
// List<String> aux = PROCEDIMENTOS_SIGTAP.toSet().toList();
// PROCEDIMENTOS_SIGTAP = aux;
// }
// }
// setState(() {
// loadSIGTAP = false;
// });
// });
// }
// });
});
}
CBO_RESP_CADASTRO = list.length == 0?null:list[0]['CODIGO_CBO'].toString();
setState(() {});
});
// print('IdUsuario: ${idUsuario}');
// print('IdUnidade: '+idUnidade);
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
for(int i=0; list.length > i;i++){
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}';
@@ -198,7 +231,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
// adicionar depois e usar um usuário real
// CBO_RESP_CADASTRO
//ok
if(date.isEmpty || dateDB.isEmpty || LOCAL_ATENDIMENTO_COD==0 || TIPO_ATENDIMENTO_COD ==0 || MODALIDADE_COD == 0 || TURNO_COD == 0
if(date.isEmpty || dateDB.isEmpty || LOCAL_ATENDIMENTO_COD==0 || TIPO_ATENDIMENTO_COD ==0 || MODALIDADE_COD == 0 || TURNO_COD == 0 || CBO_PROFISSIONAL == null
){
print('erro');
setState(() {
@@ -219,7 +252,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
Map<String, dynamic> row = {
'ID_CIDADAO' : ID_CIDADAO,
'CD_USUARIO_SUS' : CD_USUARIO_SUS,
'ID_PROFISSIONAL' : int.parse(idUsuario),
'ID_PROFISSIONAL' : idUsuario,
'CBO_PROFISSIONAL' : CBO_PROFISSIONAL,
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
'CNES_UNIDADE' : CNES_UNIDADE.text,
@@ -261,15 +294,16 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
CD_USUARIO_SUS = list[0]['CD_USUARIO_SUS'];
});
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
INE_PROFISSIONAL = list[0]['INE'];
ID_EQUIPE = list[0]['ID_EQUIPE'];
INE_PROFISSIONAL = list[0]['INE']??'';
ID_EQUIPE = list[0]['ID_EQUIPE']??0;
}
@override
void initState() {
super.initState();
dadosCidadao();
getUser();
dadosCidadao();
loadLists();
}
@@ -328,7 +362,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
onChanged: (v)=>setState((){}),
),
DropdownWithSubtitle(
list: listCBO,
list: PROCEDIMENTOS_SIGTAP,
widthSubtitle: width*0.7,
subtitle: 'CBO',
hintDropdown: 'CBO',

View File

@@ -6,6 +6,8 @@ import 'package:rkm/config/color_palette.dart';
import 'package:rkm/widgets/alert_dialog_default.dart';
import 'package:rkm/widgets/button_default.dart';
import 'package:rkm/widgets/text_default.dart';
import '../service/api/api_data_import_sigtap.dart';
import '../service/db/db_sqlite_Sigtap.dart';
import '../service/db/db_sqlite_load.dart';
import '../service/shared_preferences/shared_preferences_service.dart';
@@ -60,7 +62,7 @@ class _SyncInitScreenState extends State<SyncInitScreen> {
}
dataUser()async{
_prefService.readCacheUnidade('idUnidade').then((listUnidade)async{
_prefService.readCacheUnidade().then((listUnidade)async{
_prefService.readCacheSync('area', false).then((list){
foraArea = list[1];
List splited = list[0].split(': ');
@@ -152,10 +154,10 @@ class _SyncInitScreenState extends State<SyncInitScreen> {
}else{
setState(()=> messageSteps = "Etapa 10 de 10 - Gravando os Cadastros Individuais no Aplicativo");
await DbSqliteSync().insertCadastrosIndividuais(value,'sync',0).then((value)async{
countProg = 1;
setState(() {});
await DbSqliteSync().saveSync(codCity,codState,urlAPI,mode,nameCityApi,nameCityFront,codCityIbge,user,idUnidade,nomeUnidade,area,microarea).then((value)async{
Navigator.pushNamed(context, '/home');
countProg = 1;
setState(() {});
Navigator.pushNamed(context, '/import_sigtap');
});
});
}