From a8616fcb84c72926017f3baf1ca1a22784c7e925 Mon Sep 17 00:00:00 2001 From: Reginaldo Date: Fri, 28 Apr 2023 16:55:06 -0300 Subject: [PATCH] recuperando dados cadastro domiciliar --- lib/config/const_variable.dart | 39 +++ .../register_home_screen.dart | 269 ++++++++++-------- .../register_individual_screen.dart | 7 +- lib/service/db/db_querys.dart | 20 +- 4 files changed, 205 insertions(+), 130 deletions(-) diff --git a/lib/config/const_variable.dart b/lib/config/const_variable.dart index 1acfd26..fd710e3 100644 --- a/lib/config/const_variable.dart +++ b/lib/config/const_variable.dart @@ -217,6 +217,45 @@ class ConstVariable{ DropDownDataModel(cod: 2, title: 'MUDANÇA DE TERRITÓRIO'), ]; + List listTypeHome = [ + DropDownDataModel(cod: 1,title: 'DOMICÍLIO'), + DropDownDataModel(cod: 2,title: 'COMÉRCIO'), + DropDownDataModel(cod: 3,title: 'TERRENO BALDIO'), + DropDownDataModel(cod: 4,title: 'PONTO ESTRATÉGICO'), + DropDownDataModel(cod: 5,title: 'ESCOLA'), + DropDownDataModel(cod: 6,title: 'CRECHE'), + DropDownDataModel(cod: 7,title: 'ABRIGO'), + DropDownDataModel(cod: 8,title: 'INSTITUIÇÃO DE LONGA PERMANÊNCIA PARA IDOSOS'), + DropDownDataModel(cod: 9,title: 'UNIDADE PRISIONAL'), + DropDownDataModel(cod: 10,title: 'UNIDADE DE MEDIDA SOCIOEDUCATIVA'), + DropDownDataModel(cod: 11,title: 'DELEGACIA'), + DropDownDataModel(cod: 12,title: 'ESTABELECIMENTO RELIGIOSO'), + DropDownDataModel(cod: 99,title: 'OUTROS'), + ]; + + List listSituationHome = [ + DropDownDataModel(cod: 1,title: 'PRÓPRIO'), + DropDownDataModel(cod: 2,title: 'ALUGADO'), + DropDownDataModel(cod: 3,title: 'ARRENDADO'), + DropDownDataModel(cod: 4,title: 'CEDIDO'), + DropDownDataModel(cod: 5,title: 'OCUPAÇÃO'), + DropDownDataModel(cod: 6,title: 'FINANCIADO'), + DropDownDataModel(cod: 7,title: 'OUTROS'), + DropDownDataModel(cod: 8,title: 'SITUAÇÃO DE RUA'), + ]; + + List listTypeLocation = [ + DropDownDataModel(cod: 1,title: 'URBANO'), + DropDownDataModel(cod: 2,title: 'RURAL'), + ]; + + List listTypeResidence = [ + DropDownDataModel(cod: 1,title: 'CASA'), + DropDownDataModel(cod: 2,title: 'APARTAMENTO'), + DropDownDataModel(cod: 3,title: 'CÔMODO'), + DropDownDataModel(cod: 4,title: 'OUTRO'), + ]; + List listMaritalStatus = [ DropDownDataModel(cod: 2,title: 'CASADO(A)'), DropDownDataModel(cod: 6,title: 'DESQUITADO(A)'), diff --git a/lib/screens/registers_citizen/register_home_screen.dart b/lib/screens/registers_citizen/register_home_screen.dart index c61b54f..8a1fdb9 100644 --- a/lib/screens/registers_citizen/register_home_screen.dart +++ b/lib/screens/registers_citizen/register_home_screen.dart @@ -2,8 +2,10 @@ import 'package:flutter/material.dart'; import 'package:intl/intl.dart'; import 'package:rkm/config/color_palette.dart'; import 'package:rkm/config/const_variable.dart'; +import 'package:rkm/service/db/db_querys.dart'; import 'package:rkm/widgets/button_default.dart'; import 'package:rkm/widgets/title_containers.dart'; +import '../../service/shared_preferences/shared_preferences_service.dart'; import '../../widgets/appbar_default.dart'; import '../../widgets/dropdown_with_subtitle.dart'; import '../../widgets/input_with_subtitle.dart'; @@ -20,83 +22,14 @@ class RegisterHomeScreen extends StatefulWidget { class _RegisterHomeScreenState extends State { - var nameController = TextEditingController(); - var nameSocialController = TextEditingController(); - var renponsibleController = TextEditingController(text: 'NOME COMPLETO'); - var enterBrazilController = TextEditingController(); - var porterNaturalnessController = TextEditingController(); - var dateNaturalnessController = TextEditingController(); - var naturalnessController = TextEditingController(text: 'BRASILEIRO'); - var cityBirthController = TextEditingController(); - var cityController = TextEditingController(); - var searchCityBirthController = TextEditingController(); - var searchCityController = TextEditingController(); - var nameMotherController = TextEditingController(); - var nameFatherController = TextEditingController(); - var codIBGEController = TextEditingController(); - var maternityController = TextEditingController(); - var medicalRecordController = TextEditingController(); - var medicalRecordProvController = TextEditingController(); - var classificationProvController = TextEditingController(); - var plantsController = TextEditingController(); - var numberFamilyController = TextEditingController(); - var whatCompanyController = TextEditingController(); - var otherCondicionsController = TextEditingController(); - var cepController = TextEditingController(); - var numberController = TextEditingController(); - var complementController = TextEditingController(); - var referencePointController = TextEditingController(); var responsibleRegisterController = TextEditingController(); var unitProfessionalController = TextEditingController(); var dataRegisterController = TextEditingController(text: '06/12/2022'); - var foneDDDController = TextEditingController(); - var foneController = TextEditingController(); - var mobileDDDController = TextEditingController(); - var mobileController = TextEditingController(); - var messageDDDController = TextEditingController(); - var messageController = TextEditingController(); - var emailController = TextEditingController(); - var observationController = TextEditingController(); - var CPFController = TextEditingController(); - var CNSController = TextEditingController(); - var voterController = TextEditingController(); - var RGController = TextEditingController(); - var RGComplementController = TextEditingController(); - var RGOrganController = TextEditingController(); - var RGDateController = TextEditingController(); - var numberCertificateController = TextEditingController(); - var nameCertificateController = TextEditingController(); - var bookCertificateController = TextEditingController(); - var sheetCertificateController = TextEditingController(); - var termCertificateController = TextEditingController(); - var dateCertificateController = TextEditingController(); - var CTPSController = TextEditingController(); - var numberCTPSController = TextEditingController(); - var PISController = TextEditingController(); - var NISController = TextEditingController(); - var incomeController = TextEditingController(); - var professionalController = TextEditingController(); var controllerComfortable = TextEditingController(); - var dateDeathController = TextEditingController(); var controllerResidents = TextEditingController(); var controllerAmount = TextEditingController(); - String? selectTypeCertificate; - String? selectCTPSUF; - String? selectRGUF; - String? selectTypeStreet; - String? selectStreet; - String? selectSubdivision; - String? selectHeartDisease; - String? selectKidneyProblem; - String? selectLungProblem; String? selectCBO; - String? selectZone; - String? selectVillage; - String? selectCountry; - String? selectTypeHome; - String? selectSituation; - String? selectResidence; String? selectAcessHome; String? selectMaterialWall; String? selectWater; @@ -104,27 +37,13 @@ class _RegisterHomeScreenState extends State { String? selectDestinyTrash; String? selectFormSanitaryDrainage; String? selectRural; - String? selectSituationStreet; - String? selectClassification; - String? selectINE; - String? selectMaritalStatus; - String? selectBreed; - String? selectCurse; - String? selectScooling; - String? selectWork; - String? selectSexualOrientation; - String? selectGender; - String? selectWeight; - String? selectDeficiency; - String? selectKin; - bool enableSpouse = false; + bool enableAnimals = false; bool enableCats = false; bool enableDogs = false; bool enableBirds = false; bool enableOther = false; bool enableAccompaniedCompany = false; - bool outOfArea = false; bool enableEnergy = false; bool statusRegister = true; bool renponsibleFamily = true; @@ -134,6 +53,30 @@ class _RegisterHomeScreenState extends State { bool enableBlocked = false; bool checkBoxNumber = false; String date = 'Data de Nascimento'; + bool FORA_AREA = false; + + List listTypeHome = []; + List listINE = []; + List listSituationHome = []; + List listTypeLocation = []; + List listTypeResidence = []; + + String idUsuario = ''; + String idUnidade = ''; + String nomeUnidade = ''; + String INE_DB=''; + String? INE; + String? TIPO_IMOVEL; + String? SITUACAO_MORADIA; + String? TIPO_LOCALIDADE; + String? TIPO_DOMICILIO; + + int ID_AREA_DOMICILIO=0; + int ID_MICROAREA_DOMICILIO=0; + int TIPO_IMOVEL_COD = 0; + int SITUACAO_MORADIA_COD = 0; + int TIPO_LOCALIDADE_COD = 0; + int TIPO_DOMICILIO_COD = 0; escolherprazoInicio(BuildContext context) async { var pickDate = await showDatePicker( @@ -154,11 +97,89 @@ class _RegisterHomeScreenState extends State { return formattedDate; } + getUser(){ + final PrefService _prefService = PrefService(); + _prefService.readCacheIdUsuario('idUsuario').then((value){ + if(value != null){ + idUsuario = value; + } + }); + _prefService.readCacheUnidade('idUnidade').then((value){ + if(value!=null){ + idUnidade = value[0]; + nomeUnidade = value[1]; + } + loadLists(); + }); + } + + loadLists(){ + for(int i = 0; ConstVariable().listTypeHome.length > i; i++){ + listTypeHome.add(ConstVariable().listTypeHome[i].title); + } + for(int i = 0; ConstVariable().listSituationHome.length > i; i++){ + listSituationHome.add(ConstVariable().listSituationHome[i].title); + } + for(int i = 0; ConstVariable().listTypeLocation.length > i; i++){ + listTypeLocation.add(ConstVariable().listTypeLocation[i].title); + } + for(int i = 0; ConstVariable().listTypeResidence.length > i; i++){ + listTypeResidence.add(ConstVariable().listTypeResidence[i].title); + } + loadRegisterHome(); + } + + loadRegisterHome()async{ + int ID_DOMICILIO = widget.listData[0]['ID_DOMICILIO']; + DBQuerys().buscaCadDomiciliar(ID_DOMICILIO).then((dataHome)async{ + TIPO_IMOVEL_COD = dataHome[0]['TIPO_IMOVEL']??0; + for (int i = 0; ConstVariable().listTypeHome.length > i; i++) { + if (ConstVariable().listTypeHome[i].cod == TIPO_IMOVEL_COD) { + TIPO_IMOVEL = ConstVariable().listTypeHome[i].title; + } + } + List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario); + ID_AREA_DOMICILIO = list[0]['AREA']; + ID_MICROAREA_DOMICILIO = list[0]['MICROAREA']; + INE_DB = list[0]['INE']; + INE = 'INE: $INE_DB / Área: $ID_AREA_DOMICILIO - Microárea : $ID_MICROAREA_DOMICILIO'; + listINE.add(INE!); + FORA_AREA = dataHome[0]['FORA_AREA']==1?true:false; + SITUACAO_MORADIA_COD = dataHome[0]['SITUACAO_MORADIA']??0; + for (int i = 0; ConstVariable().listSituationHome.length > i; i++) { + if (ConstVariable().listSituationHome[i].cod == SITUACAO_MORADIA_COD) { + SITUACAO_MORADIA = ConstVariable().listSituationHome[i].title; + } + } + TIPO_LOCALIDADE_COD = dataHome[0]['TIPO_LOCALIDADE']??0; + for (int i = 0; ConstVariable().listTypeLocation.length > i; i++) { + if (ConstVariable().listTypeLocation[i].cod == TIPO_LOCALIDADE_COD) { + TIPO_LOCALIDADE = ConstVariable().listTypeLocation[i].title; + } + } + TIPO_DOMICILIO_COD = dataHome[0]['TIPO_DOMICILIO']??0; + for (int i = 0; ConstVariable().listTypeResidence.length > i; i++) { + if (ConstVariable().listTypeResidence[i].cod == TIPO_DOMICILIO_COD) { + TIPO_DOMICILIO = ConstVariable().listTypeResidence[i].title; + } + } + print(TIPO_DOMICILIO_COD); + print(TIPO_DOMICILIO); + ////[{"cdDomicilio":16,"cdTipoImovel":1,"cdAreaDomicilio":null,"cdMicroareaDomicilio":null,"foraArea":1,"cdSituacao":2, + // cdTipoLocalidade":1,"cdTipoDomicilio":1,"nrMoradores":6,"nrComodo":7,"situacaoProducaoRural":0,"tipoAcesso":1, + // "materialParedesExternas":1,"dispEnergiaEletrica":1,"cdTipoAbastecimento":1,"cdTratamentoAgua":4,"cdDestinoLixo":1, + // "cdEscoamento":1,"animais":0,"animaisGato":0,"animaisCachorro":0,"animaisPassaro":0,"animaisOutros":0,"animaisQtde":null, + // "respCadastro":68,"cnesUnidade":"9372253","cboRespCadastro":"515105","ine":"0001485628","dtCadastro":"2021-11-10", + // "cdEquipe":5,"noInstPermanencia":null,"outrosProfissionaisInst":null,"noResponsavelInst":null,"cnsResponsavelInst":null, + // "gargoResponsavelInst":null,"telefoneResponsavelInst":null}, + setState(() {}); + }); + } + @override void initState() { super.initState(); - print('home'); - print(widget.listData); + getUser(); } @override @@ -221,83 +242,89 @@ class _RegisterHomeScreenState extends State { mainAxisSize: MainAxisSize.min, children: [ DropdownWithSubtitle( - list:['DOMICÍLIO'], + list:listTypeHome, widthSubtitle: width*0.7, subtitle: 'Tipo de Imóvel', hintDropdown: 'Tipo de Imóvel', - select: selectSituation, + select: TIPO_IMOVEL, widthDropdown: width*0.7, widthContainerDropdown: width*0.6, onChanged: (value){ - setState(() { - selectSituation = value!; - }); + setState(()=>TIPO_IMOVEL = value!); + for (int i = 0; ConstVariable().listTypeHome.length > i; i++) { + if (ConstVariable().listTypeHome[i].title == TIPO_IMOVEL) { + TIPO_IMOVEL_COD = ConstVariable().listTypeHome[i].cod; + } + } }, ), DropdownWithSubtitle( - list:[], + list:listINE, widthSubtitle: width*0.7, subtitle: 'INE - Área / Microárea do Domicílio', hintDropdown: 'INE - Área / Microárea do Domicílio', - select: selectTypeHome, + select: INE, widthDropdown: width*0.7, widthContainerDropdown: width*0.6, - onChanged: (value){ - setState(() { - selectTypeHome = value!; - }); - }, + onChanged: (value)=>setState(()=>INE = value!), ), SwitchWithSubtitle( width: width*0.7, title: 'Fora de área', - value: outOfArea, - onChanged: (value){ - setState(() { - // enableMother = value; - // if(enableMother){ - // nameMotherController.text = ''; - // } - }); - }, + value: FORA_AREA, + onChanged: (value)=>setState(()=>FORA_AREA=value), ), DropdownWithSubtitle( - list:['PRÓPRIO'], + list:listSituationHome, widthSubtitle: width*0.7, subtitle: 'Situação', hintDropdown: 'Situação', - select: selectTypeHome, + select: SITUACAO_MORADIA, widthDropdown: width*0.7, widthContainerDropdown: width*0.6, onChanged: (value){ - setState(() { - selectTypeHome = value!; - }); + setState(()=>SITUACAO_MORADIA = value!); + for (int i = 0; ConstVariable().listSituationHome.length > i; i++) { + if (ConstVariable().listSituationHome[i].title == TIPO_IMOVEL) { + SITUACAO_MORADIA_COD = ConstVariable().listSituationHome[i].cod; + } + } }, ), DropdownWithSubtitle( - list:['URBANO','RURAL'], + list:listTypeLocation, widthSubtitle: width*0.7, subtitle: 'Localização', hintDropdown: 'Localização', - select: selectSituation, + select: TIPO_LOCALIDADE, widthDropdown: width*0.7, widthContainerDropdown: width*0.6, onChanged: (value){ - setState(() { - selectSituation = value!; - }); + setState(()=>TIPO_LOCALIDADE = value!); + for (int i = 0; ConstVariable().listTypeLocation.length > i; i++) { + if (ConstVariable().listTypeLocation[i].title == TIPO_LOCALIDADE) { + TIPO_LOCALIDADE_COD = ConstVariable().listTypeLocation[i].cod; + } + } }, ), DropdownWithSubtitle( - list:['CASA'], + list:listTypeResidence, widthSubtitle: width*0.7, subtitle: 'Tipo de Domicílio', hintDropdown: 'Tipo de Domicílio', - select: selectResidence, + select: TIPO_DOMICILIO, widthDropdown: width*0.7, widthContainerDropdown: width*0.6, - onChanged: (value)=>setState(()=>selectResidence = value!)), + onChanged: (value){ + setState(()=>TIPO_DOMICILIO = value!); + for (int i = 0; ConstVariable().listTypeResidence.length > i; i++) { + if (ConstVariable().listTypeResidence[i].title == TIPO_DOMICILIO) { + TIPO_DOMICILIO_COD = ConstVariable().listTypeResidence[i].cod; + } + } + }, + ), InputWithSubtitle( subtitle: 'Moradores', hintInput: 'Moradores', @@ -454,7 +481,7 @@ class _RegisterHomeScreenState extends State { child: Icon(Icons.business_center,size: 80,), ), Padding( - padding: const EdgeInsets.symmetric(horizontal: 10.0), + padding: const EdgeInsets.symmetric(horizontal: 0.0), child: Column( mainAxisAlignment: MainAxisAlignment.start, mainAxisSize: MainAxisSize.min, diff --git a/lib/screens/registers_citizen/register_individual_screen.dart b/lib/screens/registers_citizen/register_individual_screen.dart index a8ae3a0..e002139 100644 --- a/lib/screens/registers_citizen/register_individual_screen.dart +++ b/lib/screens/registers_citizen/register_individual_screen.dart @@ -217,7 +217,8 @@ class _RegisterIndividualScreenState extends State { loadCadIndividual()async{ CD_USUARIO_SUS = widget.listData[0]['CD_USUARIO_SUS']; - await DBQuerys().buscaCadInvidualCitizen(CD_USUARIO_SUS).then((dataCitizen)async{ + + await DBQuerys().buscaCadInvidual(CD_USUARIO_SUS).then((dataCitizen)async{ // print(CD_USUARIO_SUS); if(dataCitizen.length != 0) { TIPO_SALVAR = 'update'; @@ -389,7 +390,7 @@ class _RegisterIndividualScreenState extends State { CNES_RESP_CADASTRO.text = await DBQuerys().buscaNomeUnidade(idUnidade); CBO_RESP_CADASTRO = dataCitizen[0]['CBO_RESP_CADASTRO'].toString(); date_cad = dataCitizen[0]['DT_CADASTRO']??''; - print('data $date_cad'); + // print('data $date_cad'); List splitted = date_cad.toString().split('-'); DT_CADASTRO.text = splitted.length<2?'':'${splitted[2]}/${splitted[1]}/${splitted[0]}'; setState(() {}); @@ -571,7 +572,7 @@ class _RegisterIndividualScreenState extends State { if(type=='cadastro'){ date_cad = '${pickDate.year}-${pickDate.month<10?'0':''}${pickDate.month}-${pickDate.day<10?'0':''}${pickDate.day}'; DT_CADASTRO.text = formatData(year: pickDate.year, month: pickDate.month, day: pickDate.day); - print(date_cad); + // print(date_cad); } if(type=='data_saida'){ date_saida = '${pickDate.year}-${pickDate.month<10?'0':''}${pickDate.month}-${pickDate.day<10?'0':''}${pickDate.day}'; diff --git a/lib/service/db/db_querys.dart b/lib/service/db/db_querys.dart index 2a94ff7..9128f7f 100644 --- a/lib/service/db/db_querys.dart +++ b/lib/service/db/db_querys.dart @@ -32,7 +32,7 @@ class DBQuerys{ var query = "SELECT * FROM PROFISSIONAIS WHERE ID_PROFISSIONAL = $ID_PROFISSIONAL"; List list = await db.rawQuery(query); // print(await db.rawQuery('SELECT NO_BAIRRO FROM BAIRROS')); - print(list); + // print(list); return list[0]; } buscaNomeUnidade(String ID_UNIDADE)async{ @@ -40,7 +40,7 @@ class DBQuerys{ var query = "SELECT * FROM UNIDADES WHERE ID_UNIDADE = $ID_UNIDADE"; List list = await db.rawQuery(query); // print(await db.rawQuery('SELECT NO_BAIRRO FROM BAIRROS')); - print(list); + // print(list); return list[0]['NOME_UNIDADE']; } buscaBairro(nomeBairro)async{ @@ -54,7 +54,7 @@ class DBQuerys{ Database db = await DbSqliteLoad().intialDB(); List list = await db.rawQuery("SELECT * FROM LOGRADOUROS_TIPOS WHERE NO_LOGR_TIPO = '$tipo'"); // print(await db.rawQuery('SELECT NO_BAIRRO FROM BAIRROS')); - print(list[0]['ID_LOGR_TIPO']); + // print(list[0]['ID_LOGR_TIPO']); return list[0]['ID_LOGR_TIPO']; } buscaprocedimento()async{ @@ -117,7 +117,7 @@ class DBQuerys{ Database db = await DbSqliteLoad().intialDB(); var query = 'SELECT * FROM LOGRADOUROS_LOTEAMENTOS WHERE ID_LOGR_LOTEAMENTO = $ID_LOGR_LOTEAMENTO'; List list = await db.rawQuery(query); - print(list); + // print(list); String result = list[0]['DESC_LOGR_LOTEAMENTO']; return result; } @@ -128,13 +128,21 @@ class DBQuerys{ // print(list); return list; } - Future buscaCadInvidualCitizen(String CD_USUARIO_SUS)async{ + Future buscaCadInvidual(String CD_USUARIO_SUS)async{ Database db = await DbSqliteLoad().intialDB(); var query = 'SELECT * FROM CADASTROS_INDIVIDUAIS WHERE CD_USUARIO_SUS = "$CD_USUARIO_SUS"'; List list = await db.rawQuery(query); // print(list); return list; } + Future buscaCadDomiciliar(int ID_DOMICILIO)async{ + Database db = await DbSqliteLoad().intialDB(); + var query = 'SELECT * FROM CIDADAO_DOMICILIO WHERE ID_DOMICILIO = "$ID_DOMICILIO"'; + // var query = 'SELECT * FROM DOMICILIOS_CIDADAOS'; + List list = await db.rawQuery(query); + print(list); + return list; + } Future buscaCidadao(NOME_CIDADAO)async{ Database db = await DbSqliteLoad().intialDB(); var query = 'SELECT * FROM CIDADAOS WHERE NOME_CIDADAO = "$NOME_CIDADAO"'; @@ -146,7 +154,7 @@ class DBQuerys{ Database db = await DbSqliteLoad().intialDB(); var query = 'SELECT * FROM PROFISSIONAIS_CBOS WHERE CODIGO_CBO = "$ID_PROFISSIONAL"'; List list = await db.rawQuery(query); - print(list); + // print(list); return list; } Future deleteCidadao()async{