ajustes de edição e envio dos dados para o post
This commit is contained in:
@@ -43,19 +43,19 @@ class MainControllers{
|
|||||||
// Retorna a senha criptografada
|
// Retorna a senha criptografada
|
||||||
return senhaCriptogradafa;
|
return senhaCriptogradafa;
|
||||||
}
|
}
|
||||||
validaCNS(String cns)async{
|
validaCNS(String cns,bool editing)async{
|
||||||
//valido provisório 783107557570002
|
//valido provisório 783107557570002
|
||||||
//cns valido def 187455333020009
|
//cns valido def 187455333020009
|
||||||
String response = 'CNS inválido';
|
String response = 'CNS inválido';
|
||||||
String type = cns.substring(0,1);
|
String type = cns.substring(0,1);
|
||||||
if(type == '7'|| type =='8' || type == '9'){
|
if(type == '7'|| type =='8' || type == '9'){
|
||||||
response = await validaCNSProv(cns);
|
response = await validaCNSProv(cns,editing);
|
||||||
}else{
|
}else{
|
||||||
response = validaCNSDef(cns);
|
response = validaCNSDef(cns,editing);
|
||||||
}
|
}
|
||||||
return response;
|
return response;
|
||||||
}
|
}
|
||||||
validaCNSProv(String vlrCNS)async{
|
validaCNSProv(String vlrCNS,bool editing)async{
|
||||||
int resto;
|
int resto;
|
||||||
int soma;
|
int soma;
|
||||||
if(vlrCNS.length == 15){
|
if(vlrCNS.length == 15){
|
||||||
@@ -85,7 +85,7 @@ class MainControllers{
|
|||||||
if (resto == 0)
|
if (resto == 0)
|
||||||
{
|
{
|
||||||
// CNS provisório válido
|
// CNS provisório válido
|
||||||
List result = await DBQuerys().duplicidadeCNS(vlrCNS);
|
List result = editing?[]:await DBQuerys().duplicidadeCNS(vlrCNS);
|
||||||
if(result.length==0){
|
if(result.length==0){
|
||||||
return 'ok';
|
return 'ok';
|
||||||
}else{
|
}else{
|
||||||
@@ -105,7 +105,7 @@ class MainControllers{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
validaCNSDef(String vlrCNS){
|
validaCNSDef(String vlrCNS,bool editing){
|
||||||
int soma = 0;
|
int soma = 0;
|
||||||
int resto = 0;
|
int resto = 0;
|
||||||
int dv = 0;
|
int dv = 0;
|
||||||
@@ -153,7 +153,7 @@ class MainControllers{
|
|||||||
return 'CNS definitivo inválido';
|
return 'CNS definitivo inválido';
|
||||||
} else {
|
} else {
|
||||||
// CNS válido
|
// CNS válido
|
||||||
String result = DBQuerys().duplicidadeCNS(vlrCNS);
|
String result = editing?[]: DBQuerys().duplicidadeCNS(vlrCNS);
|
||||||
if(result==''){
|
if(result==''){
|
||||||
return 'ok';
|
return 'ok';
|
||||||
}else{
|
}else{
|
||||||
@@ -168,15 +168,19 @@ class MainControllers{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
validaCPF(String cpf)async{
|
validaCPF(String cpf,bool editing)async{
|
||||||
// 60352523620 CPF VÁLIDO
|
// 60352523620 CPF VÁLIDO
|
||||||
if(GetUtils.isCpf(cpf)){
|
if(GetUtils.isCpf(cpf)){
|
||||||
List result = await DBQuerys().duplicidadeCPF(cpf);
|
if(editing){
|
||||||
print(cpf);
|
|
||||||
if(result.length==0){
|
|
||||||
return 'ok';
|
return 'ok';
|
||||||
}else{
|
}else{
|
||||||
return 'CPF duplicado';
|
List result = await DBQuerys().duplicidadeCPF(cpf);
|
||||||
|
// print(cpf);
|
||||||
|
if(result.length==0){
|
||||||
|
return 'ok';
|
||||||
|
}else{
|
||||||
|
return 'CPF duplicado';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
return 'CPF inválido';
|
return 'CPF inválido';
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:rkm/service/db/db_querys.dart';
|
import 'package:rkm/service/db/db_querys.dart';
|
||||||
import 'package:rkm/widgets/button_default.dart';
|
import 'package:rkm/widgets/button_default.dart';
|
||||||
@@ -18,41 +20,42 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
String mode ='';
|
String mode ='';
|
||||||
String urlAPI ='';
|
String urlAPI ='';
|
||||||
String nameCityApi ='';
|
String nameCityApi ='';
|
||||||
List tableCIDADAOS = [];
|
var tableCIDADAOS;
|
||||||
List tableCIDADAO_DOMICILIO = [];
|
var tableCIDADAO_DOMICILIO;
|
||||||
List tableDOMICILIOS_CIDADAOS = [];
|
var tableDOMICILIOS_CIDADAOS;
|
||||||
List tableINNERJOINCIDADAO_DOMICILIO = [];
|
var tableINNERJOINCIDADAO_DOMICILIO;
|
||||||
List tableCADASTROS_INDIVIDUAIS = [];
|
var tableCADASTROS_INDIVIDUAIS;
|
||||||
List tableATENDS_INDIV_COMPL = [];
|
var tableATENDS_INDIV_COMPL;
|
||||||
List tableATENDS_INDIV_EXAMES = [];
|
var tableATENDS_INDIV_EXAMES;
|
||||||
List tableATENDS_INDIV_PROC = [];
|
var tableATENDS_INDIV_PROC;
|
||||||
List tableATENDS_INDIV_PROF = [];
|
var tableATENDS_INDIV_PROF;
|
||||||
List tableATENDS_INDIVIDUAIS = [];
|
var tableATENDS_INDIVIDUAIS;
|
||||||
List tablePROCEDIMENTOS_FICHAS = [];
|
var tablePROCEDIMENTOS_FICHAS;
|
||||||
List tablePROCEDIMENTOS_INDIV = [];
|
var tablePROCEDIMENTOS_INDIV;
|
||||||
List tablePROCEDIMENTOS_INDIV_FICHA = [];
|
var tablePROCEDIMENTOS_INDIV_FICHA;
|
||||||
List tablePROCEDIMENTOS_INDIV_SIGTAP = [];
|
var tablePROCEDIMENTOS_INDIV_SIGTAP;
|
||||||
List tableVISITAS_DOMICILIARES = [];
|
var tableVISITAS_DOMICILIARES;
|
||||||
List tableVISITAS_DOMICILIARES_COMPL = [];
|
var tableVISITAS_DOMICILIARES_COMPL;
|
||||||
List tableVISITAS_DOMICILIARES_PROC = [];
|
var tableVISITAS_DOMICILIARES_PROC;
|
||||||
List tableFICHAS_COMPLEMENTARES = [];
|
var tableFICHAS_COMPLEMENTARES;
|
||||||
List tableATENDIMENTOS_DOMICILIARES = [];
|
var tableATENDIMENTOS_DOMICILIARES;
|
||||||
List tableATENDS_DOM_COMPL = [];
|
var tableATENDS_DOM_COMPL;
|
||||||
List tableATENDS_DOM_PROC = [];
|
var tableATENDS_DOM_PROC;
|
||||||
List tableATENDS_DOM_SIGTAP = [];
|
var tableATENDS_DOM_SIGTAP;
|
||||||
List tableATENDS_ODONTOLOGICOS = [];
|
var tableATENDS_ODONTOLOGICOS;
|
||||||
List tableATENDS_ODONTO_PROF = [];
|
var tableATENDS_ODONTO_PROF;
|
||||||
List tableATENDS_ODONTO_PROC = [];
|
var tableATENDS_ODONTO_PROC;
|
||||||
List tableATENDS_ODONTO_SIGTAP = [];
|
var tableATENDS_ODONTO_SIGTAP;
|
||||||
List tableATENDS_ODONTO_COMPL = [];
|
var tableATENDS_ODONTO_COMPL;
|
||||||
List tableMARCADORES_CON_QUEST = [];
|
var tableMARCADORES_CON_QUEST;
|
||||||
List tableMARCADORES_CONSUMO = [];
|
var tableMARCADORES_CONSUMO;
|
||||||
List tableAVAL_ELEG_COND_AVAL = [];
|
var tableAVAL_ELEG_COND_AVAL;
|
||||||
List tableAVAL_ELEG_CONCL_INE = [];
|
var tableAVAL_ELEG_CONCL_INE;
|
||||||
List tableAVALIACOES_ELEGIBILIDADE = [];
|
var tableAVALIACOES_ELEGIBILIDADE;
|
||||||
String message = 'A Sincronização poderá demorar. Prosseguir?';
|
String message = 'A Sincronização poderá demorar. Prosseguir?';
|
||||||
bool upload = false;
|
bool upload = false;
|
||||||
bool done = false;
|
bool done = false;
|
||||||
|
bool error = false;
|
||||||
|
|
||||||
updateTable()async{
|
updateTable()async{
|
||||||
setState(() {
|
setState(() {
|
||||||
@@ -61,7 +64,6 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
});
|
});
|
||||||
await DBQuerys().cadCidadaos().then((response)async{
|
await DBQuerys().cadCidadaos().then((response)async{
|
||||||
tableCIDADAOS = response;
|
tableCIDADAOS = response;
|
||||||
// print(tableCIDADAOS);
|
|
||||||
await DBQuerys().cadDomiciliares().then((response)async{
|
await DBQuerys().cadDomiciliares().then((response)async{
|
||||||
tableCIDADAO_DOMICILIO = response;
|
tableCIDADAO_DOMICILIO = response;
|
||||||
// print(tableCIDADAO_DOMICILIO);
|
// print(tableCIDADAO_DOMICILIO);
|
||||||
@@ -191,21 +193,37 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
syncData()async{
|
syncData()async{
|
||||||
// ApiDataPost().sincronizacao(urlAPI, mode, nameCityApi).then((value){});
|
if(tableCIDADAOS!=null){
|
||||||
setState(() {
|
String map = json.encode(tableCIDADAOS);
|
||||||
upload = false;
|
ApiDataPost().sincronizacao(urlAPI, mode, nameCityApi,map).then((value){}).then((value){
|
||||||
done = true;
|
print('value');
|
||||||
message = '';
|
print(value);
|
||||||
});
|
if(value==null){
|
||||||
|
setState(() {
|
||||||
|
error = true;
|
||||||
|
message = 'error';
|
||||||
|
});
|
||||||
|
}else{
|
||||||
|
setState(() {
|
||||||
|
upload = false;
|
||||||
|
done = true;
|
||||||
|
message = '';
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
dataSQLite()async{
|
dataSQLite()async{
|
||||||
|
// print(DBQuerys().deleteCidadao());
|
||||||
|
|
||||||
await DbSqliteLoad().intialDB().then((db)async {
|
await DbSqliteLoad().intialDB().then((db)async {
|
||||||
List list = await db.query('ARGS');
|
List list = await db.query('ARGS');
|
||||||
urlAPI = list[0]['URLAPI'];
|
urlAPI = list[0]['URLAPI'];
|
||||||
mode = list[0]['MODE'];
|
mode = list[0]['MODE'];
|
||||||
nameCityApi = list[0]['NAME_CITY_API'];
|
nameCityApi = list[0]['NAME_CITY_API'];
|
||||||
});
|
});
|
||||||
|
setState(() {});
|
||||||
// print(urlAPI);
|
// print(urlAPI);
|
||||||
// print(mode);
|
// print(mode);
|
||||||
// print(nameCityApi);
|
// print(nameCityApi);
|
||||||
@@ -254,7 +272,7 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
Image.asset('assets/images/logo.PNG',width: width*0.5,),
|
Image.asset('assets/images/logo.PNG',width: width*0.5,),
|
||||||
mode == 'homologacao'?Image.asset('assets/images/homologacao.png',width: width*0.4):Container(),
|
mode == 'homologacao'?Image.asset('assets/images/homologacao.png',width: width*0.4):Container(),
|
||||||
mode == 'desenvolvimento'?Image.asset('assets/images/desenvolvimento.png',width: width*0.4):Container(),
|
mode == 'desenvolvimento'?Image.asset('assets/images/desenvolvimento.png',width: width*0.4):Container(),
|
||||||
Padding(
|
message == 'error'?Container():Padding(
|
||||||
padding: const EdgeInsets.symmetric(vertical: 5.0),
|
padding: const EdgeInsets.symmetric(vertical: 5.0),
|
||||||
child: TextDefault(
|
child: TextDefault(
|
||||||
text: message,
|
text: message,
|
||||||
@@ -263,8 +281,9 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
upload?Image.asset('assets/images/loading.gif',width: width*0.4):Container(),
|
message!='error'&&upload?Image.asset('assets/images/loading.gif',width: width*0.4):Container(),
|
||||||
done?Image.asset('assets/images/send-done.png',width: width*0.9):Container(),
|
message==''&&done?Image.asset('assets/images/send-done.png',width: width*0.9):Container(),
|
||||||
|
error?Image.asset('assets/images/error.png',width: width*0.9):Container(),
|
||||||
!upload && !done?ButtonDefault(
|
!upload && !done?ButtonDefault(
|
||||||
title: 'Enviar informações',
|
title: 'Enviar informações',
|
||||||
width: width*0.9,
|
width: width*0.9,
|
||||||
@@ -274,21 +293,21 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
onPressed: ()=>updateTable(),
|
onPressed: ()=>updateTable(),
|
||||||
):Container(),
|
):Container(),
|
||||||
SizedBox(height: 20,),
|
SizedBox(height: 20,),
|
||||||
done?Container(
|
message==''&&done?Container(
|
||||||
color: ColorPalette.white,
|
color: ColorPalette.white,
|
||||||
width: width,
|
width: width,
|
||||||
height: height*0.3,
|
height: height*0.3,
|
||||||
child: ListView(
|
child: ListView(
|
||||||
children: [
|
children: [
|
||||||
TextDefault(
|
TextDefault(
|
||||||
text: 'Atendimentos Domiciliares: ${tableATENDIMENTOS_DOMICILIARES.length}',
|
text: 'Atendimentos Domiciliares: ${tableATENDIMENTOS_DOMICILIARES==null?'0':tableATENDIMENTOS_DOMICILIARES.length}',
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
),
|
),
|
||||||
TextDefault(
|
TextDefault(
|
||||||
text: 'Atendimento Individuais: ${tableATENDS_INDIVIDUAIS.length}',
|
text: 'Atendimento Individuais: ${tableATENDS_INDIVIDUAIS==null?'0':tableATENDS_INDIVIDUAIS.length}',
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
@@ -296,35 +315,35 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
),
|
),
|
||||||
TextDefault(
|
TextDefault(
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
text: 'Atendimentos Odontológicos: ${tableATENDS_ODONTOLOGICOS.length}',
|
text: 'Atendimentos Odontológicos: ${tableATENDS_ODONTOLOGICOS==null?'0':tableATENDS_ODONTOLOGICOS.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
),
|
),
|
||||||
TextDefault(
|
TextDefault(
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
text: 'Avaliação Elegibilidade: ${tableAVALIACOES_ELEGIBILIDADE.length}',
|
text: 'Avaliação Elegibilidade: ${tableAVALIACOES_ELEGIBILIDADE==null?'0':tableAVALIACOES_ELEGIBILIDADE.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
),
|
),
|
||||||
TextDefault(
|
TextDefault(
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
text: 'Cadastros Cidadãos Realizados / Atualizados : ${tableCIDADAOS.length}',
|
text: 'Cadastros Cidadãos Realizados / Atualizados : ${tableCIDADAOS==null?'0':tableCIDADAOS.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
),
|
),
|
||||||
TextDefault(
|
TextDefault(
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
text: 'Fichas Complementares: ${tableFICHAS_COMPLEMENTARES.length}',
|
text: 'Fichas Complementares: ${tableFICHAS_COMPLEMENTARES==null?'0':tableFICHAS_COMPLEMENTARES.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
),
|
),
|
||||||
TextDefault(
|
TextDefault(
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
text: 'Marcadores de Consumo : ${tableMARCADORES_CONSUMO.length}',
|
text: 'Marcadores de Consumo : ${tableMARCADORES_CONSUMO==null?'0':tableMARCADORES_CONSUMO.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
@@ -339,14 +358,14 @@ class _SincDataScreenState extends State<SincDataScreen> {
|
|||||||
),
|
),
|
||||||
TextDefault(
|
TextDefault(
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
text: 'Procedimentos Individuais : ${tablePROCEDIMENTOS_INDIV.length}',
|
text: 'Procedimentos Individuais : ${tablePROCEDIMENTOS_INDIV==null?'0':tablePROCEDIMENTOS_INDIV.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
),
|
),
|
||||||
TextDefault(
|
TextDefault(
|
||||||
textAlign: TextAlign.center,
|
textAlign: TextAlign.center,
|
||||||
text: 'Visitas Domiciliares: ${tableVISITAS_DOMICILIARES.length}',
|
text: 'Visitas Domiciliares: ${tableVISITAS_DOMICILIARES==null?'0':tableVISITAS_DOMICILIARES.length}',
|
||||||
fontWeigth: FontWeight.bold,
|
fontWeigth: FontWeight.bold,
|
||||||
color: ColorPalette.black54,
|
color: ColorPalette.black54,
|
||||||
fontSize: 18,
|
fontSize: 18,
|
||||||
|
|||||||
@@ -138,6 +138,8 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
String idUnidade = '';
|
String idUnidade = '';
|
||||||
String codSus = '';
|
String codSus = '';
|
||||||
bool edit = false;
|
bool edit = false;
|
||||||
|
bool editing = false;
|
||||||
|
int idCidadao = 0;
|
||||||
|
|
||||||
escolherprazoInicio(BuildContext context,String type) async {
|
escolherprazoInicio(BuildContext context,String type) async {
|
||||||
|
|
||||||
@@ -291,7 +293,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
checkSave(){
|
checkSave()async{
|
||||||
bool checkMother = false;
|
bool checkMother = false;
|
||||||
bool checkFather = false;
|
bool checkFather = false;
|
||||||
bool checkClassification = false;
|
bool checkClassification = false;
|
||||||
@@ -303,6 +305,16 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
checkFather = true;
|
checkFather = true;
|
||||||
print('colocar nome pai');
|
print('colocar nome pai');
|
||||||
}
|
}
|
||||||
|
if(CPFController.text.isNotEmpty){
|
||||||
|
checkCPF = await MainControllers().validaCPF(CPFController.text,editing);
|
||||||
|
}else{
|
||||||
|
checkCPF = 'ok';
|
||||||
|
}
|
||||||
|
if(CNSController.text.isNotEmpty){
|
||||||
|
checkCNS = await MainControllers().validaCNS(CNSController.text,editing);
|
||||||
|
}else{
|
||||||
|
checkCNS = 'ok';
|
||||||
|
}
|
||||||
if((selectClassification!='OUTRO MUNICIPIO' && selectCountry == 'BRASIL' && selectStreet == null) ||
|
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!=8)) ||
|
||||||
(selectStreet!=null && numberController.text.isEmpty) ||
|
(selectStreet!=null && numberController.text.isEmpty) ||
|
||||||
@@ -351,6 +363,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
|
|
||||||
saveCitizen()async{
|
saveCitizen()async{
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
|
'ID_CIDADAO' : idCidadao,
|
||||||
'CD_USUARIO_SUS' : codSus,
|
'CD_USUARIO_SUS' : codSus,
|
||||||
'NOME_CIDADAO' : nameController.text,
|
'NOME_CIDADAO' : nameController.text,
|
||||||
'NOME_SOCIAL' : nameSocialController.text,
|
'NOME_SOCIAL' : nameSocialController.text,
|
||||||
@@ -383,24 +396,24 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
'NO_BAIRRO_LOGR' : selectVillage,
|
'NO_BAIRRO_LOGR' : selectVillage,
|
||||||
'ID_LOGR_TIPO' : idTipo,
|
'ID_LOGR_TIPO' : idTipo,
|
||||||
'NOME_LOGR' : selectStreet,
|
'NOME_LOGR' : selectStreet,
|
||||||
'CEP_LOGR' : cepController.text,
|
'CEP_LOGR' : cepController.text.isNotEmpty?int.parse(cepController.text):0,
|
||||||
'NUMERO_LOGR' : numberController.text,
|
'NUMERO_LOGR' : numberController.text.isNotEmpty?int.parse(numberController.text):0,
|
||||||
'LOTEAMENTO_LOGR' : selectSubdivision,
|
'LOTEAMENTO_LOGR' : selectSubdivision,
|
||||||
'COMPL_LOGR' : complementController.text,
|
'COMPL_LOGR' : complementController.text,
|
||||||
'PONTO_REFERENCIA' : referencePointController.text,
|
'PONTO_REFERENCIA' : referencePointController.text,
|
||||||
'ZONA_LOGR' : selectZoneCod,
|
'ZONA_LOGR' : selectZoneCod,
|
||||||
'DDD_CELULAR' : int.parse(mobileDDDController.text),
|
'DDD_CELULAR' : mobileDDDController.text.isNotEmpty?int.parse(mobileDDDController.text):0,
|
||||||
'NUM_CELULAR' : int.parse(mobileController.text),
|
'NUM_CELULAR' : mobileController.text.isNotEmpty?int.parse(mobileController.text):0,
|
||||||
'DDD_TELEFONE' : int.parse(foneDDDController.text),
|
'DDD_TELEFONE' : foneDDDController.text.isNotEmpty?int.parse(foneDDDController.text):0,
|
||||||
'NUM_TELEFONE' : int.parse(foneController.text),
|
'NUM_TELEFONE' : foneController.text.isNotEmpty?int.parse(foneController.text):0,
|
||||||
'DDD_RECADO' : int.parse(messageDDDController.text),
|
'DDD_RECADO' : messageDDDController.text.isNotEmpty?int.parse(messageDDDController.text):0,
|
||||||
'NUM_RECADO' : int.parse(messageController.text),
|
'NUM_RECADO' : messageController.text.isNotEmpty?int.parse(messageController.text):0,
|
||||||
'EMAIL' : emailController.text,
|
'EMAIL' : emailController.text,
|
||||||
'OBSERVACOES' : observationController.text,
|
'OBSERVACOES' : observationController.text,
|
||||||
'CPF' : int.parse(CPFController.text),
|
'CPF' : CPFController.text.isNotEmpty?int.parse(CPFController.text):0,
|
||||||
'CNS' : checkCNS == 'ok'&& CNSController.text.isNotEmpty?int.parse(CNSController.text):999999999999999,
|
'CNS' : checkCNS == 'ok'&& CNSController.text.isNotEmpty?int.parse(CNSController.text):999999999999999,
|
||||||
'TITULO_ELEITOR' : voterController.text,
|
'TITULO_ELEITOR' : voterController.text,
|
||||||
'RG_NUMERO' : int.parse(RGController.text),
|
'RG_NUMERO' : RGController.text.isNotEmpty?int.parse(RGController.text):0,
|
||||||
'RG_COMPLEMENTO' : RGComplementController.text,
|
'RG_COMPLEMENTO' : RGComplementController.text,
|
||||||
'RG_UF' : selectRGUF,
|
'RG_UF' : selectRGUF,
|
||||||
'RG_ORGAO' : RGOrganController.text,
|
'RG_ORGAO' : RGOrganController.text,
|
||||||
@@ -412,15 +425,15 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
'FOLHA_CERTIDAO' : sheetCertificateController.text,
|
'FOLHA_CERTIDAO' : sheetCertificateController.text,
|
||||||
'TERMO_CERTIDAO' : termCertificateController.text,
|
'TERMO_CERTIDAO' : termCertificateController.text,
|
||||||
'DT_EMISSAO_CERTIDAO' : dateCertificateController.text,
|
'DT_EMISSAO_CERTIDAO' : dateCertificateController.text,
|
||||||
'NUM_CTPS' : int.parse(CTPSController.text),
|
'NUM_CTPS' : CTPSController.text.isNotEmpty?int.parse(CTPSController.text):0,
|
||||||
'NUM_SERIE_CTPS' : int.parse(numberCTPSController.text),
|
'NUM_SERIE_CTPS' : numberCTPSController.text.isNotEmpty?int.parse(numberCTPSController.text):0,
|
||||||
'ESTADO_UF_CTPS' : selectCTPSUF,
|
'ESTADO_UF_CTPS' : selectCTPSUF,
|
||||||
'NUM_PIS_PASEP' : int.parse(PISController.text),
|
'NUM_PIS_PASEP' : PISController.text.isNotEmpty?int.parse(PISController.text):0,
|
||||||
'FL_RETIROU_CARTAO' : enableCityCard?'S':'N',
|
'FL_RETIROU_CARTAO' : enableCityCard?'S':'N',
|
||||||
'NUM_NIS' : int.parse(NISController.text),
|
'NUM_NIS' : NISController.text.isNotEmpty?int.parse(NISController.text):0,
|
||||||
//aqui
|
//aqui
|
||||||
'NUM_PROT_CROSS' : '',
|
'NUM_PROT_CROSS' : '',
|
||||||
'RENDA_MENSAL' : incomeController.text,
|
'RENDA_MENSAL' : incomeController.text.isNotEmpty?double.parse(incomeController.text.replaceAll('R\$ ', '').replaceAll('.', '').replaceAll(',', '.')):0,
|
||||||
'PROFISSAO' : professionalController.text,
|
'PROFISSAO' : professionalController.text,
|
||||||
'DT_OBITO' : dateDeathController.text,
|
'DT_OBITO' : dateDeathController.text,
|
||||||
'DECLARACAO_OBITO' : '',
|
'DECLARACAO_OBITO' : '',
|
||||||
@@ -435,7 +448,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
'ATENDIMENTOS' : '',
|
'ATENDIMENTOS' : '',
|
||||||
'SINCRONIZADO' : 'N',
|
'SINCRONIZADO' : 'N',
|
||||||
};
|
};
|
||||||
await DbSqliteSync().insertCidadaos(row,'update').then((value){
|
await DbSqliteSync().insertCidadaos(row,editing?'update':'new',codSus).then((value){
|
||||||
if(checkCNS != 'ok' || CNSController.text.isEmpty){
|
if(checkCNS != 'ok' || CNSController.text.isEmpty){
|
||||||
AlertDialogDefault().alert(
|
AlertDialogDefault().alert(
|
||||||
context,
|
context,
|
||||||
@@ -454,6 +467,8 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
AlertDialogDefault().alert(
|
AlertDialogDefault().alert(
|
||||||
context,
|
context,
|
||||||
'Aviso',
|
'Aviso',
|
||||||
|
editing?
|
||||||
|
'Cidadão alterado com sucesso!':
|
||||||
'Cidadão cadastrado com sucesso!',
|
'Cidadão cadastrado com sucesso!',
|
||||||
'OK'
|
'OK'
|
||||||
);
|
);
|
||||||
@@ -485,6 +500,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
getData()async{
|
getData()async{
|
||||||
// print('passou');
|
// print('passou');
|
||||||
// print(widget.listData);
|
// print(widget.listData);
|
||||||
|
idCidadao = widget.listData[0]['ID_CIDADAO'];
|
||||||
codSus = widget.listData[0]['CD_USUARIO_SUS'];
|
codSus = widget.listData[0]['CD_USUARIO_SUS'];
|
||||||
nameController.text = widget.listData[0]['NOME_CIDADAO'];
|
nameController.text = widget.listData[0]['NOME_CIDADAO'];
|
||||||
nameSocialController.text = widget.listData[0]['NOME_SOCIAL'];
|
nameSocialController.text = widget.listData[0]['NOME_SOCIAL'];
|
||||||
@@ -568,11 +584,14 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
selectStreet = widget.listData[0]['NOME_LOGR'];
|
selectStreet = widget.listData[0]['NOME_LOGR'];
|
||||||
List listTypeStreet = await DBQuerys().buscaTipoLogradouroPorId(idTipo);
|
List listTypeStreet = await DBQuerys().buscaTipoLogradouroPorId(idTipo);
|
||||||
selectTypeStreet = listTypeStreet[0]['NO_LOGR_TIPO'];
|
selectTypeStreet = listTypeStreet[0]['NO_LOGR_TIPO'];
|
||||||
cepController.text = listTypeStreet[0]['CEP_LOGR']??'';
|
cepController.text = widget.listData[0]['CEP_LOGR'].toString()=='null'?'': widget.listData[0]['CEP_LOGR'].toString();
|
||||||
numberController.text = listTypeStreet[0]['NUMERO_LOGR']??'';
|
numberController.text = widget.listData[0]['NUMERO_LOGR'].toString()??'';
|
||||||
selectSubdivision = listTypeStreet[0]['LOTEAMENTO_LOGR'];
|
print('numberController');
|
||||||
subdivisionDB.add(selectSubdivision!);
|
print(numberController.text);
|
||||||
//aqui
|
selectSubdivision = listTypeStreet[0]['LOTEAMENTO_LOGR']??null;
|
||||||
|
if(selectSubdivision!=null){
|
||||||
|
subdivisionDB.add(selectSubdivision!);
|
||||||
|
}
|
||||||
complementController.text = listTypeStreet[0]['COMPL_LOGR']??'';
|
complementController.text = listTypeStreet[0]['COMPL_LOGR']??'';
|
||||||
referencePointController.text = listTypeStreet[0]['PONTO_REFERENCIA']??'';
|
referencePointController.text = listTypeStreet[0]['PONTO_REFERENCIA']??'';
|
||||||
selectZoneCod = widget.listData[0]['ZONA_LOGR'];
|
selectZoneCod = widget.listData[0]['ZONA_LOGR'];
|
||||||
@@ -592,7 +611,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
observationController.text = widget.listData[0]['OBSERVACOES'];
|
observationController.text = widget.listData[0]['OBSERVACOES'];
|
||||||
CPFController.text = widget.listData[0]['CPF'].toString();
|
CPFController.text = widget.listData[0]['CPF'].toString();
|
||||||
CNSController.text = widget.listData[0]['CNS'];
|
CNSController.text = widget.listData[0]['CNS'];
|
||||||
voterController.text = widget.listData[0]['TITULO_ELEITOR']??'';
|
voterController.text = widget.listData[0]['TITULO_ELEITOR'].toString()??'';
|
||||||
RGController.text = widget.listData[0]['RG_NUMERO'].toString()=='null'?'':widget.listData[0]['RG_NUMERO'].toString();
|
RGController.text = widget.listData[0]['RG_NUMERO'].toString()=='null'?'':widget.listData[0]['RG_NUMERO'].toString();
|
||||||
RGComplementController.text = widget.listData[0]['RG_COMPLEMENTO'].toString();
|
RGComplementController.text = widget.listData[0]['RG_COMPLEMENTO'].toString();
|
||||||
selectRGUF = widget.listData[0]['RG_UF']??'';
|
selectRGUF = widget.listData[0]['RG_UF']??'';
|
||||||
@@ -611,13 +630,13 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
sheetCertificateController.text = widget.listData[0]['FOLHA_CERTIDAO']??'';
|
sheetCertificateController.text = widget.listData[0]['FOLHA_CERTIDAO']??'';
|
||||||
termCertificateController.text = widget.listData[0]['TERMO_CERTIDAO']??'';
|
termCertificateController.text = widget.listData[0]['TERMO_CERTIDAO']??'';
|
||||||
dateCertificateController.text = widget.listData[0]['DT_EMISSAO_CERTIDAO']??'';
|
dateCertificateController.text = widget.listData[0]['DT_EMISSAO_CERTIDAO']??'';
|
||||||
CTPSController.text = widget.listData[0]['NUM_CTPS'].toString()??'';
|
CTPSController.text = widget.listData[0]['NUM_CTPS'].toString()=='null'?'':widget.listData[0]['NUM_CTPS'].toString();
|
||||||
numberCTPSController.text = widget.listData[0]['NUM_SERIE_CTPS'].toString()??'';
|
numberCTPSController.text = widget.listData[0]['NUM_SERIE_CTPS'].toString()=='null'?'':widget.listData[0]['NUM_SERIE_CTPS'].toString();
|
||||||
selectCTPSUF = widget.listData[0]['ESTADO_UF_CTPS'];
|
selectCTPSUF = widget.listData[0]['ESTADO_UF_CTPS'];
|
||||||
PISController.text = widget.listData[0]['NUM_PIS_PASEP'].toString()??'';
|
PISController.text = widget.listData[0]['NUM_PIS_PASEP'].toString()=='null'?'':widget.listData[0]['NUM_PIS_PASEP'].toString();
|
||||||
enableCityCard = widget.listData[0]['FL_RETIROU_CARTAO'] == 'S'?true:false;
|
enableCityCard = widget.listData[0]['FL_RETIROU_CARTAO'] == 'S'?true:false;
|
||||||
NISController.text = widget.listData[0]['NUM_NIS'].toString()??'';
|
NISController.text = widget.listData[0]['NUM_NIS'].toString()??'';
|
||||||
incomeController.text = widget.listData[0]['RENDA_MENSAL']==null?'R\$ 0,00':widget.listData[0]['RENDA_MENSAL'];
|
incomeController.text = widget.listData[0]['RENDA_MENSAL']==null?'R\$ 0,00':'R\$ ${widget.listData[0]['RENDA_MENSAL'].toString().replaceAll('.', ',')}';
|
||||||
professionalController.text = widget.listData[0]['PROFISSAO']??'';
|
professionalController.text = widget.listData[0]['PROFISSAO']??'';
|
||||||
dateDeathController.text = widget.listData[0]['DT_OBITO']==null?'Data Óbito':widget.listData[0]['DT_OBITO'];
|
dateDeathController.text = widget.listData[0]['DT_OBITO']==null?'Data Óbito':widget.listData[0]['DT_OBITO'];
|
||||||
enableBlocked = widget.listData[0]['BLOQUEIO']==1?true:false;
|
enableBlocked = widget.listData[0]['BLOQUEIO']==1?true:false;
|
||||||
@@ -681,6 +700,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
onPressed: (){
|
onPressed: (){
|
||||||
setState(() {
|
setState(() {
|
||||||
edit = false;
|
edit = false;
|
||||||
|
editing = true;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
title: 'Alterar',
|
title: 'Alterar',
|
||||||
@@ -1667,7 +1687,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
onChanged: (v)async{
|
onChanged: (v)async{
|
||||||
if(CPFController.text.isNotEmpty){
|
if(CPFController.text.isNotEmpty){
|
||||||
checkCPF = await MainControllers().validaCPF(v);
|
checkCPF = await MainControllers().validaCPF(v,editing);
|
||||||
}else{
|
}else{
|
||||||
checkCPF = 'ok';
|
checkCPF = 'ok';
|
||||||
}
|
}
|
||||||
@@ -1688,8 +1708,9 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
mandatory: false,
|
mandatory: false,
|
||||||
enabled: !edit,
|
enabled: !edit,
|
||||||
onChanged: (v)async{
|
onChanged: (v)async{
|
||||||
|
//783107557570002
|
||||||
if(CNSController.text.isNotEmpty){
|
if(CNSController.text.isNotEmpty){
|
||||||
checkCNS = await MainControllers().validaCNS(v);
|
checkCNS = await MainControllers().validaCNS(v,editing);
|
||||||
}else{
|
}else{
|
||||||
checkCNS = 'ok';
|
checkCNS = 'ok';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ class _SyncInitScreenState extends State<SyncInitScreen> {
|
|||||||
}else{
|
}else{
|
||||||
setState(()=> messageSteps = "Etapa 8 de 10 - Gravando os Cidadãos no Aplicativo");
|
setState(()=> messageSteps = "Etapa 8 de 10 - Gravando os Cidadãos no Aplicativo");
|
||||||
}
|
}
|
||||||
await DbSqliteSync().insertCidadaos(value,'sync').then((value)async{
|
await DbSqliteSync().insertCidadaos(value,'sync','').then((value)async{
|
||||||
await ApiDataSync().syncCadastrosDomiciliares(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea).then((value)async{
|
await ApiDataSync().syncCadastrosDomiciliares(urlAPI,mode,nameCityApi,user,idUnidade,area,microarea,foraArea).then((value)async{
|
||||||
if(value.length == 0){
|
if(value.length == 0){
|
||||||
setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros Domiciliares - Por favor, tente novamente!");
|
setState(()=> messageSteps = "ERRO: Erro para carregar os Cadastros Domiciliares - Por favor, tente novamente!");
|
||||||
|
|||||||
@@ -2,11 +2,24 @@ import 'dart:convert';
|
|||||||
import 'package:http/http.dart' as http;
|
import 'package:http/http.dart' as http;
|
||||||
|
|
||||||
class ApiDataPost{
|
class ApiDataPost{
|
||||||
Future sincronizacao(urlAPI,mode,nameCityApi)async{
|
Future sincronizacao(urlAPI,mode,nameCityApi,map)async{
|
||||||
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/sincronizacao
|
// http://192.168.0.42:8010/api/atb/desenvolvimento/corumbatai/sincronizacao
|
||||||
|
print(map);
|
||||||
final url = '${urlAPI}${mode}/${nameCityApi}/sincronizacao';
|
final url = '${urlAPI}${mode}/${nameCityApi}/sincronizacao';
|
||||||
final response = await http.post(Uri.parse(url));
|
await http.post(
|
||||||
final map = json.decode(response.body);
|
Uri.parse(url),
|
||||||
return map;
|
body: map,
|
||||||
|
).then((response){
|
||||||
|
print(response.body);
|
||||||
|
print(response.request);
|
||||||
|
print(response.statusCode);
|
||||||
|
if (response.statusCode == 200) {
|
||||||
|
print(response.body.toString());
|
||||||
|
return response;
|
||||||
|
}else{
|
||||||
|
print('error');
|
||||||
|
return 'error';
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -119,6 +119,13 @@ class DBQuerys{
|
|||||||
// print(list);
|
// print(list);
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
Future deleteCidadao()async{
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
var query = "DELETE FROM CIDADAOS WHERE CD_USUARIO_SUS = '872488F88D1B2DB54D55BC8BBA2FAD1B'";
|
||||||
|
await db.rawQuery(query);
|
||||||
|
// print(list);
|
||||||
|
return 'ok';
|
||||||
|
}
|
||||||
Future cadDomiciliares()async{
|
Future cadDomiciliares()async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
var query = "SELECT * FROM CIDADAO_DOMICILIO WHERE ORIGEM = 'A' AND SINCRONIZADO = 'N'";
|
var query = "SELECT * FROM CIDADAO_DOMICILIO WHERE ORIGEM = 'A' AND SINCRONIZADO = 'N'";
|
||||||
|
|||||||
@@ -119,7 +119,7 @@ class DbSqliteSync{
|
|||||||
}
|
}
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertCidadaos(var value,String type)async{
|
Future insertCidadaos(var value,String type,String CD_USUARIO_SUS)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
// CIDADAOS (ID_CIDADAO,CD_USUARIO_SUS,NOME_CIDADAO,NOME_SOCIAL,SEXO,DT_NASCIMENTO,ID_ESTADO_CIVIL,NOME_CONJUGE,NACIONALIDADE,ID_MUNICIPIO_NASC,NO_MUNICIPIO_NASC,ESTADO_UF_NASC
|
// CIDADAOS (ID_CIDADAO,CD_USUARIO_SUS,NOME_CIDADAO,NOME_SOCIAL,SEXO,DT_NASCIMENTO,ID_ESTADO_CIVIL,NOME_CONJUGE,NACIONALIDADE,ID_MUNICIPIO_NASC,NO_MUNICIPIO_NASC,ESTADO_UF_NASC
|
||||||
// ID_ETNIA,ID_ESCOLARIDADE,ID_DEFICIENCIA,NOME_MAE,DESCONHECE_MAE,NOME_PAI,DESCONHECE_PAI,ID_UNIDADE,NUM_PRONTUARIO,NUM_PRONTUARIO_PROV,CLASSIFICACAO,CLASSIFICACAO_SUB,
|
// ID_ETNIA,ID_ESCOLARIDADE,ID_DEFICIENCIA,NOME_MAE,DESCONHECE_MAE,NOME_PAI,DESCONHECE_PAI,ID_UNIDADE,NUM_PRONTUARIO,NUM_PRONTUARIO_PROV,CLASSIFICACAO,CLASSIFICACAO_SUB,
|
||||||
@@ -229,9 +229,11 @@ class DbSqliteSync{
|
|||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
||||||
// print(await db.query('CIDADAOS'));
|
// print(await db.query('CIDADAOS'));
|
||||||
}
|
}
|
||||||
}else{
|
}else if(type=='new'){
|
||||||
int id = await db.insert('CIDADAOS', value);
|
int id = await db.insert('CIDADAOS', value);
|
||||||
// print('novo id $id');
|
// print('novo id $id');
|
||||||
|
}else if(type=='update'){
|
||||||
|
await db.update('CIDADAOS', value,where: "CD_USUARIO_SUS = '$CD_USUARIO_SUS'");
|
||||||
}
|
}
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
@@ -411,7 +413,6 @@ class DbSqliteSync{
|
|||||||
'CRIANCAS_CRECHE' : value[i]['criancasCresce'],
|
'CRIANCAS_CRECHE' : value[i]['criancasCresce'],
|
||||||
'CRIANCAS_OUTRO' : value[i]['criancasOutro'],
|
'CRIANCAS_OUTRO' : value[i]['criancasOutro'],
|
||||||
'IDENTIDADE_GENERO' : value[i]['identidadeGenero'],
|
'IDENTIDADE_GENERO' : value[i]['identidadeGenero'],
|
||||||
|
|
||||||
};
|
};
|
||||||
int id = await db.insert('CADASTROS_INDIVIDUAIS', row);
|
int id = await db.insert('CADASTROS_INDIVIDUAIS', row);
|
||||||
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
// print('id increment $id PROCEDIMENTOS_SIGTAP_REGISTRO');
|
||||||
|
|||||||
Reference in New Issue
Block a user