import 'package:flutter/material.dart'; import 'package:intl/intl.dart'; import 'package:line_icons/line_icons.dart'; import 'package:rkm/config/color_palette.dart'; import 'package:rkm/config/const_variable.dart'; import 'package:rkm/models/equipe_cidadao.dart'; import 'package:rkm/service/db/db_querys.dart'; import 'package:rkm/widgets/button_default.dart'; import 'package:rkm/widgets/text_default.dart'; import 'package:rkm/widgets/title_containers.dart'; import 'package:sqflite/sqflite.dart'; import '../../service/db/db_sqlite_load.dart'; import '../../service/db/db_sqlite_sync.dart'; import '../../service/shared_preferences/shared_preferences_service.dart'; import '../../widgets/alert_dialog_default.dart'; import '../../widgets/appbar_default.dart'; import '../../widgets/check_box_two_subtitle.dart'; import '../../widgets/dropdown_with_subtitle.dart'; import '../../widgets/dropdown_with_subtitle_cidadao.dart'; import '../../widgets/error_default.dart'; import '../../widgets/input_with_subtitle.dart'; import '../../widgets/onbackbutton.dart'; import '../../widgets/subtitle_appbar_citizen.dart'; import '../../widgets/switch_with_subtitle.dart'; class RegisterIndividualScreen extends StatefulWidget { List listData; String username; RegisterIndividualScreen({required this.listData, required this.username}); @override State createState() => _RegisterIndividualScreenState(); } class _RegisterIndividualScreenState extends State { List listINE = []; List listkin = []; List listScoolingRegisterInd = []; List listOcupacion = []; List listGenderInd = []; List listGenderIdent = []; List listExitCitizen = []; List listWeight = []; List listHeart = []; List listKidney = []; List listLung = []; List listCondStreet = []; List listDailyFood = []; List listCBO = []; List listINEPROF = []; bool FORA_AREA = false; bool STATUS_CADASTRO = true; bool RESPONSAVEL_FAMILIAR = false; bool FREQ_ESCOLA_CRECHE = false; bool CRIANCAS_ADULTO = false; bool CRIANCAS_SOZINHA = false; bool CRIANCAS_OUTRAS_CRIANCAS = false; bool CRIANCAS_CRECHE = false; bool CRIANCAS_ADOLESCENTE = false; bool CRIANCAS_OUTRO = false; bool CUIDADOR_TRADICIONAL = false; bool GRUPO_COMUNITARIO = false; bool PLANO_PRIVADO = false; bool COMUNIDADE_TRADICIONAL = false; bool DEF_AUDITIVA = false; bool DEF_INTELECTUAL = false; bool DEF_VISUAL = false; bool DEF_FISICA = false; bool DEF_OUTRAS = false; bool CADASTRO_RECUSADO = false; bool GESTANTE = false; bool FUMANTE = false; bool USA_ALCOOL = false; bool USA_DROGAS = false; bool HIPERTENSAO = false; bool DIABETES = false; bool AVC_DERRAME = false; bool INFARTO = false; bool HANSENIASE = false; bool TUBERCULOSE = false; bool CANCER = false; bool INTERNACAO = false; bool SAUDE_MENTAL = false; bool ACAMADO = false; bool DOMICILIADO = false; bool PLANTAS_MED = false; bool PIC = false; bool ACOMP_INTITUICAO = false; bool BENEFICIO = false; bool REF_FAMILIAR = false; bool VISITA_FREQUENCIA = false; bool REST_POPULAR = false; bool DOACAO_REST = false; bool DOACAO_RELIGIOSO = false; bool DOACAO_POPULAR = false; bool OUTROS_ALIM = false; bool ACESSO_HIGIENE = false; bool BANHO = false; bool SANITARIO = false; bool HIGIENE_BUCAL = false; bool OUTROS_HIGIENE = false; bool CNS_VALIDO = false; bool FIBROMIALGIA = false; bool TRANSTORNO_ESPECTRO_AUTISTA = false; bool edit = false; bool editing = false; bool mandatory = false; bool showCheckError = false; bool showTab = false; int PARENTESCO_COD = 0; int ESCOLARIDADE_COD = 0; int SITUACAO_MERCADO_COD = 0; int ORIENT_SEXUAL_COD = 0; int SAIDA_CADASTRO_COD = 0; int PESO_COD = 0; int DOENCA_CARDIACA_COD = 0; int PROBLEMA_RINS_COD = 0; int DOENCA_PULMAO_COD = 0; int TEMPO_SITUACAO_RUA_COD = 0; int ALIMENTACAO_DIARIA_COD = 0; int IDENTIDADE_GENERO_COD = 0; int ID_EQUIPE = 0; int ID_CIDADAO = 0; EquipeCidadao? INE; String? INE_DB; String? ESCOLARIDADE; String? SITUACAO_MERCADO; String? PARENTESCO; String? ORIENT_SEXUAL; String? IDENTIDADE_GENERO; String? SAIDA_CADASTRO; String? PESO; String? DOENCA_CARDIACA; String? PROBLEMA_RINS; String? DOENCA_PULMAO; String? TEMPO_SITUACAO_RUA; String? ALIMENTACAO_DIARIA; String? CBO_RESP_CADASTRO; String? INE_RESP_CADASTRO; String CNS_PROFISSIONAL=''; int idUsuario = 0; String idUnidade = ''; String nomeUnidade = ''; String date_cad = ''; String date_saida = ''; int ID_AREA_CIDADAO = 0; int ID_MICROAREA_CIDADAO = 0; String TIPO_SALVAR = 'new'; int ID_PROFISSIONAL = 0; var NOME_RESPONSAVEL_FAMILIAR = TextEditingController(); var NATURALIDADE = TextEditingController(text: 'BRASILEIRO'); var DT_ENTRADA_BRASIL = TextEditingController(); var DT_NATURALIZACAO = TextEditingController(); var PORTARIA_NATURALIZACAO = TextEditingController(); var COM_TRADI_QUAL = TextEditingController(); var MOTIVO = TextEditingController(); var DATA_SAIDA_CADASTRO = TextEditingController(); var MATERNIDADE_REFERENCIA = TextEditingController(); var PLANTAS_MED_QUAIS = TextEditingController(); var OUTRAS_CONDICOES = TextEditingController(); var ACOMP_INTITUICAO_QUAL = TextEditingController(); var PARENTESCO_VISITA = TextEditingController(); var USUARIO_RESP_CADASTRO = TextEditingController(); var CNES_RESP_CADASTRO = TextEditingController(); var DT_CADASTRO = TextEditingController(); final PrefService _prefService = PrefService(); getUser(){ _prefService.readCacheIDUser().then((value){ if(value != null){ idUsuario = int.parse(value); } }); _prefService.readCacheUnidade().then((value){ if(value!=null){ idUnidade = value[0].toString(); nomeUnidade = value[1]; } loadLists(); }); } loadLists(){ for(int i = 0; ConstVariable().listKin.length > i; i++){ listkin.add(ConstVariable().listKin[i].title); } for(int i = 0; ConstVariable().listScoolingRegisterInd.length > i; i++){ listScoolingRegisterInd.add(ConstVariable().listScoolingRegisterInd[i].title); } for(int i = 0; ConstVariable().listOcupacion.length > i; i++){ listOcupacion.add(ConstVariable().listOcupacion[i].title); } for(int i = 0; ConstVariable().listGenderInd.length > i; i++){ listGenderInd.add(ConstVariable().listGenderInd[i].title); } for(int i = 0; ConstVariable().listGenderIdent.length > i; i++){ listGenderIdent.add(ConstVariable().listGenderIdent[i].title); } for(int i = 0; ConstVariable().listExitCitizen.length > i; i++){ listExitCitizen.add(ConstVariable().listExitCitizen[i].title); } for(int i = 0; ConstVariable().listWeight.length > i; i++){ listWeight.add(ConstVariable().listWeight[i].title); } for(int i = 0; ConstVariable().listHeart.length > i; i++){ listHeart.add(ConstVariable().listHeart[i].title); } for(int i = 0; ConstVariable().listKidney.length > i; i++){ listKidney.add(ConstVariable().listKidney[i].title); } for(int i = 0; ConstVariable().listLung.length > i; i++){ listLung.add(ConstVariable().listLung[i].title); } for(int i = 0; ConstVariable().listCondStreet.length > i; i++){ listCondStreet.add(ConstVariable().listCondStreet[i].title); } for(int i = 0; ConstVariable().listDailyFood.length > i; i++){ listDailyFood.add(ConstVariable().listDailyFood[i].title); } loadCadIndividual(); } loadCadIndividual()async{ ID_CIDADAO = widget.listData[0]['ID_CIDADAO']; // print(widget.listData[0]['ID_CAD_INDIVIDUAL']); print('ID_CIDADAO'); print(ID_CIDADAO); await DBQuerys().buscaCadInvidual(ID_CIDADAO).then((dataCitizen)async{ if(dataCitizen.isNotEmpty) { ID_PROFISSIONAL = dataCitizen[0]['ID_RESP_CADASTRO']; TIPO_SALVAR = 'update'; showTab = true; FORA_AREA = dataCitizen[0]['FORA_AREA'] == 1 ? true : false; ID_EQUIPE = dataCitizen[0]['ID_EQUIPE']??0; STATUS_CADASTRO = dataCitizen[0]['STATUS_CADASTRO'] == null? false : dataCitizen[0]['STATUS_CADASTRO'] == 1 ? true : false; RESPONSAVEL_FAMILIAR = dataCitizen[0]['RESPONSAVEL_FAMILIAR'] == 1 ? true : false; FIBROMIALGIA = dataCitizen[0]['FIBROMIALGIA']==1?true:false; TRANSTORNO_ESPECTRO_AUTISTA = dataCitizen[0]['TRANSTORNO_ESPECTRO_AUTISTA']==1?true:false; if(dataCitizen[0]['INE']!=null){ print('co'); 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'], ID_AREA_CIDADAO: dataCitizen[0]['ID_AREA_CIDADAO'] ); listINEPROF.add(INE_RESP_CADASTRO!); }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']} ${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!, ID_MICROAREA_CIDADAO: list[i]['ID_ATB_MICROAREA'], ID_AREA_CIDADAO: list[i]['ID_ATB_AREA'] ) ); print('ID_MICROAREA_CIDADAO'); print(dataCitizen[0]['ID_MICROAREA_CIDADAO']); print('ID_AREA_CIDADAO'); print(dataCitizen[0]['ID_AREA_CIDADAO']); if(dataCitizen[0]['ID_MICROAREA_CIDADAO']==list[i]['ID_ATB_MICROAREA'] &&dataCitizen[0]['ID_AREA_CIDADAO']==list[i]['ID_ATB_AREA']){ INE = listINE[i]; } listINEPROF.add('INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}'); } } DT_ENTRADA_BRASIL.text = dataCitizen[0]['DT_ENTRADA_BRASIL'] ?? ''; if (DT_ENTRADA_BRASIL.text == '') { NATURALIDADE.text = 'BRASILEIRO'; } DT_NATURALIZACAO.text = dataCitizen[0]['DT_NATURALIZACAO'] ?? ''; PORTARIA_NATURALIZACAO.text = dataCitizen[0]['PORTARIA_NATURALIZACAO'] ?? ''; NOME_RESPONSAVEL_FAMILIAR.text = dataCitizen[0]['NOME_RESPONSAVEL_FAMILIAR'] ?? ''; PARENTESCO_COD = dataCitizen[0]['PARENTESCO']??0; for (int i = 0; ConstVariable().listKin.length > i; i++) { if (ConstVariable().listKin[i].cod == dataCitizen[0]['PARENTESCO']) { PARENTESCO = ConstVariable().listKin[i].title; } } ESCOLARIDADE_COD = dataCitizen[0]['ESCOLARIDADE']??0; for (int i = 0; ConstVariable().listScoolingRegisterInd.length > i; i++) { if (ConstVariable().listScoolingRegisterInd[i].cod == dataCitizen[0]['ESCOLARIDADE']) { ESCOLARIDADE = ConstVariable().listScoolingRegisterInd[i].title; } } FREQ_ESCOLA_CRECHE = dataCitizen[0]['FREQ_ESCOLA_CRECHE'] == 1 ? true : false; SITUACAO_MERCADO_COD = dataCitizen[0]['SITUACAO_MERCADO']??0; for (int i = 0; ConstVariable().listOcupacion.length > i; i++) { if (ConstVariable().listOcupacion[i].cod == dataCitizen[0]['SITUACAO_MERCADO']) { SITUACAO_MERCADO = ConstVariable().listOcupacion[i].title; } } CRIANCAS_ADULTO = dataCitizen[0]['CRIANCAS_ADULTO'] == 1 ? true : false; CRIANCAS_SOZINHA = dataCitizen[0]['CRIANCAS_SOZINHA'] == 1 ? true : false; CRIANCAS_OUTRAS_CRIANCAS = dataCitizen[0]['CRIANCAS_OUTRAS_CRIANCAS'] == 1 ? true : false; CRIANCAS_CRECHE = dataCitizen[0]['CRIANCAS_CRECHE'] == 1 ? true : false; CRIANCAS_ADOLESCENTE = dataCitizen[0]['CRIANCAS_ADOLESCENTE'] == 1 ? true : false; CRIANCAS_OUTRO = dataCitizen[0]['CRIANCAS_OUTRO'] == 1 ? true : false; CUIDADOR_TRADICIONAL = dataCitizen[0]['CUIDADOR_TRADICIONAL'] == 1 ? true : false; GRUPO_COMUNITARIO = dataCitizen[0]['GRUPO_COMUNITARIO'] == 1 ? true : false; PLANO_PRIVADO = dataCitizen[0]['PLANO_PRIVADO'] == 1 ? true : false; COMUNIDADE_TRADICIONAL = dataCitizen[0]['COMUNIDADE_TRADICIONAL'] == 1 ? true : false; COM_TRADI_QUAL.text = dataCitizen[0]['COM_TRADI_QUAL'] ?? ''; ORIENT_SEXUAL_COD = dataCitizen[0]['ORIENT_SEXUAL']??0; for (int i = 0; ConstVariable().listGenderInd.length > i; i++) { if (ConstVariable().listGenderInd[i].cod == dataCitizen[0]['ORIENT_SEXUAL']) { ORIENT_SEXUAL = ConstVariable().listGenderInd[i].title; } } IDENTIDADE_GENERO_COD = dataCitizen[0]['IDENTIDADE_GENERO']??0; for (int i = 0; ConstVariable().listGenderIdent.length > i; i++) { if (ConstVariable().listGenderIdent[i].cod == (dataCitizen[0]['IDENTIDADE_GENERO']??0)) { IDENTIDADE_GENERO = ConstVariable().listGenderIdent[i].title; } } DEF_AUDITIVA = dataCitizen[0]['DEF_AUDITIVA'] == 1 ? true : false; DEF_INTELECTUAL = dataCitizen[0]['DEF_INTELECTUAL'] == 1 ? true : false; DEF_VISUAL = dataCitizen[0]['DEF_VISUAL'] == 1 ? true : false; DEF_FISICA = dataCitizen[0]['DEF_FISICA'] == 1 ? true : false; DEF_OUTRAS = dataCitizen[0]['DEF_OUTRAS'] == 1 ? true : false; SAIDA_CADASTRO_COD = dataCitizen[0]['SAIDA_CADASTRO']??0; for (int i = 0; ConstVariable().listExitCitizen.length > i; i++) { if (ConstVariable().listExitCitizen[i].cod == dataCitizen[0]['SAIDA_CADASTRO']) { SAIDA_CADASTRO = ConstVariable().listExitCitizen[i].title; } } date_saida = dataCitizen[0]['DATA_SAIDA_CADASTRO']??''; List splittedDate = date_saida.split('-'); DATA_SAIDA_CADASTRO.text = splittedDate.length<2?'':'${splittedDate[2]}/${splittedDate[1]}/${splittedDate[0]}'; CADASTRO_RECUSADO =dataCitizen[0]['CADASTRO_RECUSADO'] == 1 ? true : false; GESTANTE = dataCitizen[0]['GESTANTE'] == 1 ? true : false; MATERNIDADE_REFERENCIA.text = dataCitizen[0]['MATERNIDADE_REFERENCIA'] ?? ''; PESO_COD = dataCitizen[0]['PESO']??0; for (int i = 0; ConstVariable().listWeight.length > i; i++) { if (ConstVariable().listWeight[i].cod == dataCitizen[0]['PESO'] ) { PESO = ConstVariable().listWeight[i].title; } } FUMANTE = dataCitizen[0]['FUMANTE'] == 1 ? true : false; USA_ALCOOL = dataCitizen[0]['USA_ALCOOL'] == 1 ? true : false; USA_DROGAS = dataCitizen[0]['USA_DROGAS'] == 1 ? true : false; HIPERTENSAO = dataCitizen[0]['HIPERTENSAO'] == 1 ? true : false; DIABETES = dataCitizen[0]['DIABETES'] == 1 ? true : false; AVC_DERRAME = dataCitizen[0]['AVC_DERRAME'] == 1 ? true : false; INFARTO = dataCitizen[0]['INFARTO'] == 1 ? true : false; HANSENIASE = dataCitizen[0]['HANSENIASE'] == 1 ? true : false; TUBERCULOSE = dataCitizen[0]['TUBERCULOSE'] == 1 ? true : false; CANCER = dataCitizen[0]['CANCER'] == 1 ? true : false; INTERNACAO = dataCitizen[0]['INTERNACAO'] == 1 ? true : false; MOTIVO.text = dataCitizen[0]['MOTIVO'] ?? ''; DOENCA_CARDIACA_COD = dataCitizen[0]['DOENCA_CARDIACA']??0; for (int i = 0; ConstVariable().listHeart.length > i; i++) { if (ConstVariable().listHeart[i].cod == (dataCitizen[0]['DOENCA_CARDIACA'] ?? 0)) { DOENCA_CARDIACA = ConstVariable().listHeart[i].title; } } PROBLEMA_RINS_COD = dataCitizen[0]['PROBLEMA_RINS']??0; for (int i = 0; ConstVariable().listKidney.length > i; i++) { if (ConstVariable().listKidney[i].cod == (dataCitizen[0]['PROBLEMA_RINS'] ?? 0)) { PROBLEMA_RINS = ConstVariable().listKidney[i].title; } } DOENCA_PULMAO_COD = dataCitizen[0]['DOENCA_PULMAO']??0; for (int i = 0; ConstVariable().listLung.length > i; i++) { if (ConstVariable().listLung[i].cod == (dataCitizen[0]['DOENCA_PULMAO'] ?? 0)) { DOENCA_PULMAO = ConstVariable().listLung[i].title; } } SAUDE_MENTAL = dataCitizen[0]['SAUDE_MENTAL'] == 1 ? true : false; ACAMADO = dataCitizen[0]['ACAMADO'] == 1 ? true : false; DOMICILIADO = dataCitizen[0]['DOMICILIADO'] == 1 ? true : false; PLANTAS_MED = dataCitizen[0]['PLANTAS_MED'] == 1 ? true : false; PLANTAS_MED_QUAIS.text = dataCitizen[0]['PLANTAS_MED_QUAIS'] ?? ''; PIC = dataCitizen[0]['PIC'] == 1 ? true : false; OUTRAS_CONDICOES.text = dataCitizen[0]['OUTRAS_CONDICOES'] ?? ''; TEMPO_SITUACAO_RUA_COD = dataCitizen[0]['TEMPO_SITUACAO_RUA']??0; for (int i = 0; ConstVariable().listCondStreet.length > i; i++) { if (ConstVariable().listCondStreet[i].cod == (dataCitizen[0]['TEMPO_SITUACAO_RUA']??0)) { TEMPO_SITUACAO_RUA = ConstVariable().listCondStreet[i].title; } } ACOMP_INTITUICAO = dataCitizen[0]['ACOMP_INTITUICAO'] == 1 ? true : false; ACOMP_INTITUICAO_QUAL.text = dataCitizen[0]['ACOMP_INTITUICAO_QUAL'] ?? ''; BENEFICIO = dataCitizen[0]['BENEFICIO'] == 1 ? true : false; REF_FAMILIAR = dataCitizen[0]['REF_FAMILIAR'] == 1 ? true : false; PARENTESCO_VISITA.text = dataCitizen[0]['PARENTESCO_VISITA'] ?? ''; ALIMENTACAO_DIARIA_COD = dataCitizen[0]['ALIMENTACAO_DIARIA']??0; for (int i = 0; ConstVariable().listDailyFood.length > i; i++) { if (ConstVariable().listDailyFood[i].cod == (dataCitizen[0]['ALIMENTACAO_DIARIA'] ?? 0)) { ALIMENTACAO_DIARIA = ConstVariable().listDailyFood[i].title; } } REST_POPULAR = dataCitizen[0]['REST_POPULAR'] == 1 ? true : false; DOACAO_REST = dataCitizen[0]['DOACAO_REST'] == 1 ? true : false; DOACAO_RELIGIOSO = dataCitizen[0]['DOACAO_RELIGIOSO'] == 1 ? true : false; DOACAO_POPULAR = dataCitizen[0]['DOACAO_POPULAR'] == 1 ? true : false; OUTROS_ALIM = dataCitizen[0]['OUTROS_ALIM'] == 1 ? true : false; ACESSO_HIGIENE = dataCitizen[0]['ACESSO_HIGIENE'] == 1 ? true : false; BANHO = dataCitizen[0]['BANHO'] == 1 ? true : false; SANITARIO = dataCitizen[0]['SANITARIO'] == 1 ? true : false; HIGIENE_BUCAL = dataCitizen[0]['HIGIENE_BUCAL'] == 1 ? true : false; OUTROS_HIGIENE = dataCitizen[0]['OUTROS_HIGIENE'] == 1 ? true : false; CBO_RESP_CADASTRO = dataCitizen[0]['CBO_RESP_CADASTRO'].toString(); date_cad = dataCitizen[0]['DT_CADASTRO']??''; List splitted = date_cad.toString().split('-'); DT_CADASTRO.text = splitted.length<2?'':'${splitted[2]}/${splitted[1]}/${splitted[0]}'; CNES_RESP_CADASTRO.text = dataCitizen[0]['CNES_RESP_CADASTRO']??''; setState(() {}); }else{ showTab = true; } if(listINE.length == 0){ 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']==null?0:list[i]['ID_ATB_MICROAREA']; INE_DB = list[i]['INE']; 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!, ID_MICROAREA_CIDADAO: list[i]['ID_ATB_MICROAREA'], ID_AREA_CIDADAO: list[i]['ID_ATB_AREA'] ) ); 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){ USUARIO_RESP_CADASTRO.text = list['NOME_PROFISSIONAL']; CNS_PROFISSIONAL = list['CNS_PROFISSIONAL']; if(CNS_PROFISSIONAL == 999999999999999 || CNS_PROFISSIONAL == '999999999999999'){ CNS_VALIDO = true; } }); // CNES_RESP_CADASTRO.text = await DBQuerys().buscaNomeUnidade(idUnidade); await DBQuerys().buscaCBOProfissional(idUsuario).then((list){ if(list.length!=0){ for(int i = 0; list.length>i;i++){ listCBO.add(list[i]['CODIGO_CBO'].toString()); } } CBO_RESP_CADASTRO = list.length == 0?null:list[0]['CODIGO_CBO'].toString(); }); if(ID_PROFISSIONAL!=0){ await DBQuerys().buscaProfissionalCadInd(ID_PROFISSIONAL).then((value)async{ // print(value); USUARIO_RESP_CADASTRO.text = value['NOME_PROFISSIONAL']; //aguardando unidade // CNES_RESP_CADASTRO.text = await DBQuerys().cnesUnidade(value['ID_UNIDADE']); }); } }); setState(() {}); } checkSave()async{ // adicionar depois e usar um usuário real // CBO_RESP_CADASTRO //ok if(ESCOLARIDADE==null || DT_CADASTRO.text.isEmpty || TEMPO_SITUACAO_RUA==null ){ print('erro'); setState(() { showCheckError = true; mandatory = true; }); }else{ print('passou'); setState(() { mandatory = false; showCheckError = false; saveCitizenInd(); }); } } saveCitizenInd()async{ //cnes Map row = { 'STATUS_CADASTRO' : STATUS_CADASTRO?1:2, 'ID_CIDADAO' : widget.listData[0]['ID_CIDADAO'], 'CD_USUARIO_SUS' : widget.listData[0]['CD_USUARIO_SUS'], 'ID_AREA_CIDADAO' : INE!.ID_AREA_CIDADAO, 'ID_MICROAREA_CIDADAO' : INE!.ID_MICROAREA_CIDADAO, 'FORA_AREA' : FORA_AREA?1:2, 'RESPONSAVEL_FAMILIAR' : RESPONSAVEL_FAMILIAR?1:2, 'ID_RESPONSAVEL_FAMILIAR' : '', 'NOME_RESPONSAVEL_FAMILIAR' : NOME_RESPONSAVEL_FAMILIAR.text, 'PARENTESCO' : PARENTESCO_COD, 'ESCOLARIDADE' : ESCOLARIDADE_COD, 'FREQ_ESCOLA_CRECHE' : FREQ_ESCOLA_CRECHE?1:2, 'SITUACAO_MERCADO' : SITUACAO_MERCADO_COD, 'CUIDADOR_TRADICIONAL' : CUIDADOR_TRADICIONAL?1:2, 'GRUPO_COMUNITARIO' : GRUPO_COMUNITARIO?1:2, 'PLANO_PRIVADO' : PLANO_PRIVADO?1:2, 'COMUNIDADE_TRADICIONAL' : COMUNIDADE_TRADICIONAL?1:2, 'COM_TRADI_QUAL' : COM_TRADI_QUAL.text, 'ORIENT_SEXUAL' : ORIENT_SEXUAL_COD, 'TEM_DEFICIENCIA' : DEF_AUDITIVA || DEF_INTELECTUAL || DEF_VISUAL || DEF_FISICA || DEF_OUTRAS?1:2, 'DEF_AUDITIVA' : DEF_AUDITIVA?1:2, 'DEF_INTELECTUAL' : DEF_INTELECTUAL?1:2, 'DEF_VISUAL' : DEF_VISUAL?1:2, 'DEF_FISICA' : DEF_FISICA?1:2, 'DEF_OUTRAS' : DEF_OUTRAS?1:2, 'SAIDA_CADASTRO' : SAIDA_CADASTRO_COD, 'DATA_SAIDA_CADASTRO' : date_saida, 'CADASTRO_RECUSADO' : CADASTRO_RECUSADO?1:2, 'GESTANTE' : GESTANTE?1:2, 'MATERNIDADE_REFERENCIA' : MATERNIDADE_REFERENCIA.text, 'PESO' : PESO_COD, 'FUMANTE' : FUMANTE?1:2, 'USA_ALCOOL' : USA_ALCOOL?1:2, 'USA_DROGAS' : USA_DROGAS?1:2, 'HIPERTENSAO' : HIPERTENSAO?1:2, 'DIABETES' : DIABETES?1:2, 'AVC_DERRAME' : AVC_DERRAME?1:2, 'INFARTO' : INFARTO?1:2, 'HANSENIASE' : HANSENIASE?1:2, 'TUBERCULOSE' : TUBERCULOSE?1:2, 'CANCER' : CANCER?1:2, 'INTERNACAO' : INTERNACAO?1:2, 'FIBROMIALGIA' : FIBROMIALGIA?1:2, 'TRANSTORNO_ESPECTRO_AUTISTA': TRANSTORNO_ESPECTRO_AUTISTA?1:2, 'MOTIVO' : MOTIVO.text, 'DOENCA_CARDIACA' : DOENCA_CARDIACA_COD, 'PROBLEMA_RINS' : PROBLEMA_RINS_COD, 'DOENCA_PULMAO' : DOENCA_PULMAO_COD, 'SAUDE_MENTAL' : SAUDE_MENTAL?1:2, 'ACAMADO' : ACAMADO?1:2, 'DOMICILIADO' : DOMICILIADO?1:2, 'PLANTAS_MED' : PLANTAS_MED?1:2, 'PLANTAS_MED_QUAIS' : PLANTAS_MED_QUAIS.text, 'PIC' : PIC?1:2, 'OUTRAS_CONDICOES' : OUTRAS_CONDICOES.text, 'TEMPO_SITUACAO_RUA' : TEMPO_SITUACAO_RUA_COD, 'ACOMP_INTITUICAO' : ACOMP_INTITUICAO?1:2, 'ACOMP_INTITUICAO_QUAL' : ACOMP_INTITUICAO_QUAL.text, 'BENEFICIO' : BENEFICIO?1:2, 'REF_FAMILIAR' : REF_FAMILIAR?1:2, 'PARENTESCO_VISITA' : PARENTESCO_VISITA.text, 'ALIMENTACAO_DIARIA' : ALIMENTACAO_DIARIA_COD, 'REST_POPULAR' : REST_POPULAR?1:2, 'DOACAO_REST' : DOACAO_REST?1:2, 'DOACAO_RELIGIOSO' : DOACAO_RELIGIOSO?1:2, 'DOACAO_POPULAR' : DOACAO_POPULAR?1:2, 'OUTROS_ALIM' : OUTROS_ALIM?1:2, 'ACESSO_HIGIENE' : ACESSO_HIGIENE?1:2, 'BANHO' : BANHO?1:2, 'SANITARIO' : SANITARIO?1:2, 'HIGIENE_BUCAL' : HIGIENE_BUCAL?1:2, 'OUTROS_HIGIENE' : OUTROS_HIGIENE?1:2, 'FICHA_ALTERACAO' : 1, 'ID_RESP_CADASTRO' : idUsuario, 'CNES_RESP_CADASTRO' : CNES_RESP_CADASTRO.text=='null'?'':CNES_RESP_CADASTRO.text, 'CBO_RESP_CADASTRO' : CBO_RESP_CADASTRO, 'INE_RESP_CADASTRO' : INE_DB, 'DT_CADASTRO' : date_cad, 'ID_EQUIPE' : ID_EQUIPE, 'ORIGEM' : TIPO_SALVAR!='new'?'A':'C', 'SINCRONIZADO' : 'N', 'DT_ENTRADA_BRASIL' : DT_ENTRADA_BRASIL.text, 'DT_NATURALIZACAO' : DT_NATURALIZACAO.text, 'PORTARIA_NATURALIZACAO' : PORTARIA_NATURALIZACAO.text, 'CRIANCAS_ADULTO' : CRIANCAS_ADULTO?1:2, 'CRIANCAS_OUTRAS_CRIANCAS' : CRIANCAS_OUTRAS_CRIANCAS?1:2, 'CRIANCAS_ADOLESCENTE' : CRIANCAS_ADOLESCENTE?1:2, 'CRIANCAS_SOZINHA' : CRIANCAS_SOZINHA?1:2, 'CRIANCAS_CRECHE' : CRIANCAS_CRECHE?1:2, 'CRIANCAS_OUTRO' : CRIANCAS_OUTRO?1:2, 'IDENTIDADE_GENERO' : IDENTIDADE_GENERO_COD, }; await DbSqliteSync().insertCadastrosIndividuais(row,TIPO_SALVAR,ID_CIDADAO).then((value){ AlertDialogDefault().alert( context, 'Aviso', TIPO_SALVAR!='new'? 'Cadastro Individual alterado com sucesso!': 'Cadastro Individual realizado com sucesso!', 'OK' ); setState(() { edit = false; showTab = true; }); // print(value); }); } escolherprazoInicio(BuildContext context,String type) async { var pickDate = await showDatePicker( context: context, locale: Locale('pt','BR'), initialDate: DateTime.now(), firstDate: DateTime(1900), lastDate: DateTime.now() ); if (pickDate != null) { 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); } if(type=='data_saida'){ date_saida = '${pickDate.year}-${pickDate.month<10?'0':''}${pickDate.month}-${pickDate.day<10?'0':''}${pickDate.day}'; DATA_SAIDA_CADASTRO.text = formatData(year: pickDate.year, month: pickDate.month, day: pickDate.day); } setState(() {}); } } String formatData({int? year, int? month, int? day}) { DateTime data = DateTime(year!, month!, day!); String formattedDate = DateFormat('dd/MM/yyyy').format(data); return formattedDate; } @override void initState() { super.initState(); getUser(); } @override Widget build(BuildContext context) { double heigth = MediaQuery.of(context).size.height; double width = MediaQuery.of(context).size.width; return WillPopScope( onWillPop: showTab?null:()async=> await OnBackButton().onBackButton(context, widget.username), child: Scaffold( appBar: AppBarDefault().appbar(context, 'RKM AB - Cadastro Individual',widget.username), body: Container( height: double.infinity, width: double.infinity, decoration: ConstVariable().backgroundGradient, child: ListView( children: [ SubtitleAppbarCitizen(title: 2,edit: showTab,listData: widget.listData,username: widget.username), showCheckError?Card( margin: EdgeInsets.all(10), child: Container( padding: EdgeInsets.all(10), child: Row( children: [ Icon(Icons.warning,color: Colors.red,), TextDefault(text: 'Existem campos obrigatórios não preenchidos.',color: ColorPalette.red,fontSize: 15,) ], ), ), color: ColorPalette.white, ):Container(), Card( margin: EdgeInsets.all(10), child: Padding( padding: const EdgeInsets.all(8.0), child: Column( children: [ !edit?ButtonDefault( onPressed: (){ setState(() { edit = true; editing = true; mandatory = true; }); }, title: 'Alterar', borderColor: ColorPalette.edit, background: ColorPalette.edit, textColor: ColorPalette.white, width: double.infinity, ):ButtonDefault( onPressed: ()=>checkSave(), title: 'Salvar', borderColor: ColorPalette.appBar, background: ColorPalette.appBar, textColor: ColorPalette.white, width: double.infinity, ), ButtonDefault( onPressed: ()=>Navigator.pop(context), title: 'Cancelar', borderColor: ColorPalette.blackButton, background: ColorPalette.blackButton, textColor: ColorPalette.white, width: double.infinity, ), edit?ButtonDefault( onPressed: (){ //definir a função // var query = "DELETE FROM CADASTROS_INDIVIDUAIS WHERE ID_CAD_INDIVIDUAL = ?"; // 'Cadastro Individual excluído com sucesso!' }, title: 'Excluir', borderColor: ColorPalette.red, background: ColorPalette.red, textColor: ColorPalette.white, width: double.infinity, ):Container() ], ), ), ), Card( margin: EdgeInsets.all(10), child: Column( children: [ TitleContainers(title: 'Informações Sociodemográficas'), Row( children: [ Container( height: heigth*0.5, width: width*0.2, child: Icon(Icons.edit_note,size: 80,), ), Column( mainAxisAlignment: MainAxisAlignment.start, mainAxisSize: MainAxisSize.min, children: [ DropdownWithSubtitleCidadao( list:listINE, widthSubtitle: width*0.7, subtitle: 'INE / Área - Microárea', hintDropdown: 'INE / Área - Microárea', select: INE, widthDropdown: width*0.69, widthContainerDropdown: width*0.6, onChanged:!editing?null: (value)=>setState((){ INE = value; print('ID_AREA_CIDADAO'); print(INE!.ID_AREA_CIDADAO); print('ID_MICROAREA_CIDADAO'); print(INE!.ID_MICROAREA_CIDADAO); }), onTapDelete: ()=>setState(()=>INE=null), ), SwitchWithSubtitle( width: width*0.7, title: 'Fora de área', value: FORA_AREA, onChanged:!editing?null: (value)=>setState(()=>FORA_AREA = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Status Cadastro', value: STATUS_CADASTRO, onChanged:!editing?null: (value)=>setState(()=>STATUS_CADASTRO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Responsável Familiar', value: RESPONSAVEL_FAMILIAR, onChanged:!editing?null: (value)=>setState((){ RESPONSAVEL_FAMILIAR = value; if(RESPONSAVEL_FAMILIAR){ NOME_RESPONSAVEL_FAMILIAR.text = widget.listData[0]['NOME_CIDADAO']; PARENTESCO = null; }else{ NOME_RESPONSAVEL_FAMILIAR.clear(); } }), ), InputWithSubtitle( controller: NOME_RESPONSAVEL_FAMILIAR, subtitle: 'Responsável', errorInput: 'Campo Obrigatório!', labelInput: 'Responsável', widthInput: width*0.7, widthSubtitle: width*0.2, hintInput: 'Escreva aqui', enabled: false, mandatory: false, onChanged: (v)=>setState((){}), ), DropdownWithSubtitle( list: listkin, widthSubtitle: width*0.2, subtitle: 'Parentesco com o Responsável Familiar', hintDropdown: 'Parentesco com o Responsável Familiar', select: PARENTESCO, widthDropdown: width*0.69, widthContainerDropdown: width*0.4, onChanged:!editing || RESPONSAVEL_FAMILIAR?null: (value){ setState(()=>PARENTESCO = value); for (int i = 0; ConstVariable().listKin.length > i; i++) { if (ConstVariable().listKin[i].title == PARENTESCO) { PARENTESCO_COD = ConstVariable().listKin[i].cod; } } } ), InputWithSubtitle( controller: NATURALIDADE, subtitle: 'Naturalidade', errorInput: 'Campo Obrigatório!', labelInput: 'Naturalidade', widthInput: width*0.7, widthSubtitle: width*0.2, hintInput: 'Escreva aqui', enabled: false, onChanged: (v)=>setState((){}), ), InputWithSubtitle( controller: DT_ENTRADA_BRASIL, subtitle: 'Entrada no Brasil', errorInput: 'Campo Obrigatório!', labelInput: 'Entrada no Brasil', widthInput: width*0.7, widthSubtitle: width*0.2, hintInput: 'Escreva aqui', enabled: false, mandatory: false, onChanged: (v)=>setState((){}), ), InputWithSubtitle( controller: DT_NATURALIZACAO, subtitle: 'Data de Naturalização', errorInput: 'Campo Obrigatório!', labelInput: 'Data de Naturalização', widthInput: width*0.7, widthSubtitle: width*0.2, hintInput: 'Escreva aqui', enabled: false, mandatory: false, onChanged: (v)=>setState((){}), ), InputWithSubtitle( controller: PORTARIA_NATURALIZACAO, subtitle: 'Portaria de Naturalização', errorInput: 'Campo Obrigatório!', labelInput: 'Portaria de Naturalização', widthInput: width*0.7, widthSubtitle: width*0.2, hintInput: 'Escreva aqui', enabled: false, mandatory: false, onChanged: (v)=>setState((){}), ), DropdownWithSubtitle( list:listScoolingRegisterInd, widthSubtitle: width*0.4, subtitle: 'Escolaridade', hintDropdown: 'Escolaridade', select: ESCOLARIDADE, widthDropdown: width*0.69, widthContainerDropdown: width*0.6, onChanged:!editing?null: (value){ setState(()=>ESCOLARIDADE = value); for (int i = 0; ConstVariable().listScoolingRegisterInd.length > i; i++) { if (ConstVariable().listScoolingRegisterInd[i].title == ESCOLARIDADE) { ESCOLARIDADE_COD = ConstVariable().listScoolingRegisterInd[i].cod; } } }, onTapDelete: ()=>setState(()=>ESCOLARIDADE=null), showDelete: true, ), ESCOLARIDADE==null&& mandatory?ErrorDefault():Container(), SwitchWithSubtitle( width: width*0.7, title: 'Frequenta Escola / Creche', value: FREQ_ESCOLA_CRECHE, onChanged: !editing?null:(value)=>setState(()=>FREQ_ESCOLA_CRECHE = value), ), DropdownWithSubtitle( list: listOcupacion, widthSubtitle: width*0.2, subtitle: 'Situação no Mercado de Trabalho', hintDropdown: 'Situação no Mercado de Trabalho', select: SITUACAO_MERCADO, widthDropdown: width*0.69, widthContainerDropdown: width*0.5, onChanged:!editing?null: (value){ setState(()=>SITUACAO_MERCADO = value); for (int i = 0; ConstVariable().listOcupacion.length > i; i++) { if (ConstVariable().listOcupacion[i].title == SITUACAO_MERCADO) { SITUACAO_MERCADO_COD = ConstVariable().listOcupacion[i].cod; } } }, onTapDelete: ()=>setState(()=>SITUACAO_MERCADO=null), showDelete: true, ), TitleContainers(title: 'Menores de 9 anos ficam',width: width*0.7), CheckBoxTwoSubtitle( width: width*0.7, checkbox1: CRIANCAS_ADULTO, checkbox2: CRIANCAS_SOZINHA, subtitle1: 'ADULTO RESPONSÁVEL', subtitle2: 'SOZINHA', onChanged1: !editing?null:(value)=>setState(()=>CRIANCAS_ADULTO=value), onChanged2: !editing?null: (value)=>setState(()=>CRIANCAS_SOZINHA=value), ), CheckBoxTwoSubtitle( width: width*0.7, checkbox1: CRIANCAS_OUTRAS_CRIANCAS, checkbox2: CRIANCAS_CRECHE, subtitle1: 'OUTRA(S) CRIANÇA(S)', subtitle2: 'CRECHE', onChanged1: !editing?null: (value)=>setState(()=>CRIANCAS_OUTRAS_CRIANCAS=value), onChanged2: !editing?null: (value)=>setState(()=>CRIANCAS_CRECHE=value), ), CheckBoxTwoSubtitle( width: width*0.7, checkbox1: CRIANCAS_ADOLESCENTE, checkbox2: CRIANCAS_OUTRO, subtitle1: 'ADOLESCENTE', subtitle2: 'OUTRO', onChanged1: !editing?null: (value)=>setState(()=>CRIANCAS_ADOLESCENTE=value), onChanged2: !editing?null: (value)=>setState(()=>CRIANCAS_OUTRO=value), ), SwitchWithSubtitle( width: width*0.7, title: 'Frequenta Cuidador Tradicional', value: CUIDADOR_TRADICIONAL, onChanged: !editing?null: (value)=>setState(()=> CUIDADOR_TRADICIONAL = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Participa de Grupo Comunitário', value: GRUPO_COMUNITARIO, onChanged: !editing?null: (value)=>setState(()=> GRUPO_COMUNITARIO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Possui Plano de Saúde Privado', value: PLANO_PRIVADO, onChanged: !editing?null: (value)=>setState(()=> PLANO_PRIVADO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Membro de Comunidade Tradicional', value: COMUNIDADE_TRADICIONAL, onChanged: !editing?null: (value)=>setState(()=> COMUNIDADE_TRADICIONAL = value), ), InputWithSubtitle( controller: COM_TRADI_QUAL, subtitle: 'Qual', errorInput: 'Campo Obrigatório!', labelInput: 'Qual', widthInput: width*0.7, widthSubtitle: width*0.2, hintInput: 'Escreva aqui', enabled: COMUNIDADE_TRADICIONAL, mandatory: COMUNIDADE_TRADICIONAL, onChanged: (v)=>setState((){}), ), DropdownWithSubtitle( list: listGenderInd, widthSubtitle: width*0.2, subtitle: 'Orientação Sexual', hintDropdown: 'Orientação Sexual', select: ORIENT_SEXUAL, widthDropdown: width*0.7, widthContainerDropdown: width*0.5, onChanged: !editing?null: (value){ setState(()=>ORIENT_SEXUAL = value!); for (int i = 0; ConstVariable().listGenderInd.length > i; i++) { if (ConstVariable().listGenderInd[i].title == ORIENT_SEXUAL) { ORIENT_SEXUAL_COD = ConstVariable().listGenderInd[i].cod; } } }, colorBorder: ColorPalette.white, onTapDelete: ()=>setState(()=>ORIENT_SEXUAL=null), showDelete: true, ), DropdownWithSubtitle( list: listGenderIdent, widthSubtitle: width*0.2, subtitle: 'Identidade de Gênero', hintDropdown: 'Identidade de Gênero', select: IDENTIDADE_GENERO, widthDropdown: width*0.7, widthContainerDropdown: width*0.5, onChanged: !editing?null: (value){ setState(()=>IDENTIDADE_GENERO = value!); for (int i = 0; ConstVariable().listGenderIdent.length > i; i++) { if (ConstVariable().listGenderIdent[i].title == IDENTIDADE_GENERO) { IDENTIDADE_GENERO_COD = ConstVariable().listGenderIdent[i].cod; } } }, colorBorder: ColorPalette.white, onTapDelete: ()=>setState(()=>IDENTIDADE_GENERO=null), showDelete: true, ), SwitchWithSubtitle( width: width*0.7, title: 'Deficiência Auditiva', value: DEF_AUDITIVA, onChanged: !editing?null: (value)=>setState(()=> DEF_AUDITIVA = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Deficiência Intelectual / Cognitiva', value: DEF_INTELECTUAL, onChanged: !editing?null: (value)=>setState(()=> DEF_INTELECTUAL = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Deficiência Visual', value: DEF_VISUAL, onChanged: !editing?null: (value)=>setState(()=> DEF_VISUAL = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Deficiência Fisica', value: DEF_FISICA, onChanged: !editing?null: (value)=>setState(()=> DEF_FISICA = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Outras Deficiências', value: DEF_OUTRAS, onChanged: !editing?null: (value)=>setState(()=> DEF_OUTRAS = value), ), DropdownWithSubtitle( list: listExitCitizen, widthSubtitle: width*0.2, subtitle: 'Saída do Cidadão do Cadastro', hintDropdown: 'Saída do Cidadão do Cadastro', select: SAIDA_CADASTRO, widthDropdown: width*0.65, widthContainerDropdown: width*0.5, onChanged: !editing?null: (value){ setState(()=> SAIDA_CADASTRO = value); for (int i = 0; ConstVariable().listExitCitizen.length > i; i++) { if (ConstVariable().listExitCitizen[i].title == SAIDA_CADASTRO) { SAIDA_CADASTRO_COD = ConstVariable().listExitCitizen[i].cod; } } }, colorBorder: ColorPalette.white, onTapDelete: ()=>setState(()=>SAIDA_CADASTRO=null), showDelete: true, ), Container( width: width*0.7, child: TextDefault( textAlign: TextAlign.start, text: 'Data', color: ColorPalette.black54, fontSize: 12, ), ), GestureDetector( onTap:!edit?null: ()=>escolherprazoInicio(context,'data_saida'), child: InputWithSubtitle( controller: DATA_SAIDA_CADASTRO, subtitle: 'Data', mandatory: false, errorInput: 'Campo Obrigatório!', labelInput: 'Data', widthInput: width*0.7, widthSubtitle: width*0.2, hintInput: 'Escreva aqui', enabled: editing, onChanged: (v)=>setState((){}), ), ), SwitchWithSubtitle( width: width*0.7, title: 'Cadastro Recusado', value: CADASTRO_RECUSADO, onChanged: !editing?null: (value)=>setState(()=> CADASTRO_RECUSADO = value), ), ], ) ], ) ], ), ), Card( margin: EdgeInsets.all(10), child: Column( children: [ TitleContainers(title: 'Condições de Saúde em Geral'), Row( children: [ Container( height: heigth*0.4, width: width*0.2, child: Icon(LineIcons.stethoscope,size: 80,), ), Padding( padding: const EdgeInsets.symmetric(horizontal: 0.0), child: Column( mainAxisAlignment: MainAxisAlignment.start, mainAxisSize: MainAxisSize.min, children: [ SwitchWithSubtitle( width: width*0.7, title: 'Gestante', value: GESTANTE, onChanged: !editing && widget.listData[0]['SEXO']!='F'?null: (value)=>setState(()=> GESTANTE = value), ), InputWithSubtitle( controller: MATERNIDADE_REFERENCIA, subtitle: 'Maternidade Referência', errorInput: 'Campo Obrigatório!', labelInput: 'Maternidade Referência', widthInput: width*0.7, widthSubtitle: width*0.7, hintInput: 'Escreva aqui', enabled: GESTANTE, mandatory: false, onChanged: (v)=>setState((){}), ), DropdownWithSubtitle( list: listWeight, widthSubtitle: width*0.2, subtitle: 'Peso', hintDropdown: 'Peso', select: PESO, widthDropdown: width*0.67, widthContainerDropdown: width*0.3, onChanged: !editing?null: (value){ setState(()=>PESO = value); for (int i = 0; ConstVariable().listWeight.length > i; i++) { if (ConstVariable().listWeight[i].title == PESO) { PESO_COD = ConstVariable().listWeight[i].cod; } } }, colorBorder: ColorPalette.white, onTapDelete: ()=>setState(()=>PESO=null), showDelete: true, ), SwitchWithSubtitle( width: width*0.7, title: 'Fumante', value: FUMANTE, onChanged: !editing?null: (value)=>setState(()=>FUMANTE = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Usa Álcool', value: USA_ALCOOL, onChanged: !editing?null: (value)=>setState(()=>USA_ALCOOL = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Usa Drogas', value: USA_DROGAS, onChanged: !editing?null: (value)=>setState(()=>USA_DROGAS = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Hipertensão', value: HIPERTENSAO, onChanged: !editing?null: (value)=>setState(()=>HIPERTENSAO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Diabetes', value: DIABETES, onChanged: !editing?null: (value)=>setState(()=>DIABETES = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Teve AVC/Derrame', value: AVC_DERRAME, onChanged: !editing?null: (value)=>setState(()=>AVC_DERRAME = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Teve Infarto', value: INFARTO, onChanged: !editing?null: (value)=>setState(()=>INFARTO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Está com Hanseníase', value: HANSENIASE, onChanged: !editing?null: (value)=>setState(()=>HANSENIASE = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Está com Tuberculose', value: TUBERCULOSE, onChanged: !editing?null: (value)=>setState(()=>TUBERCULOSE = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Tem ou Teve Câncer', value: CANCER, onChanged: !editing?null: (value)=>setState(()=>CANCER = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Fibromialgia', value: FIBROMIALGIA , onChanged: !editing?null: (value)=>setState(()=>FIBROMIALGIA = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Transtorno Espectro Autista', value: TRANSTORNO_ESPECTRO_AUTISTA, onChanged: !editing?null: (value)=>setState(()=>TRANSTORNO_ESPECTRO_AUTISTA = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Internação nos Últimos 12 Meses', value: INTERNACAO, onChanged: !editing?null: (value)=>setState(()=>INTERNACAO = value), ), InputWithSubtitle( controller: MOTIVO, subtitle: 'Motivo', errorInput: 'Campo Obrigatório!', labelInput: 'Motivo', widthInput: width*0.7, widthSubtitle: width*0.7, hintInput: 'Escreva aqui', mandatory: false, enabled: editing && INTERNACAO, onChanged: (v)=>setState((){}), ), DropdownWithSubtitle( subtitle: 'Doença Cardíaca', select: DOENCA_CARDIACA, widthDropdown: width*0.69, widthContainerDropdown: width*0.5, widthSubtitle: width*0.3, hintDropdown: 'Doença Cardíaca', onChanged: !editing?null: (value){ setState(()=>DOENCA_CARDIACA = value); for (int i = 0; ConstVariable().listHeart.length > i; i++) { if (ConstVariable().listHeart[i].title == DOENCA_CARDIACA) { DOENCA_CARDIACA_COD = ConstVariable().listHeart[i].cod; } } }, list:listHeart ), DropdownWithSubtitle( subtitle: 'Tem ou Teve Problema nos Rins', select: PROBLEMA_RINS, widthDropdown: width*0.69, widthContainerDropdown: width*0.5, widthSubtitle: width*0.3, hintDropdown: 'Tem ou Teve Problema nos Rins', onChanged: !editing?null: (value){ setState(()=>PROBLEMA_RINS = value); for (int i = 0; ConstVariable().listKidney.length > i; i++) { if (ConstVariable().listKidney[i].title == PROBLEMA_RINS) { PROBLEMA_RINS_COD = ConstVariable().listKidney[i].cod; } } }, list:listKidney ), DropdownWithSubtitle( subtitle: 'Tem Doença Respiratória / Pulmão', select: DOENCA_PULMAO, widthDropdown: width*0.69, widthContainerDropdown: width*0.5, widthSubtitle: width*0.3, hintDropdown: 'Tem Doença Respiratória / Pulmão', onChanged: !editing?null: (value){ setState(()=>DOENCA_PULMAO = value); for (int i = 0; ConstVariable().listLung.length > i; i++) { if (ConstVariable().listLung[i].title == DOENCA_PULMAO) { DOENCA_PULMAO_COD = ConstVariable().listLung[i].cod; } } }, list: listLung ), SwitchWithSubtitle( width: width*0.7, title: 'Saúde Mental - Tratamento ou Internação', value: SAUDE_MENTAL, onChanged: !editing?null: (value)=>setState(()=>SAUDE_MENTAL = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Acamado', value: ACAMADO, onChanged: !editing?null: (value)=>setState(()=>ACAMADO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Domiciliado', value: DOMICILIADO, onChanged: !editing?null: (value)=>setState(()=>DOMICILIADO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Plantas Medicinais', value: PLANTAS_MED, onChanged: !editing?null: (value)=>setState(()=>PLANTAS_MED = value), ), InputWithSubtitle( controller: PLANTAS_MED_QUAIS, subtitle: 'Quais', errorInput: 'Campo Obrigatório!', labelInput: 'Quais', widthInput: width*0.7, widthSubtitle: width*0.7, hintInput: 'Escreva aqui', enabled: editing && PLANTAS_MED, mandatory: PLANTAS_MED, onChanged: (v)=>setState((){}), ), SwitchWithSubtitle( width: width*0.7, title: 'PIC', value: PIC, onChanged: !editing?null: (value)=>setState(()=>PIC = value), ), InputWithSubtitle( controller: OUTRAS_CONDICOES, subtitle: 'Outras Condições de Sáude', errorInput: 'Campo Obrigatório!', labelInput: 'Outras Condições de Sáude', widthInput: width*0.7, widthSubtitle: width*0.7, hintInput: 'Escreva aqui', enabled: editing, mandatory: false, onChanged: (v)=>setState((){}), ), ], ), ), ] ), ], ), ), Card( margin: EdgeInsets.all(10), child: Column( children: [ TitleContainers(title: 'Condição de Rua'), Row( children: [ Container( height: heigth*0.4, width: width*0.2, child: Icon(LineIcons.horizontalEllipsis,size: 80,), ), Padding( padding: const EdgeInsets.symmetric(horizontal: 0.0), child: Column( mainAxisAlignment: MainAxisAlignment.start, mainAxisSize: MainAxisSize.min, children: [ DropdownWithSubtitle( subtitle: 'Tempo em Situação de Rua', select: TEMPO_SITUACAO_RUA, widthDropdown: width*0.69, widthContainerDropdown: width*0.5, widthSubtitle: width*0.3, hintDropdown: 'Tempo em Situação de Rua', onChanged: !editing?null: (value){ setState(()=>TEMPO_SITUACAO_RUA = value); for (int i = 0; ConstVariable().listCondStreet.length > i; i++) { if (ConstVariable().listCondStreet[i].title ==TEMPO_SITUACAO_RUA) { TEMPO_SITUACAO_RUA_COD = ConstVariable().listCondStreet[i].cod; } } }, list: listCondStreet ), TEMPO_SITUACAO_RUA==null&& mandatory?ErrorDefault():Container(), SwitchWithSubtitle( width: width*0.7, title: 'Acompanhado por Outra Instituição', value: ACOMP_INTITUICAO, onChanged: !editing || TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>ACOMP_INTITUICAO = value), ), InputWithSubtitle( controller: ACOMP_INTITUICAO_QUAL, subtitle: 'Qual(is)', errorInput: 'Campo Obrigatório!', labelInput: 'Qual(is)', widthInput: width*0.7, widthSubtitle: width*0.7, hintInput: 'Escreva aqui', enabled: editing && ACOMP_INTITUICAO, mandatory: false, onChanged: (v)=>setState((){}), ), SwitchWithSubtitle( width: width*0.7, title: 'Recebe Algum Benefício', value: BENEFICIO, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>BENEFICIO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Possui Referência Familiar', value: REF_FAMILIAR, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>REF_FAMILIAR = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Visita Algum Familiar com Frequência', value: VISITA_FREQUENCIA, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>VISITA_FREQUENCIA = value), ), InputWithSubtitle( controller: PARENTESCO_VISITA, subtitle: 'Parentesco com o Responsável Familiar', errorInput: 'Campo Obrigatório!', labelInput: 'Parentesco com o Responsável Familiar', widthInput: width*0.7, widthSubtitle: width*0.7, hintInput: 'Escreva aqui', enabled: editing && VISITA_FREQUENCIA, mandatory: false, onChanged: (v)=>setState((){}), ), DropdownWithSubtitle( subtitle: 'Alimentação Diária', select: ALIMENTACAO_DIARIA, widthDropdown: width*0.69, widthContainerDropdown: width*0.5, widthSubtitle: width*0.3, hintDropdown: 'Alimentação Diária', onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value){ setState(()=>ALIMENTACAO_DIARIA = value); for (int i = 0; ConstVariable().listDailyFood.length > i; i++) { if (ConstVariable().listDailyFood[i].title == ALIMENTACAO_DIARIA) { ALIMENTACAO_DIARIA_COD = ConstVariable().listDailyFood[i].cod; } } }, list: listDailyFood ), SwitchWithSubtitle( width: width*0.7, title: 'Restaurante Popular', value: REST_POPULAR, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>REST_POPULAR = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Doação Restaurante', value: DOACAO_REST, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>DOACAO_REST = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Doação Grupo Religioso', value: DOACAO_RELIGIOSO, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>DOACAO_RELIGIOSO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Doação Popular', value: DOACAO_POPULAR, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>DOACAO_POPULAR = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Outros', value: OUTROS_ALIM, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>OUTROS_ALIM = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Acesso a Higiene Pessoal', value: ACESSO_HIGIENE, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>ACESSO_HIGIENE = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Banho', value: BANHO, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>BANHO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Sanitário', value: SANITARIO, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>SANITARIO = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Higiene Bucal', value: HIGIENE_BUCAL, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>HIGIENE_BUCAL = value), ), SwitchWithSubtitle( width: width*0.7, title: 'Outros', value: OUTROS_HIGIENE, onChanged: !editing|| TEMPO_SITUACAO_RUA == 'NÃO ESTÁ EM SITUAÇÃO DE RUA'?null: (value)=>setState(()=>OUTROS_HIGIENE = value), ), ], ), ), ] ), ], ), ), Card( margin: EdgeInsets.all(10), child: Column( children: [ TitleContainers(title: 'Profissional Responsável'), Row( children: [ Container( height: heigth*0.4, width: width*0.2, child: Icon(Icons.business_center,size: 80,), ), Padding( padding: const EdgeInsets.symmetric(horizontal: 0.0), child: Column( mainAxisAlignment: MainAxisAlignment.start, mainAxisSize: MainAxisSize.min, children: [ InputWithSubtitle( controller: USUARIO_RESP_CADASTRO, subtitle: 'Usuário responsável Pelo Cadastro', errorInput: 'Campo Obrigatório!', labelInput: 'Usuário responsável Pelo Cadastro', widthInput: width*0.7, widthSubtitle: width*0.7, hintInput: 'Escreva aqui', enabled: false, onChanged: (v)=>setState((){}), ), InputWithSubtitle( enabled: false, controller: CNES_RESP_CADASTRO, subtitle: 'Unidade do Profissional', errorInput: 'Campo Obrigatório!', labelInput: 'Unidade do Profissional', widthInput: width*0.7, widthSubtitle: width*0.7, hintInput: 'Escreva aqui', onChanged: (v)=>setState((){}), ), DropdownWithSubtitle( subtitle: 'CBO', select: CBO_RESP_CADASTRO, widthDropdown: width*0.69, widthContainerDropdown: width*0.5, widthSubtitle: width*0.3, hintDropdown: 'CBO', onChanged: !editing?null: (value)=>setState(()=>CBO_RESP_CADASTRO = value), list: listCBO ), CBO_RESP_CADASTRO==null&& mandatory?ErrorDefault():Container(), DropdownWithSubtitle( subtitle: 'Código da Equipe', select: INE_RESP_CADASTRO, widthDropdown: width*0.69, widthContainerDropdown: width*0.5, widthSubtitle: width*0.3, hintDropdown: 'Código da Equipe', onChanged: !editing?null: (value)=>setState(()=>INE_RESP_CADASTRO = value), list: listINEPROF ), Container( width: width*0.7, child: TextDefault( textAlign: TextAlign.start, text: 'Data do Cadastro', color: ColorPalette.black54, fontSize: 12, ), ), GestureDetector( onTap:!edit?null: ()=>escolherprazoInicio(context,'cadastro'), child: InputWithSubtitle( controller: DT_CADASTRO, subtitle: 'Data do Cadastro', errorInput: 'Campo Obrigatório!', labelInput: 'Data do Cadastro', widthInput: width*0.7, widthSubtitle: width*0.7, hintInput: 'Escreva aqui', enabled: false, mandatory: mandatory, onChanged: (v)=>setState((){}), ), ), DT_CADASTRO.text.isEmpty&& mandatory?ErrorDefault():Container(), ], ), ), ] ), ], ), ), CNS_VALIDO?Card( margin: EdgeInsets.all(10), child: Container( padding: const EdgeInsets.all(8.0), width: width, height: heigth*0.1, child: Row( children: [ Icon(Icons.warning,color: ColorPalette.red,), Container( width: width*0.9, child: TextDefault( text: 'CNS do Profissional inválido. Este cadastro não será exportado para o e-SUS.', fontSize: 15, maxLines: 2, color: ColorPalette.red, ), ), ], ), ), ):Container() ] ) ), ), ); } }