From 9bdc574b554ba44ae22c11af55d81a50847d0541 Mon Sep 17 00:00:00 2001 From: Reginaldo Date: Fri, 23 Aug 2024 15:42:11 -0300 Subject: [PATCH] =?UTF-8?q?ajustes=20cidadao=20fora=20de=20area,=20e=20aju?= =?UTF-8?q?stes=20para=20n=C3=A3o=20exibir=20microarea=20null?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/app/src/main/AndroidManifest.xml | 5 +++-- lib/screens/attendance_list_screen.dart | 9 ++++++--- lib/screens/home_screen.dart | 7 +++++-- .../register_citizen_screen.dart | 6 +++--- .../registers_citizen/register_home_screen.dart | 4 ++-- .../register_individual_screen.dart | 16 ++++++++-------- .../atendimento_domiciliar_tela.dart | 4 ++-- .../select_service/visita_domiciliar_tela.dart | 4 ++-- lib/screens/sync_init_screen.dart | 8 +++++--- lib/service/api/api_data_sync.dart | 6 +++--- lib/service/db/db_sqlite_sync.dart | 4 ++++ .../shared_preferences_service.dart | 4 ++-- lib/widgets/dropdown_equipe.dart | 2 +- pubspec.yaml | 4 ++-- 14 files changed, 48 insertions(+), 35 deletions(-) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index aa63f85..07bbbc1 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,7 +1,8 @@ - + { List visitHome = []; List citizenUpdate = []; List serviceHome = []; + List cadastrosIndividuais = []; getData()async{ Database db = await DbSqliteLoad().intialDB(); visitHome = await db.query('VISITAS_DOMICILIARES'); citizenUpdate = await db.query('CIDADAOS WHERE SINCRONIZADO = "N"'); + cadastrosIndividuais = await db.query('CADASTROS_INDIVIDUAIS WHERE SINCRONIZADO = "N"'); serviceHome =await db.query('ATENDIMENTOS_DOMICILIARES'); - print(await db.query('ATENDIMENTOS_DOMICILIARES')); + // print(await db.query('ATENDIMENTOS_DOMICILIARES')); + // print(await db.query('CADASTROS_INDIVIDUAIS WHERE SINCRONIZADO = "N"')); // print(await db.query('VISITAS_DOMICILIARES_PROC')); // print(await db.query('CIDADAOS WHERE SINCRONIZADO = "N"')); - print(citizenUpdate.length); + // print(citizenUpdate.length); // List list = await db.rawQuery('SELECT * FROM CIDADAOS WHERE CNS = $CNS'); setState(() {}); } @@ -68,7 +71,7 @@ class _AttendanceListScreenState extends State { // fontSize: 18, // ), TextDefault( - text: 'Cadastros Cidadãos Realizados / Atualizados : ${citizenUpdate.length}', + text: 'Cadastros Cidadãos Realizados / Atualizados : ${citizenUpdate.length + cadastrosIndividuais.length}', fontWeigth: FontWeight.bold, color: ColorPalette.black54, fontSize: 18, diff --git a/lib/screens/home_screen.dart b/lib/screens/home_screen.dart index d924887..71d727a 100644 --- a/lib/screens/home_screen.dart +++ b/lib/screens/home_screen.dart @@ -38,6 +38,7 @@ class _HomeScreenState extends State { } searchCitizen()async{ + if(inputSearch.text.isNotEmpty){ showResults =[]; for (int i =0;dataCitizen.length>i;i++) { @@ -64,8 +65,10 @@ class _HomeScreenState extends State { }); }else{ setState(() { - for(int i = 0;i<10;i++){ - showResults.add(dataCitizen[i]); + if(dataCitizen.isNotEmpty){ + for(int i = 0;i<10;i++){ + showResults.add(dataCitizen[i]); + } } }); } diff --git a/lib/screens/registers_citizen/register_citizen_screen.dart b/lib/screens/registers_citizen/register_citizen_screen.dart index a244ac3..1abdd82 100644 --- a/lib/screens/registers_citizen/register_citizen_screen.dart +++ b/lib/screens/registers_citizen/register_citizen_screen.dart @@ -358,7 +358,7 @@ class _RegisterCitizenScreenState extends State { checkCNS = 'ok'; } if((selectClassification!='OUTRO MUNICIPIO' && selectCountry == 'BRASIL' && selectStreet == null) || - (selectStreet!=null && (cepController.text.isEmpty || cepController.text.length!=8)) || + (selectStreet!=null && (cepController.text.isEmpty || cepController.text.length!=10)) || (selectStreet!=null && numberController.text.isEmpty) || (selectTypeStreet == null && selectClassification!='OUTRO MUNICIPIO') || (selectVillage == null && (selectCountry == 'BRASIL' && selectClassification!='OUTRO MUNICIPIO')) || @@ -445,7 +445,7 @@ class _RegisterCitizenScreenState extends State { 'NO_BAIRRO_LOGR' : selectVillage, 'ID_LOGR_TIPO' : idTipo, 'NOME_LOGR' : selectStreet, - 'CEP_LOGR' : cepController.text.isNotEmpty?int.parse(cepController.text):0, + 'CEP_LOGR' : cepController.text.isNotEmpty?int.parse(cepController.text.replaceAll('-', '').replaceAll('.', '')):0, 'NUMERO_LOGR' : numberController.text.isNotEmpty && numberController.text!='S/N'?int.parse(numberController.text):0, 'LOTEAMENTO_LOGR' : selectSubdivision, 'COMPL_LOGR' : complementController.text, @@ -1546,7 +1546,7 @@ class _RegisterCitizenScreenState extends State { typeInput: 'cep', controller: cepController, subtitle: 'CEP(só números)', - errorInput: selectClassification!='OUTRO MUNICIPIO'&& cepController.text.isEmpty?'Campo Obrigatório':cepController.text.length!=8?'CEP incorreto':'', + errorInput: selectClassification!='OUTRO MUNICIPIO'&& cepController.text.isEmpty?'Campo Obrigatório':cepController.text.length!=10?'CEP incorreto':'', labelInput: 'CEP(só números)', widthInput: width*0.7, widthSubtitle: width*0.2, diff --git a/lib/screens/registers_citizen/register_home_screen.dart b/lib/screens/registers_citizen/register_home_screen.dart index d5efb76..d4e04d9 100644 --- a/lib/screens/registers_citizen/register_home_screen.dart +++ b/lib/screens/registers_citizen/register_home_screen.dart @@ -338,8 +338,8 @@ class _RegisterHomeScreenState extends State { }); 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']}'; - listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}'); + INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'; + listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'); } setState(() {}); } diff --git a/lib/screens/registers_citizen/register_individual_screen.dart b/lib/screens/registers_citizen/register_individual_screen.dart index a0fbfb6..fd5da22 100644 --- a/lib/screens/registers_citizen/register_individual_screen.dart +++ b/lib/screens/registers_citizen/register_individual_screen.dart @@ -245,8 +245,8 @@ class _RegisterIndividualScreenState extends State { if(dataCitizen[0]['INE']!=null){ print('co'); - String ine = 'INE: ${dataCitizen[0]['INE']} / Área : ${dataCitizen[0]['AREA']} - Microárea : ${dataCitizen[0]['MICROAREA']}'; - INE_RESP_CADASTRO = 'INE: ${dataCitizen[0]['INE']} / Área: ${dataCitizen[0]['AREA']} - Microárea : ${dataCitizen[0]['MICROAREA']}'; + String ine = 'INE: ${dataCitizen[0]['INE']} / Área : ${dataCitizen[0]['AREA']} ${dataCitizen[0]['MICROAREA']==null?'':'- Microárea : ${dataCitizen[0]['MICROAREA']}'}'; + INE_RESP_CADASTRO = 'INE: ${dataCitizen[0]['INE']} / Área: ${dataCitizen[0]['AREA']} ${dataCitizen[0]['MICROAREA']==null?'':'- Microárea : ${dataCitizen[0]['MICROAREA']}'}'; INE = EquipeCidadao( DESCRICAO: ine!, ID_MICROAREA_CIDADAO: dataCitizen[0]['ID_MICROAREA_CIDADAO'], @@ -256,8 +256,8 @@ class _RegisterIndividualScreenState extends State { }else{ List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario); for(int i=0; list.length > i;i++){ - String ine = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}'; - INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}'; + String ine = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'; + INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'; listINE.add( EquipeCidadao( DESCRICAO: ine!, @@ -435,10 +435,10 @@ class _RegisterIndividualScreenState extends State { List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario); for(int i=0; list.length > i;i++){ ID_AREA_CIDADAO = list[i]['ID_ATB_AREA']; - ID_MICROAREA_CIDADAO = list[i]['ID_ATB_MICROAREA']; + ID_MICROAREA_CIDADAO = list[i]['ID_ATB_MICROAREA']==null?0:list[i]['ID_ATB_MICROAREA']; INE_DB = list[i]['INE']; - String ine = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}'; - INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}'; + String ine = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'; + INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'; listINE.add( EquipeCidadao( DESCRICAO: ine!, @@ -446,7 +446,7 @@ class _RegisterIndividualScreenState extends State { ID_AREA_CIDADAO: list[i]['ID_ATB_AREA'] ) ); - listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}'); + listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'); } } await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){ diff --git a/lib/screens/select_service/atendimento_domiciliar_tela.dart b/lib/screens/select_service/atendimento_domiciliar_tela.dart index 554bc3a..c0e39da 100644 --- a/lib/screens/select_service/atendimento_domiciliar_tela.dart +++ b/lib/screens/select_service/atendimento_domiciliar_tela.dart @@ -184,8 +184,8 @@ class _AtendimentoDomiciliarTelaState extends State { }); 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']}'; - listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}'); + INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'; + listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'); } setState(() {}); } diff --git a/lib/screens/select_service/visita_domiciliar_tela.dart b/lib/screens/select_service/visita_domiciliar_tela.dart index 48ac4b8..0666f86 100644 --- a/lib/screens/select_service/visita_domiciliar_tela.dart +++ b/lib/screens/select_service/visita_domiciliar_tela.dart @@ -179,8 +179,8 @@ class _VisitaDomiciliarTelaState extends State { 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']}'; - listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}'); + INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'; + listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} ${list[i]['MICROAREA']==null?'':'- Microárea : ${list[i]['MICROAREA']}'}'); } // var db = await DbSqliteLoad().intialDB(); // List listSIGTAP = await db.query('PROCEDIMENTOS_SIGTAP'); diff --git a/lib/screens/sync_init_screen.dart b/lib/screens/sync_init_screen.dart index e51c61c..da3147b 100644 --- a/lib/screens/sync_init_screen.dart +++ b/lib/screens/sync_init_screen.dart @@ -29,6 +29,7 @@ class _SyncInitScreenState extends State { int idArea = 0; int idMicroarea = 0; bool foraArea = false; + int foraAreaInt = 0; String urlAPI=''; String mode = ''; String nameCityApi = ''; @@ -67,6 +68,7 @@ class _SyncInitScreenState extends State { _prefService.readCacheSync().then((list){ print(list); foraArea = list[8]; + foraAreaInt = foraArea?1:0; idArea = list[2]; idMicroarea = list[4]; idUnidade = listUnidade[0].toString(); @@ -130,7 +132,7 @@ class _SyncInitScreenState extends State { await DbSqliteSync().insertProfissionaisCBOs(value).then((value)async{ countProg = 0.7; setState(() {}); - await ApiDataSync().syncCidadaos(urlAPI,mode,nameCityApi,user,idUnidade,idArea,idMicroarea,foraArea).then((value)async{ + await ApiDataSync().syncCidadaos(urlAPI,mode,nameCityApi,user,idUnidade,idArea,idMicroarea,foraAreaInt).then((value)async{ if(value.length == 0){ setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros dos Cidadãos - Por favor, tente novamente!"); }else{ @@ -138,7 +140,7 @@ class _SyncInitScreenState extends State { await DbSqliteSync().insertCidadaos(value,'sync','').then((value)async{ countProg = 0.8; setState(() {}); - await ApiDataSync().syncCadastrosDomiciliares(urlAPI,mode,nameCityApi,user,idUnidade,idArea,idMicroarea,foraArea).then((value)async{ + await ApiDataSync().syncCadastrosDomiciliares(urlAPI,mode,nameCityApi,user,idUnidade,idArea,idMicroarea,foraAreaInt).then((value)async{ if(value.length == 0){ setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros Domiciliares - Por favor, tente novamente!"); }else{ @@ -146,7 +148,7 @@ class _SyncInitScreenState extends State { await DbSqliteSync().insertCadastrosDomiciliares(value,'sync',0,0,'').then((value)async{ countProg = 0.9; setState(() {}); - await ApiDataSync().syncCadastrosIndividuais(urlAPI,mode,nameCityApi,user,idUnidade,idArea,idMicroarea,foraArea).then((value)async{ + await ApiDataSync().syncCadastrosIndividuais(urlAPI,mode,nameCityApi,user,idUnidade,idArea,idMicroarea,foraAreaInt).then((value)async{ if(value.length == 0){ setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros Individuais - Por favor, tente novamente!"); }else{ diff --git a/lib/service/api/api_data_sync.dart b/lib/service/api/api_data_sync.dart index 034c9d1..ea17c76 100644 --- a/lib/service/api/api_data_sync.dart +++ b/lib/service/api/api_data_sync.dart @@ -57,7 +57,7 @@ class ApiDataSync{ Future syncCidadaos(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea)async{ // http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/cidadaos/1/1/true // http://192.168.0.42:8061/api/atb/desenvolvimento/portoferreira/admin/sync/47/cidadaos/1/1/true - final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cidadaos/$area/$microarea/$foraArea'; + final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cidadaos/$area/$microarea/${foraArea==1?1:null}'; print(url); final response = await http.get(Uri.parse(url)); final map = json.decode(response.body); @@ -65,14 +65,14 @@ class ApiDataSync{ } Future syncCadastrosDomiciliares(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea)async{ // http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/cadastrosDomiciliares/1/1/true - final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cadastrosDomiciliares/$area/$microarea/$foraArea'; + final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cadastrosDomiciliares/$area/$microarea/${foraArea==1?1:null}'; final response = await http.get(Uri.parse(url)); final map = json.decode(response.body); return map; } Future syncCadastrosIndividuais(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea)async{ // http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/admin/sync/3/cadastrosIndividuais/1/1/true - final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cadastrosIndividuais/$area/$microarea/$foraArea'; + final url = '${urlAPI}${mode}/${nameCityApi}/${user}/sync/${idUnidade}/cadastrosIndividuais/$area/$microarea/${foraArea==1?1:null}'; final response = await http.get(Uri.parse(url)); final map = json.decode(response.body); return map; diff --git a/lib/service/db/db_sqlite_sync.dart b/lib/service/db/db_sqlite_sync.dart index c0704ec..a63ea85 100644 --- a/lib/service/db/db_sqlite_sync.dart +++ b/lib/service/db/db_sqlite_sync.dart @@ -175,6 +175,10 @@ class DbSqliteSync{ Database db = await DbSqliteLoad().intialDB(); Batch batch = db.batch(); + if(value.toString() == '[Erro para carregar os Cidadaos - Sync -> syncCidadaos()]'){ + return db; + } + if(type=='sync'){ //para a carga inicial o datalista funciona List dataList = value; diff --git a/lib/service/shared_preferences/shared_preferences_service.dart b/lib/service/shared_preferences/shared_preferences_service.dart index 5974b91..2b41074 100644 --- a/lib/service/shared_preferences/shared_preferences_service.dart +++ b/lib/service/shared_preferences/shared_preferences_service.dart @@ -28,9 +28,9 @@ class PrefService{ _preferences.setInt('idEquipe',equipe.ID_EQUIPE); _preferences.setString('ine',equipe.INE); _preferences.setInt('area',equipe.AREA); - _preferences.setInt('idAtbMicroarea',equipe.ID_ATB_MICROAREA); + _preferences.setInt('idAtbMicroarea',equipe.ID_ATB_MICROAREA==null?0:equipe.ID_ATB_MICROAREA); _preferences.setInt('idAtbArea',equipe.ID_ATB_AREA); - _preferences.setInt('microarea',equipe.MICROAREA); + _preferences.setInt('microarea',equipe.MICROAREA==null?0:equipe.MICROAREA); _preferences.setInt('idProfissional',equipe.ID_PROFISSIONAL); _preferences.setInt('ativo',equipe.ATIVO); _preferences.setBool('foraArea', foraArea); diff --git a/lib/widgets/dropdown_equipe.dart b/lib/widgets/dropdown_equipe.dart index 29848fb..9cdda10 100644 --- a/lib/widgets/dropdown_equipe.dart +++ b/lib/widgets/dropdown_equipe.dart @@ -46,7 +46,7 @@ class DropDownEquipe extends StatelessWidget { child: Padding( padding: EdgeInsets.symmetric(horizontal: 0.0), child: TextDefault( - text: 'INE: ${value.INE} / Área: ${value.AREA} - Microárea : ${value.MICROAREA==null?'':value.MICROAREA}', + text: 'INE: ${value.INE} / Área: ${value.AREA} ${value.MICROAREA==null?'':'- Microárea : ${value.MICROAREA}'}', maxLines: 2, fontSize: fontSize, color: Colors.black, diff --git a/pubspec.yaml b/pubspec.yaml index aa6bf84..5796b1c 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -3,10 +3,10 @@ description: RKM AB 2.0. #Cadastro e edição do Cadastro do Cidadão, Cadastro Individual, Cadastro Domiciliar e Visita Domiciliar #versão 1.0.6+5 finalizada dia 19/02/2024 #versão 1.0.6+5 finalizada dia 18/03/2024 -#versão 1.0.10+1 AJUSTES PARA A SINCRONIZAÇÃO DIA 22/08/2024 +#versão 1.0.10+11 AJUSTES PARA A SINCRONIZAÇÃO DIA 22/08/2024 publish_to: 'none' -version: 1.0.10+1 +version: 1.0.10+11 environment: sdk: '>=3.2.3 <4.0.0'