diff --git a/lib/screens/registers_citizen/register_citizen_screen.dart b/lib/screens/registers_citizen/register_citizen_screen.dart index 41f121d..dd224f5 100644 --- a/lib/screens/registers_citizen/register_citizen_screen.dart +++ b/lib/screens/registers_citizen/register_citizen_screen.dart @@ -585,7 +585,7 @@ class _RegisterCitizenScreenState extends State { selectCountry = widget.listData[0]['ID_PAIS_RESID']==33?'BRASIL':'OUTRO'; int codCity = widget.listData[0]['ID_MUNICIPIO_RESID']; List listCity = await DBQuerys().buscaMunicipioporId(codCity); - cityController.text = listCity[0]['NO_MUNICIPIO']+listCity.length!=0?' - SP':''; + cityController.text = listCity.length!=0?listCity[0]['NO_MUNICIPIO']+' - SP':''; resultListResid = listCity; codIBGEController.text = listCity[0]['CODIGO_IBGE']; selectVillage = widget.listData[0]['NO_BAIRRO_LOGR']; diff --git a/lib/screens/registers_citizen/register_home_screen.dart b/lib/screens/registers_citizen/register_home_screen.dart index 85bf5ec..7642e35 100644 --- a/lib/screens/registers_citizen/register_home_screen.dart +++ b/lib/screens/registers_citizen/register_home_screen.dart @@ -84,6 +84,7 @@ class _RegisterHomeScreenState extends State { String? RESPONSAVEL_TECNICO_INST; String? CARGO_RESP_TECNICO_INST; String? TEL_RESP_TECNICO_INST; + String CD_USUARIO_SUS = ''; int ID_CIDADAO=0; String date_cad = ''; String TIPO_SALVAR = 'new'; @@ -181,6 +182,7 @@ class _RegisterHomeScreenState extends State { loadRegisterHome()async{ ID_DOMICILIO = widget.listData[0]['ID_DOMICILIO']; ID_CIDADAO = widget.listData[0]['ID_CIDADAO']; + CD_USUARIO_SUS = widget.listData[0]['CD_USUARIO_SUS']; DBQuerys().buscaCadDomiciliar(ID_DOMICILIO).then((dataHome)async{ TIPO_IMOVEL_COD = dataHome[0]['TIPO_IMOVEL']??0; if(dataHome.length!=0){ @@ -269,7 +271,6 @@ class _RegisterHomeScreenState extends State { date_cad = dataHome[0]['DT_CADASTRO']??''; List splitted = date_cad.toString().split('-'); DT_CADASTRO.text = splitted.length<2?'':'${splitted[2]}/${splitted[1]}/${splitted[0]}'; - print(DT_CADASTRO.text); ID_EQUIPE = dataHome[0]['ID_EQUIPE']??0; NOME_INSTITUICAO_PERMANENCIA = dataHome[0]['NOME_INSTITUICAO_PERMANENCIA']; PROFISSIONAIS_VINCULADOS_INST = dataHome[0]['PROFISSIONAIS_VINCULADOS_INST']; @@ -360,7 +361,7 @@ class _RegisterHomeScreenState extends State { 'CARGO_RESP_TECNICO_INST' : CARGO_RESP_TECNICO_INST, 'TEL_RESP_TECNICO_INST' : TEL_RESP_TECNICO_INST, }; - await DbSqliteSync().insertCadastrosDomiciliares(row,TIPO_SALVAR,ID_DOMICILIO,ID_CIDADAO).then((value){ + await DbSqliteSync().insertCadastrosDomiciliares(row,TIPO_SALVAR,ID_DOMICILIO,ID_CIDADAO,CD_USUARIO_SUS).then((value){ AlertDialogDefault().alert( context, 'Aviso', diff --git a/lib/screens/sync_init_screen.dart b/lib/screens/sync_init_screen.dart index ed0c3cf..12393d4 100644 --- a/lib/screens/sync_init_screen.dart +++ b/lib/screens/sync_init_screen.dart @@ -134,7 +134,7 @@ class _SyncInitScreenState extends State { }else{ setState(()=> messageSteps = "Etapa 9 de 10 - Gravando os Cadastros Domiciliares no Aplicativo"); } - await DbSqliteSync().insertCadastrosDomiciliares(value,'sync',0,0).then((value)async{ + await DbSqliteSync().insertCadastrosDomiciliares(value,'sync',0,0,'').then((value)async{ await ApiDataSync().syncCadastrosIndividuais(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea).then((value)async{ if(value.length == 0){ setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros Individuais - Por favor, tente novamente!"); diff --git a/lib/service/api/api_data_post.dart b/lib/service/api/api_data_post.dart index df7e2d1..95ea0b0 100644 --- a/lib/service/api/api_data_post.dart +++ b/lib/service/api/api_data_post.dart @@ -18,6 +18,7 @@ class ApiDataPost{ if(response.statusCode == 200) { await DBQuerys().updateCidadao(); await DBQuerys().updateCadastroIndividuais(); + await DBQuerys().updateCadastroDomiciliar(); return json.decode(response.body); }else{ return 'error'; diff --git a/lib/service/db/db_querys.dart b/lib/service/db/db_querys.dart index 091d557..f3238f9 100644 --- a/lib/service/db/db_querys.dart +++ b/lib/service/db/db_querys.dart @@ -470,4 +470,11 @@ class DBQuerys{ Database db = await DbSqliteLoad().intialDB(); await db.update('CADASTROS_INDIVIDUAIS', row,where: "SINCRONIZADO = 'N'"); } + Future updateCadastroDomiciliar()async{ + Map row = { + 'SINCRONIZADO': 'S', + }; + Database db = await DbSqliteLoad().intialDB(); + await db.update('CIDADAO_DOMICILIO', row,where: "SINCRONIZADO = 'N'"); + } } \ No newline at end of file diff --git a/lib/service/db/db_sqlite_sync.dart b/lib/service/db/db_sqlite_sync.dart index c8d23f9..06f691b 100644 --- a/lib/service/db/db_sqlite_sync.dart +++ b/lib/service/db/db_sqlite_sync.dart @@ -237,7 +237,7 @@ class DbSqliteSync{ } return db; } - Future insertCadastrosDomiciliares(var value,String type,int ID_DOMICILIO,int ID_CIDADAO)async{ + Future insertCadastrosDomiciliares(var value,String type,int ID_DOMICILIO,int ID_CIDADAO,String CD_USUARIO_SUS)async{ Database db = await DbSqliteLoad().intialDB(); // CIDADAO_DOMICILIO (ID_DOMICILIO,TIPO_IMOVEL,ID_AREA_DOMICILIO,ID_MICROAREA_DOMICILIO,FORA_AREA,SITUACAO_MORADIA,TIPO_LOCALIDADE,TIPO_DOMICILIO,NUM_MORADORES, // NUM_COMODOS,SITUACAO_RURAL,TIPO_ACESSO,MAT_PREDOMINANTE,DISPONIBILIDADE_ENERGIA,TIPO_ABASTECIMENTO,TRATAMENTO_AGUA,DESTINO_LIXO,ESCOAMENTO,FL_ANIMAIS, @@ -299,10 +299,16 @@ class DbSqliteSync{ int id = await db.insert('CIDADAO_DOMICILIO', value); print('novo id $id'); Map row = { + 'ID_DOMICILIO': id, 'ORIGEM' : 'A', 'SINCRONIZADO': 'N' }; await db.update('CIDADAOS', row,where: "ID_CIDADAO = $ID_CIDADAO"); + Map rowDom = { + 'ID_DOMICILIO': id, + 'CD_USUARIO_SUS': CD_USUARIO_SUS + }; + await db.insert('DOMICILIOS_CIDADAOS', rowDom); }else if(type=='update'){ await db.update('CIDADAO_DOMICILIO', value,where: "ID_DOMICILIO = '$ID_DOMICILIO'"); Map row = { @@ -310,6 +316,11 @@ class DbSqliteSync{ 'SINCRONIZADO': 'N' }; await db.update('CIDADAOS', row,where: "ID_CIDADAO = $ID_CIDADAO"); + Map rowDom = { + 'ID_DOMICILIO': ID_DOMICILIO, + 'CD_USUARIO_SUS': CD_USUARIO_SUS + }; + await db.insert('DOMICILIOS_CIDADAOS', rowDom); } return db;