ajustes do post e campos para o envio para a api
This commit is contained in:
@@ -44,7 +44,7 @@ android {
|
|||||||
applicationId = "com.ab.rkm.rkm"
|
applicationId = "com.ab.rkm.rkm"
|
||||||
// You can update the following values to match your application needs.
|
// You can update the following values to match your application needs.
|
||||||
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
|
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
|
||||||
minSdk = flutter.minSdkVersion
|
minSdk = 24
|
||||||
targetSdk = flutter.targetSdkVersion
|
targetSdk = flutter.targetSdkVersion
|
||||||
versionCode = flutterVersionCode.toInteger()
|
versionCode = flutterVersionCode.toInteger()
|
||||||
versionName = flutterVersionName
|
versionName = flutterVersionName
|
||||||
@@ -61,6 +61,16 @@ android {
|
|||||||
|
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
|
minifyEnabled true
|
||||||
|
shrinkResources false
|
||||||
|
lintOptions {
|
||||||
|
disable 'InvalidPackage'
|
||||||
|
disable "Instantiatable"
|
||||||
|
checkReleaseBuilds false
|
||||||
|
abortOnError false
|
||||||
|
|
||||||
|
}
|
||||||
|
signingConfig signingConfigs.debug
|
||||||
signingConfig signingConfigs.release
|
signingConfig signingConfigs.release
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -69,3 +79,6 @@ android {
|
|||||||
flutter {
|
flutter {
|
||||||
source = "../.."
|
source = "../.."
|
||||||
}
|
}
|
||||||
|
dependencies {
|
||||||
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
|
||||||
|
}
|
||||||
@@ -1,16 +1,41 @@
|
|||||||
allprojects {
|
buildscript {
|
||||||
|
ext.kotlin_version = '1.6.10'
|
||||||
repositories {
|
repositories {
|
||||||
google()
|
maven {
|
||||||
|
url 'https://maven.google.com/'
|
||||||
|
name 'Google'
|
||||||
|
}
|
||||||
|
maven {
|
||||||
|
url 'https://mvnrepository.com/artifact/com.android.tools.lint/lint-gradle-api'
|
||||||
|
}
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
classpath 'com.android.tools.build:gradle:7.1.2'
|
||||||
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
rootProject.buildDir = "../build"
|
allprojects {
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
url 'https://maven.google.com/'
|
||||||
|
name 'Google'
|
||||||
|
}
|
||||||
|
jcenter()
|
||||||
|
maven {
|
||||||
|
url 'https://mvnrepository.com/artifact/com.android.tools.lint/lint-gradle-api'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
rootProject.buildDir = '../build'
|
||||||
subprojects {
|
subprojects {
|
||||||
project.buildDir = "${rootProject.buildDir}/${project.name}"
|
project.buildDir = "${rootProject.buildDir}/${project.name}"
|
||||||
}
|
}
|
||||||
subprojects {
|
subprojects {
|
||||||
project.evaluationDependsOn(":app")
|
project.evaluationDependsOn(':app')
|
||||||
}
|
}
|
||||||
|
|
||||||
tasks.register("clean", Delete) {
|
tasks.register("clean", Delete) {
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
org.gradle.jvmargs=-Xmx4G -XX:+HeapDumpOnOutOfMemoryError
|
#org.gradle.jvmargs=-Xmx4G -XX:+HeapDumpOnOutOfMemoryError
|
||||||
|
org.gradle.jvmargs=-Xmx1536M
|
||||||
android.useAndroidX=true
|
android.useAndroidX=true
|
||||||
android.enableJetifier=true
|
android.enableJetifier=true
|
||||||
|
|||||||
@@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME
|
|||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.3-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:rkm/models/city_load_model.dart';
|
import 'package:rkm/models/city_load_model.dart';
|
||||||
import 'package:rkm/models/drop_down_data_model.dart';
|
import 'package:rkm/models/drop_down_data_model.dart';
|
||||||
|
import '../models/check_proced_sia_model.dart';
|
||||||
import '../models/pais_modelo.dart';
|
import '../models/pais_modelo.dart';
|
||||||
import 'color_palette.dart';
|
import 'color_palette.dart';
|
||||||
|
|
||||||
@@ -130,29 +131,52 @@ class ConstVariable{
|
|||||||
'USO DE TRAQUEOSTOMIA',
|
'USO DE TRAQUEOSTOMIA',
|
||||||
];
|
];
|
||||||
|
|
||||||
List serviceHomeCheckProclist = [
|
// List serviceHomeCheckProclist = [
|
||||||
'ACOMP.DE PACIENTE EM REABILITAÇÃO EM COMUNICAÇÃO ALTERNATIVA',
|
// 'ACOMP.DE PACIENTE EM REABILITAÇÃO EM COMUNICAÇÃO ALTERNATIVA',
|
||||||
'ENEMA',
|
// 'ADAPTAÇÃO AO USO DE ÓRTESE / PRÓTESE',
|
||||||
'ANTIBIOTICOTERAPIA PARENTERAL',
|
// 'ANTIBIOTICOTERAPIA PARENTERAL',
|
||||||
'OXIGENOTERAPIA',
|
// 'ATEND. FISIOTERAPÊUTICO PACIENTE C/ TRANST. RESP S/ COMPLICAÇÕES SISTÊMICAS',
|
||||||
'ATEND./ ACOMP. PACIENTE EM REABILITAÇÃO DO DESENVOLVIMENTO NEUROPSICOMOTOR',
|
// 'ATEND. MÉDICO COM FINALIDADE DE ATESTAR ÓBITO',
|
||||||
'RETIRADA DE PONTOS DE CIRURGIAS BÁSICAS',
|
// 'ATEND./ ACOMP. PACIENTE EM REABILITAÇÃO DO DESENVOLVIMENTO NEUROPSICOMOTOR',
|
||||||
'ATEND. FISIOTERAPÊUTICO PACIENTE C/ TRANST. RESP S/ COMPLICAÇÕES SISTÊMICAS',
|
// 'ATEND./ACOMP.EM REABILITAÇÃO NAS MÚLTIPLAS DEFICIÊNCIAS',
|
||||||
'SONDAGEM GÁSTRICA',
|
// 'CATETERISMO VESICAL DE ALÍVIO',
|
||||||
'ATEND. MÉDICO COM FINALIDADE DE ATESTAR ÓBITO',
|
// 'CATETERISMO VESICAL DE DEMORA',
|
||||||
'TERAPIA DE REIDRATAÇÃO ORAL',
|
// 'COLETA DE MATERIAL PARA EXAME LABORATORIAL',
|
||||||
'ATEND./ACOMP.EM REABILITAÇÃO NAS MÚLTIPLAS DEFICIÊNCIAS',
|
// 'CUIDADOS COM ESTOMAS',
|
||||||
'TERAPIA DE REIDRATAÇÃO PARENTERAL',
|
// 'CUIDADOS COM TRAQUEOSTOMIA',
|
||||||
'ADAPTAÇÃO AO USO DE ÓRTESE / PRÓTESE',
|
// 'ENEMA',
|
||||||
'REABILITAÇÃO DOMICILIAR',
|
// 'OXIGENOTERAPIA',
|
||||||
'CATETERISMO VESICAL DE ALÍVIO',
|
// 'REABILITAÇÃO DOMICILIAR',
|
||||||
'TERAPIA FONOAUDIOLÓGICA INDIVIDUAL',
|
// 'RETIRADA DE PONTOS DE CIRURGIAS BÁSICAS',
|
||||||
'CATETERISMO VESICAL DE DEMORA',
|
// 'SONDAGEM GÁSTRICA',
|
||||||
'TRATAMENTO DE TRAUMATISMOS DE LOCALIZAÇÃO ESPECIFICADA/NÃO ESPECIFICADA',
|
// 'TERAPIA DE REIDRATAÇÃO ORAL',
|
||||||
'COLETA DE MATERIAL PARA EXAME LABORATORIAL',
|
// 'TERAPIA DE REIDRATAÇÃO PARENTERAL',
|
||||||
'TRATAMENTO EM REABILITAÇÃO',
|
// 'TERAPIA FONOAUDIOLÓGICA INDIVIDUAL',
|
||||||
'CUIDADOS COM ESTOMAS',
|
// 'TRATAMENTO DE TRAUMATISMOS DE LOCALIZAÇÃO ESPECIFICADA/NÃO ESPECIFICADA',
|
||||||
'CUIDADOS COM TRAQUEOSTOMIA'
|
// 'TRATAMENTO EM REABILITAÇÃO',
|
||||||
|
// ];
|
||||||
|
|
||||||
|
List<CheckProcedSiaModel> serviceHomeCheckProclist = [
|
||||||
|
CheckProcedSiaModel(COD_SIA: 1, DESCRICAO_PROCEDIMENTO:'ACOMP.DE PACIENTE EM REABILITAÇÃO EM COMUNICAÇÃO ALTERNATIVA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 3, DESCRICAO_PROCEDIMENTO: 'ANTIBIOTICOTERAPIA PARENTERAL'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 7, DESCRICAO_PROCEDIMENTO:'ATEND. FISIOTERAPÊUTICO PACIENTE C/ TRANST. RESP S/ COMPLICAÇÕES SISTÊMICAS'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 9, DESCRICAO_PROCEDIMENTO:'ATEND. MÉDICO COM FINALIDADE DE ATESTAR ÓBITO'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 5, DESCRICAO_PROCEDIMENTO:'ATEND./ ACOMP. PACIENTE EM REABILITAÇÃO DO DESENVOLVIMENTO NEUROPSICOMOTOR'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 11, DESCRICAO_PROCEDIMENTO:'ATEND./ACOMP.EM REABILITAÇÃO NAS MÚLTIPLAS DEFICIÊNCIAS'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 13, DESCRICAO_PROCEDIMENTO:'CATETERISMO VESICAL DE ALÍVIO'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 15, DESCRICAO_PROCEDIMENTO:'CATETERISMO VESICAL DE DEMORA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 17, DESCRICAO_PROCEDIMENTO:'COLETA DE MATERIAL PARA EXAME LABORATORIAL'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 19, DESCRICAO_PROCEDIMENTO:'CUIDADOS COM ESTOMAS'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 20, DESCRICAO_PROCEDIMENTO:'CUIDADOS COM TRAQUEOSTOMIA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 2, DESCRICAO_PROCEDIMENTO: 'ENEMA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 4, DESCRICAO_PROCEDIMENTO:'OXIGENOTERAPIA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 6, DESCRICAO_PROCEDIMENTO:'RETIRADA DE PONTOS DE CIRURGIAS BÁSICAS'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 8, DESCRICAO_PROCEDIMENTO:'SONDAGEM GÁSTRICA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 10, DESCRICAO_PROCEDIMENTO:'TERAPIA DE REIDRATAÇÃO ORAL'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 12, DESCRICAO_PROCEDIMENTO:'TERAPIA DE REIDRATAÇÃO PARENTERAL'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 14, DESCRICAO_PROCEDIMENTO:'TERAPIA FONOAUDIOLÓGICA INDIVIDUAL'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 16, DESCRICAO_PROCEDIMENTO:'TRATAMENTO DE TRAUMATISMOS DE LOCALIZAÇÃO ESPECIFICADA/NÃO ESPECIFICADA'),
|
||||||
|
CheckProcedSiaModel(COD_SIA: 18, DESCRICAO_PROCEDIMENTO:'TRATAMENTO EM REABILITAÇÃO'),
|
||||||
];
|
];
|
||||||
|
|
||||||
List<DropDownDataModel> listServicePlace = [
|
List<DropDownDataModel> listServicePlace = [
|
||||||
|
|||||||
11
lib/models/check_proced_sia_model.dart
Normal file
11
lib/models/check_proced_sia_model.dart
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
class CheckProcedSiaModel{
|
||||||
|
int COD_SIA;
|
||||||
|
String DESCRICAO_PROCEDIMENTO;
|
||||||
|
bool check;
|
||||||
|
|
||||||
|
CheckProcedSiaModel({
|
||||||
|
required this.COD_SIA,
|
||||||
|
required this.DESCRICAO_PROCEDIMENTO,
|
||||||
|
this.check = false,
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -23,10 +23,10 @@ class _AttendanceListScreenState extends State<AttendanceListScreen> {
|
|||||||
|
|
||||||
getData()async{
|
getData()async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
visitHome = await db.query('VISITAS_DOMICILIARES_PROC');
|
visitHome = await db.query('VISITAS_DOMICILIARES');
|
||||||
citizenUpdate = await db.query('CIDADAOS WHERE SINCRONIZADO = "N"');
|
citizenUpdate = await db.query('CIDADAOS WHERE SINCRONIZADO = "N"');
|
||||||
serviceHome =await db.query('ATENDS_DOM_PROC');
|
serviceHome =await db.query('ATENDIMENTOS_DOMICILIARES');
|
||||||
print(await db.query('ATENDS_DOM_PROC'));
|
print(await db.query('ATENDIMENTOS_DOMICILIARES'));
|
||||||
// print(await db.query('VISITAS_DOMICILIARES_PROC'));
|
// print(await db.query('VISITAS_DOMICILIARES_PROC'));
|
||||||
// print(await db.query('CIDADAOS WHERE SINCRONIZADO = "N"'));
|
// print(await db.query('CIDADAOS WHERE SINCRONIZADO = "N"'));
|
||||||
print(citizenUpdate.length);
|
print(citizenUpdate.length);
|
||||||
|
|||||||
@@ -65,14 +65,25 @@ class _SyncDataScreenState extends State<SyncDataScreen> {
|
|||||||
});
|
});
|
||||||
await DBQuerys().cadCidadaos().then((response)async{
|
await DBQuerys().cadCidadaos().then((response)async{
|
||||||
tableCIDADAOS = response;
|
tableCIDADAOS = response;
|
||||||
|
// print(list);
|
||||||
|
// tableCIDADAOS[0].forEach((key, value) {
|
||||||
|
// print('$key: $value');
|
||||||
|
// });
|
||||||
await DBQuerys().cadDomiciliares().then((response)async{
|
await DBQuerys().cadDomiciliares().then((response)async{
|
||||||
tableCIDADAO_DOMICILIO = response;
|
tableCIDADAO_DOMICILIO = response;
|
||||||
|
// tableCIDADAO_DOMICILIO[0].forEach((key, value) {
|
||||||
|
// print('$key: $value');
|
||||||
|
// });
|
||||||
|
|
||||||
|
// print('tableCIDADAO_DOMICILIO');
|
||||||
// print(tableCIDADAO_DOMICILIO);
|
// print(tableCIDADAO_DOMICILIO);
|
||||||
await DBQuerys().domCidadaos().then((response)async{
|
await DBQuerys().domCidadaos().then((response)async{
|
||||||
tableDOMICILIOS_CIDADAOS = response;
|
tableDOMICILIOS_CIDADAOS = response;
|
||||||
|
// print('tableDOMICILIOS_CIDADAOS');
|
||||||
// print(tableDOMICILIOS_CIDADAOS);
|
// print(tableDOMICILIOS_CIDADAOS);
|
||||||
await DBQuerys().logrDomicilios().then((response)async{
|
await DBQuerys().logrDomicilios().then((response)async{
|
||||||
tableINNERJOINCIDADAO_DOMICILIO = response;
|
tableINNERJOINCIDADAO_DOMICILIO = response;
|
||||||
|
// print('tableINNERJOINCIDADAO_DOMICILIO');
|
||||||
// print(tableINNERJOINCIDADAO_DOMICILIO);
|
// print(tableINNERJOINCIDADAO_DOMICILIO);
|
||||||
await DBQuerys().cadIndividuais().then((response)async{
|
await DBQuerys().cadIndividuais().then((response)async{
|
||||||
tableCADASTROS_INDIVIDUAIS = response;
|
tableCADASTROS_INDIVIDUAIS = response;
|
||||||
@@ -242,6 +253,9 @@ class _SyncDataScreenState extends State<SyncDataScreen> {
|
|||||||
// print(map['cad_individuais'][0]['ID_AREA_CIDADAO']);
|
// print(map['cad_individuais'][0]['ID_AREA_CIDADAO']);
|
||||||
// print(map['cad_individuais'][0]['ID_MICROAREA_CIDADAO']);
|
// print(map['cad_individuais'][0]['ID_MICROAREA_CIDADAO']);
|
||||||
|
|
||||||
|
print('tableATENDS_DOM_PROC');
|
||||||
|
print(tableATENDS_DOM_PROC);
|
||||||
|
|
||||||
await ApiDataPost().sincronizacao(urlAPI, mode, nameCityApi,map).then((response)async{
|
await ApiDataPost().sincronizacao(urlAPI, mode, nameCityApi,map).then((response)async{
|
||||||
if(response=='error'){
|
if(response=='error'){
|
||||||
setState(() {
|
setState(() {
|
||||||
|
|||||||
@@ -424,7 +424,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
|
|||||||
'NO_MUNICIPIO_NASC' : resultListNasc[0]['NO_MUNICIPIO'],
|
'NO_MUNICIPIO_NASC' : resultListNasc[0]['NO_MUNICIPIO'],
|
||||||
'ESTADO_UF_NASC' : resultListNasc[0]['UF_ESTADO'],
|
'ESTADO_UF_NASC' : resultListNasc[0]['UF_ESTADO'],
|
||||||
'ID_ETNIA' : selectBreedCod,
|
'ID_ETNIA' : selectBreedCod,
|
||||||
'ID_ETNIA_INDIGENA' : selectEtniaIndigena!.cod.toString().trim(),
|
'ID_ETNIA_INDIGENA' : selectEtniaIndigena==null?0:selectEtniaIndigena!.cod.toString().trim(),
|
||||||
'ID_ESCOLARIDADE' : selectScoolingCod,
|
'ID_ESCOLARIDADE' : selectScoolingCod,
|
||||||
'ID_DEFICIENCIA' : selectDeficiencyCod,
|
'ID_DEFICIENCIA' : selectDeficiencyCod,
|
||||||
'NOME_MAE' : nameMotherController.text,
|
'NOME_MAE' : nameMotherController.text,
|
||||||
|
|||||||
@@ -72,6 +72,7 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
List<String> listSanitary = [];
|
List<String> listSanitary = [];
|
||||||
List<String> listCBO = [];
|
List<String> listCBO = [];
|
||||||
List<String> listINEPROF = [];
|
List<String> listINEPROF = [];
|
||||||
|
List listaINE = [];
|
||||||
|
|
||||||
int idUsuario = 0;
|
int idUsuario = 0;
|
||||||
String idUnidade = '';
|
String idUnidade = '';
|
||||||
@@ -228,10 +229,13 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
TIPO_IMOVEL = ConstVariable().listTypeHome[i].title;
|
TIPO_IMOVEL = ConstVariable().listTypeHome[i].title;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
listaINE = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
||||||
ID_AREA_DOMICILIO = list[0]['AREA'];
|
print('lista');
|
||||||
ID_MICROAREA_DOMICILIO = list[0]['MICROAREA'];
|
print(listaINE);
|
||||||
INE_DB = list[0]['INE'];
|
ID_AREA_DOMICILIO = listaINE[0]['AREA'];
|
||||||
|
ID_MICROAREA_DOMICILIO = listaINE[0]['MICROAREA'];
|
||||||
|
ID_EQUIPE = listaINE[0]['ID_EQUIPE'];
|
||||||
|
INE_DB = listaINE[0]['INE'];
|
||||||
INE = 'INE: $INE_DB / Área: $ID_AREA_DOMICILIO - Microárea : $ID_MICROAREA_DOMICILIO';
|
INE = 'INE: $INE_DB / Área: $ID_AREA_DOMICILIO - Microárea : $ID_MICROAREA_DOMICILIO';
|
||||||
listINE.add(INE!);
|
listINE.add(INE!);
|
||||||
FORA_AREA = dataHome.length==0?false:dataHome[0]['FORA_AREA']==1?true:false;
|
FORA_AREA = dataHome.length==0?false:dataHome[0]['FORA_AREA']==1?true:false;
|
||||||
@@ -378,6 +382,20 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
'SINCRONIZADO' : 'N',
|
'SINCRONIZADO' : 'N',
|
||||||
};
|
};
|
||||||
|
|
||||||
|
RegExp regex = RegExp(r'INE:\s*(\d+)');
|
||||||
|
String? ineNumber = regex.firstMatch(INE!)?.group(1);
|
||||||
|
int ID_UNIDADE = 0;
|
||||||
|
for (int i = 0; listaINE.length > i; i++) {
|
||||||
|
if (listaINE[i]['INE'] == ineNumber) {
|
||||||
|
ID_EQUIPE = listaINE[i]['ID_EQUIPE'];
|
||||||
|
INE_DB = listaINE[i]['INE'];
|
||||||
|
ID_UNIDADE = listaINE[i]['ID_UNIDADE'];
|
||||||
|
print(listaINE[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var CNES_UNIDADE = await DBQuerys().cnesUnidade(ID_UNIDADE);
|
||||||
|
|
||||||
Map<String, dynamic> rowHome = {
|
Map<String, dynamic> rowHome = {
|
||||||
'TIPO_IMOVEL' : TIPO_IMOVEL_COD,
|
'TIPO_IMOVEL' : TIPO_IMOVEL_COD,
|
||||||
'ID_AREA_DOMICILIO' : ID_AREA_DOMICILIO,
|
'ID_AREA_DOMICILIO' : ID_AREA_DOMICILIO,
|
||||||
@@ -387,7 +405,7 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
'TIPO_LOCALIDADE' : TIPO_LOCALIDADE_COD,
|
'TIPO_LOCALIDADE' : TIPO_LOCALIDADE_COD,
|
||||||
'TIPO_DOMICILIO' : TIPO_DOMICILIO_COD,
|
'TIPO_DOMICILIO' : TIPO_DOMICILIO_COD,
|
||||||
'NUM_MORADORES' : int.parse(NUM_MORADORES.text),
|
'NUM_MORADORES' : int.parse(NUM_MORADORES.text),
|
||||||
'NUM_COMODOS' : int.parse(NUM_COMODOS.text),
|
'NUM_COMODOS' : NUM_COMODOS.text.isEmpty?0:int.parse(NUM_COMODOS.text),
|
||||||
'SITUACAO_RURAL' : SITUACAO_RURAL_COD,
|
'SITUACAO_RURAL' : SITUACAO_RURAL_COD,
|
||||||
'TIPO_ACESSO' : TIPO_ACESSO_COD,
|
'TIPO_ACESSO' : TIPO_ACESSO_COD,
|
||||||
'MAT_PREDOMINANTE' : MAT_PREDOMINANTE_COD,
|
'MAT_PREDOMINANTE' : MAT_PREDOMINANTE_COD,
|
||||||
@@ -404,8 +422,8 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
'QTDE_ANIMAIS' : QTDE_ANIMAIS.text.isEmpty?0:int.parse(QTDE_ANIMAIS.text),
|
'QTDE_ANIMAIS' : QTDE_ANIMAIS.text.isEmpty?0:int.parse(QTDE_ANIMAIS.text),
|
||||||
'CBO_RESP_CADASTRO' : CBO_RESP_CADASTRO,
|
'CBO_RESP_CADASTRO' : CBO_RESP_CADASTRO,
|
||||||
'ID_RESP_CADASTRO' : ID_RESP_CADASTRO,
|
'ID_RESP_CADASTRO' : ID_RESP_CADASTRO,
|
||||||
'CNES_RESP_CADASTRO' : CNES_RESP_CADASTRO.text,
|
'CNES_RESP_CADASTRO' : CNES_UNIDADE,
|
||||||
'INE_RESP_CADASTRO' : INE,
|
'INE_RESP_CADASTRO' : INE_DB,
|
||||||
'DT_CADASTRO' : date_cad,
|
'DT_CADASTRO' : date_cad,
|
||||||
'ID_EQUIPE' : ID_EQUIPE,
|
'ID_EQUIPE' : ID_EQUIPE,
|
||||||
'ORIGEM' : 'A',
|
'ORIGEM' : 'A',
|
||||||
@@ -416,6 +434,7 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
'CARGO_RESP_TECNICO_INST' : CARGO_RESP_TECNICO_INST,
|
'CARGO_RESP_TECNICO_INST' : CARGO_RESP_TECNICO_INST,
|
||||||
'TEL_RESP_TECNICO_INST' : TEL_RESP_TECNICO_INST,
|
'TEL_RESP_TECNICO_INST' : TEL_RESP_TECNICO_INST,
|
||||||
};
|
};
|
||||||
|
|
||||||
await DbSqliteSync().insertCadastrosDomiciliares(rowHome,TIPO_SALVAR,ID_DOMICILIO,ID_CIDADAO,CD_USUARIO_SUS).then((value)async{
|
await DbSqliteSync().insertCadastrosDomiciliares(rowHome,TIPO_SALVAR,ID_DOMICILIO,ID_CIDADAO,CD_USUARIO_SUS).then((value)async{
|
||||||
await DbSqliteSync().insertCidadaos(rowCitizen,editing?'update':'new',widget.listData[0]['CD_USUARIO_SUS']).then((value){
|
await DbSqliteSync().insertCidadaos(rowCitizen,editing?'update':'new',widget.listData[0]['CD_USUARIO_SUS']).then((value){
|
||||||
AlertDialogDefault().alert(
|
AlertDialogDefault().alert(
|
||||||
@@ -548,7 +567,23 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
select: INE,
|
select: INE,
|
||||||
widthDropdown: width*0.7,
|
widthDropdown: width*0.7,
|
||||||
widthContainerDropdown: width*0.6,
|
widthContainerDropdown: width*0.6,
|
||||||
onChanged: !editing?null: (value)=>setState(()=>INE = value!),
|
onChanged: !editing?null: (value){
|
||||||
|
|
||||||
|
print(value);
|
||||||
|
setState(()=>INE = value!);
|
||||||
|
|
||||||
|
RegExp regex = RegExp(r'INE:\s*(\d+)');
|
||||||
|
String? ineNumber = regex.firstMatch(value)?.group(1);
|
||||||
|
for (int i = 0; listaINE.length > i; i++) {
|
||||||
|
if (listaINE[i]['INE'] == ineNumber) {
|
||||||
|
ID_EQUIPE = listaINE[i]['ID_EQUIPE'];
|
||||||
|
INE_DB = listaINE[i]['INE'];
|
||||||
|
// SITUACAO_MORADIA_COD = ConstVariable().listSituationHome[i].cod;
|
||||||
|
print('ID_EQUIPE $ID_EQUIPE');
|
||||||
|
print('INE_DB $INE_DB');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
),
|
),
|
||||||
SwitchWithSubtitle(
|
SwitchWithSubtitle(
|
||||||
width: width*0.7,
|
width: width*0.7,
|
||||||
@@ -571,9 +606,12 @@ class _RegisterHomeScreenState extends State<RegisterHomeScreen> {
|
|||||||
widthContainerDropdown: width*0.6,
|
widthContainerDropdown: width*0.6,
|
||||||
onChanged:!editing?null: (value){
|
onChanged:!editing?null: (value){
|
||||||
setState(()=>SITUACAO_MORADIA = value!);
|
setState(()=>SITUACAO_MORADIA = value!);
|
||||||
|
print('modou para $SITUACAO_MORADIA_COD');
|
||||||
|
print('modou para $SITUACAO_MORADIA');
|
||||||
for (int i = 0; ConstVariable().listSituationHome.length > i; i++) {
|
for (int i = 0; ConstVariable().listSituationHome.length > i; i++) {
|
||||||
if (ConstVariable().listSituationHome[i].title == TIPO_IMOVEL) {
|
if (ConstVariable().listSituationHome[i].title == SITUACAO_MORADIA) {
|
||||||
SITUACAO_MORADIA_COD = ConstVariable().listSituationHome[i].cod;
|
SITUACAO_MORADIA_COD = ConstVariable().listSituationHome[i].cod;
|
||||||
|
print('modou para dentro do for $SITUACAO_MORADIA_COD');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import 'package:rkm/widgets/alert_dialog_default.dart';
|
|||||||
import 'package:rkm/widgets/appbar_default.dart';
|
import 'package:rkm/widgets/appbar_default.dart';
|
||||||
import 'package:sqflite/sqflite.dart';
|
import 'package:sqflite/sqflite.dart';
|
||||||
import '../../config/const_variable.dart';
|
import '../../config/const_variable.dart';
|
||||||
|
import '../../models/check_proced_sia_model.dart';
|
||||||
import '../../models/drop_down_data_string_model.dart';
|
import '../../models/drop_down_data_string_model.dart';
|
||||||
import '../../service/api/api_data_import_sigtap.dart';
|
import '../../service/api/api_data_import_sigtap.dart';
|
||||||
import '../../service/db/db_querys.dart';
|
import '../../service/db/db_querys.dart';
|
||||||
@@ -63,6 +64,7 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
String CID_COD='';
|
String CID_COD='';
|
||||||
|
|
||||||
String? CBO_PROFISSIONAL;
|
String? CBO_PROFISSIONAL;
|
||||||
|
String? CBO_PROFISSIONAL_DB;
|
||||||
String? CIAP;
|
String? CIAP;
|
||||||
String? CID;
|
String? CID;
|
||||||
String? CBO_RESP_CADASTRO;
|
String? CBO_RESP_CADASTRO;
|
||||||
@@ -74,7 +76,7 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
String? CONDUTA;
|
String? CONDUTA;
|
||||||
|
|
||||||
List<CheckModel> serviceHomeModel = [];
|
List<CheckModel> serviceHomeModel = [];
|
||||||
List<CheckModel> serviceProcModel = [];
|
List<CheckProcedSiaModel> serviceProcModel = [];
|
||||||
List <String>listCBO = [];
|
List <String>listCBO = [];
|
||||||
List <String>listServicePlace = [];
|
List <String>listServicePlace = [];
|
||||||
List <String>typeService = [];
|
List <String>typeService = [];
|
||||||
@@ -87,6 +89,7 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
List<String> ATENDS_DOM_PROC = [];
|
List<String> ATENDS_DOM_PROC = [];
|
||||||
List<String> listConduct = [];
|
List<String> listConduct = [];
|
||||||
List listProc = [];
|
List listProc = [];
|
||||||
|
List CBOS_PROFISSIONAL=[];
|
||||||
|
|
||||||
bool CNS_VALIDO = false;
|
bool CNS_VALIDO = false;
|
||||||
bool mandatory = false;
|
bool mandatory = false;
|
||||||
@@ -243,7 +246,7 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
// adicionar depois e usar um usuário real
|
// adicionar depois e usar um usuário real
|
||||||
// CBO_RESP_CADASTRO
|
// CBO_RESP_CADASTRO
|
||||||
//ok
|
//ok
|
||||||
if(date.isEmpty || dateDB.isEmpty || LOCAL_ATENDIMENTO_COD==0 || TIPO_ATENDIMENTO_COD ==0 || MODALIDADE_COD == 0 || TURNO_COD == 0 || CBO_PROFISSIONAL == null
|
if(date.isEmpty || dateDB.isEmpty || LOCAL_ATENDIMENTO_COD==0 || TIPO_ATENDIMENTO_COD ==0 || MODALIDADE_COD == 0 || TURNO_COD == 0 || CBO_PROFISSIONAL == null || CONDUTA == null
|
||||||
){
|
){
|
||||||
print('erro');
|
print('erro');
|
||||||
setState(() {
|
setState(() {
|
||||||
@@ -265,7 +268,7 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
'ID_CIDADAO' : ID_CIDADAO,
|
'ID_CIDADAO' : ID_CIDADAO,
|
||||||
'CD_USUARIO_SUS' : CD_USUARIO_SUS,
|
'CD_USUARIO_SUS' : CD_USUARIO_SUS,
|
||||||
'ID_PROFISSIONAL' : idUsuario,
|
'ID_PROFISSIONAL' : idUsuario,
|
||||||
'CBO_PROFISSIONAL' : CBO_PROFISSIONAL,
|
'CBO_PROFISSIONAL' : CBO_PROFISSIONAL_DB,
|
||||||
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
|
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
|
||||||
'CNES_UNIDADE' : CNES_UNIDADE.text,
|
'CNES_UNIDADE' : CNES_UNIDADE.text,
|
||||||
'ID_UNIDADE' : int.parse(idUnidade),
|
'ID_UNIDADE' : int.parse(idUnidade),
|
||||||
@@ -288,7 +291,7 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
}
|
}
|
||||||
for(int i = 0;serviceProcModel.length>i;i++){
|
for(int i = 0;serviceProcModel.length>i;i++){
|
||||||
if(serviceProcModel[i].check){
|
if(serviceProcModel[i].check){
|
||||||
DbSqliteSync().insertProcedimentosDomiciliares(value,i+1);
|
DbSqliteSync().insertProcedimentosDomiciliares(value,serviceProcModel[i].COD_SIA);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
AlertDialogDefault().alert(
|
AlertDialogDefault().alert(
|
||||||
@@ -375,7 +378,7 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
onChanged: (v)=>setState((){}),
|
onChanged: (v)=>setState((){}),
|
||||||
),
|
),
|
||||||
DropdownWithSubtitle(
|
DropdownWithSubtitle(
|
||||||
list: PROCEDIMENTOS_SIGTAP,
|
list: listCBO,
|
||||||
widthSubtitle: width*0.7,
|
widthSubtitle: width*0.7,
|
||||||
subtitle: 'CBO',
|
subtitle: 'CBO',
|
||||||
hintDropdown: 'CBO',
|
hintDropdown: 'CBO',
|
||||||
@@ -385,6 +388,9 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
onChanged: (value){
|
onChanged: (value){
|
||||||
setState(() {
|
setState(() {
|
||||||
CBO_PROFISSIONAL = value!;
|
CBO_PROFISSIONAL = value!;
|
||||||
|
List list = CBO_PROFISSIONAL.toString().split(' - ');
|
||||||
|
CBO_PROFISSIONAL_DB = list.last;
|
||||||
|
print(CBO_PROFISSIONAL_DB);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
colorBorder: ColorPalette.white,
|
colorBorder: ColorPalette.white,
|
||||||
@@ -651,20 +657,25 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
itemCount: ConstVariable().serviceHomeCheckProclist.length,
|
itemCount: ConstVariable().serviceHomeCheckProclist.length,
|
||||||
itemBuilder: (context,index){
|
itemBuilder: (context,index){
|
||||||
|
|
||||||
List aux = ConstVariable().serviceHomeCheckProclist;
|
|
||||||
aux.sort();
|
|
||||||
|
|
||||||
serviceProcModel.add(
|
serviceProcModel.add(
|
||||||
CheckModel(
|
CheckProcedSiaModel(
|
||||||
subtitle: aux[index],
|
COD_SIA: ConstVariable().serviceHomeCheckProclist[index].COD_SIA,
|
||||||
check: false
|
DESCRICAO_PROCEDIMENTO: ConstVariable().serviceHomeCheckProclist[index].DESCRICAO_PROCEDIMENTO,
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// print(serviceProcModel[index].subtitle);
|
||||||
|
|
||||||
return CheckBoxSubtitle(
|
return CheckBoxSubtitle(
|
||||||
subtitle: serviceProcModel[index].subtitle,
|
subtitle: serviceProcModel[index].DESCRICAO_PROCEDIMENTO,
|
||||||
checkbox:serviceProcModel[index].check,
|
checkbox:serviceProcModel[index].check,
|
||||||
width: width*0.6,
|
width: width*0.6,
|
||||||
onChanged: (value)=>setState(()=>serviceProcModel[index].check=value),
|
onChanged: (value)=>setState((){
|
||||||
|
serviceProcModel[index].check=value;
|
||||||
|
print(serviceProcModel[index].COD_SIA);
|
||||||
|
print(serviceProcModel[index].DESCRICAO_PROCEDIMENTO);
|
||||||
|
print(serviceProcModel[index].check);
|
||||||
|
}),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
),
|
),
|
||||||
@@ -699,7 +710,7 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
IconButton(
|
IconButton(
|
||||||
icon: Icon(Icons.add_circle,color: ColorPalette.blackButton),
|
icon: Icon(Icons.add_circle,color: ColorPalette.blackButton),
|
||||||
onPressed: (){
|
onPressed: (){
|
||||||
AlertDialogDefault().otherProc(context, 'Outros Procedimentos', 'Adicionar Procedimento', CBO_PROFISSIONAL, CBO_PROFISSIONAL, 'add',listCBO,listProc);
|
AlertDialogDefault().otherProc(context, 'Outros Procedimentos', 'Adicionar Procedimento', CBO_PROFISSIONAL, CBO_PROFISSIONAL, 'add',PROCEDIMENTOS_SIGTAP,listProc);
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
@@ -726,37 +737,42 @@ class _AtendimentoDomiciliarTelaState extends State<AtendimentoDomiciliarTela> {
|
|||||||
),
|
),
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 5.0),
|
padding: const EdgeInsets.symmetric(horizontal: 5.0),
|
||||||
child: Container(
|
child: Column(
|
||||||
width: width*0.7,
|
children: [
|
||||||
child: Row(
|
Container(
|
||||||
children: [
|
width: width*0.7,
|
||||||
TextDefault(text: 'Conduta / Desfecho',fontSize: 15),
|
child: Row(
|
||||||
Spacer(),
|
children: [
|
||||||
DropdownWithSubtitle(
|
TextDefault(text: 'Conduta / Desfecho',fontSize: 15),
|
||||||
colorBorder: ColorPalette.white,
|
Spacer(),
|
||||||
list: listConduct,
|
DropdownWithSubtitle(
|
||||||
subtitle: 'SELECIONE',
|
colorBorder: ColorPalette.white,
|
||||||
select: CONDUTA,
|
list: listConduct,
|
||||||
widthDropdown: width*0.39,
|
subtitle: 'SELECIONE',
|
||||||
widthContainerDropdown: width*0.3,
|
select: CONDUTA,
|
||||||
widthSubtitle: width*0.3,
|
widthDropdown: width*0.39,
|
||||||
hintDropdown: 'SELECIONE',
|
widthContainerDropdown: width*0.3,
|
||||||
onChanged: (value){
|
widthSubtitle: width*0.3,
|
||||||
CONDUTA = value;
|
hintDropdown: 'SELECIONE',
|
||||||
for(int i = 0;ConstVariable().listConduct.length >i;i++){
|
onChanged: (value){
|
||||||
if(ConstVariable().listConduct[i].title == CONDUTA){
|
CONDUTA = value;
|
||||||
CONDUTA_COD = ConstVariable().listConduct[i].cod;
|
for(int i = 0;ConstVariable().listConduct.length >i;i++){
|
||||||
}
|
if(ConstVariable().listConduct[i].title == CONDUTA){
|
||||||
}
|
CONDUTA_COD = ConstVariable().listConduct[i].cod;
|
||||||
setState(() {});
|
}
|
||||||
},
|
}
|
||||||
)
|
setState(() {});
|
||||||
],
|
},
|
||||||
),
|
)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
CONDUTA_COD ==0 && mandatory?ErrorDefault():Container(),
|
||||||
|
],
|
||||||
)
|
)
|
||||||
)
|
),
|
||||||
]
|
]
|
||||||
)
|
),
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -67,6 +67,7 @@ class _VisitaDomiciliarTelaState extends State<VisitaDomiciliarTela> {
|
|||||||
int ID_PROFISSIONAL=0;
|
int ID_PROFISSIONAL=0;
|
||||||
int ID_CIDADAO=0;
|
int ID_CIDADAO=0;
|
||||||
int ID_EQUIPE=0;
|
int ID_EQUIPE=0;
|
||||||
|
String CBO_DB ='0';
|
||||||
|
|
||||||
String INE_PROFISSIONAL='';
|
String INE_PROFISSIONAL='';
|
||||||
String CD_USUARIO_SUS='';
|
String CD_USUARIO_SUS='';
|
||||||
@@ -84,6 +85,7 @@ class _VisitaDomiciliarTelaState extends State<VisitaDomiciliarTela> {
|
|||||||
List<CheckModel> tipoAcompanhamentoModel = [];
|
List<CheckModel> tipoAcompanhamentoModel = [];
|
||||||
List<CheckModel> outrosModel = [];
|
List<CheckModel> outrosModel = [];
|
||||||
List listProc = [];
|
List listProc = [];
|
||||||
|
List listProf = [];
|
||||||
|
|
||||||
escolherprazoInicio(BuildContext context) async {
|
escolherprazoInicio(BuildContext context) async {
|
||||||
var pickDate = await showDatePicker(
|
var pickDate = await showDatePicker(
|
||||||
@@ -187,7 +189,7 @@ class _VisitaDomiciliarTelaState extends State<VisitaDomiciliarTela> {
|
|||||||
// PROCEDIMENTOS_SIGTAP.add('${listSIGTAP[i]['COD_PROC_SIGTAP']} - ${listSIGTAP[i]['DESC_PROC_SIGTAP']}');
|
// PROCEDIMENTOS_SIGTAP.add('${listSIGTAP[i]['COD_PROC_SIGTAP']} - ${listSIGTAP[i]['DESC_PROC_SIGTAP']}');
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
List listProf = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
listProf = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
|
||||||
INE_PROFISSIONAL = listProf[0]['INE'];
|
INE_PROFISSIONAL = listProf[0]['INE'];
|
||||||
ID_EQUIPE = listProf[0]['ID_EQUIPE'];
|
ID_EQUIPE = listProf[0]['ID_EQUIPE'];
|
||||||
setState(() {});
|
setState(() {});
|
||||||
@@ -226,14 +228,6 @@ class _VisitaDomiciliarTelaState extends State<VisitaDomiciliarTela> {
|
|||||||
ok*/
|
ok*/
|
||||||
//salvar
|
//salvar
|
||||||
|
|
||||||
print('date $date');
|
|
||||||
print('dateDB $dateDB');
|
|
||||||
print('TIPO_IMOVEL_COD $TIPO_IMOVEL_COD');
|
|
||||||
print('DESFECHO_COD $DESFECHO_COD');
|
|
||||||
print('TURNO_COD $TURNO_COD');
|
|
||||||
print('CBO_PROFISSIONAL $CBO_PROFISSIONAL');
|
|
||||||
print('listProc $listProc');
|
|
||||||
|
|
||||||
if(date.isEmpty || dateDB.isEmpty || TIPO_IMOVEL_COD==0 || DESFECHO_COD ==0 || TURNO_COD == 0 || CBO_PROFISSIONAL == null
|
if(date.isEmpty || dateDB.isEmpty || TIPO_IMOVEL_COD==0 || DESFECHO_COD ==0 || TURNO_COD == 0 || CBO_PROFISSIONAL == null
|
||||||
){
|
){
|
||||||
print('erro principal');
|
print('erro principal');
|
||||||
@@ -246,86 +240,25 @@ class _VisitaDomiciliarTelaState extends State<VisitaDomiciliarTela> {
|
|||||||
mandatory = false;
|
mandatory = false;
|
||||||
showCheckError = false;
|
showCheckError = false;
|
||||||
/*TIPO VISITA*/
|
/*TIPO VISITA*/
|
||||||
if(tipoVisitaModel[0].check || tipoVisitaModel[1].check){
|
print('save');
|
||||||
/*BUSCA ATIVA*/
|
saveHomeVisit();
|
||||||
print('tipoVisitaModel[1].check');
|
|
||||||
print(tipoVisitaModel[1].check);
|
|
||||||
if(CONSULTA || VACINA || EXAME || CONDICIONALIDADES || tipoVisitaModel[1].check){
|
|
||||||
/*CONTROLE AMBIENTAL*/
|
|
||||||
if(ACAO_EDUCATIVA || ACAO_MECANICA || IMOVEL_FOCO || TRATAMENTO_FOCAL || tipoVisitaModel[1].check){
|
|
||||||
bool check1 = false;
|
|
||||||
bool check2 = false;
|
|
||||||
if(!tipoVisitaModel[1].check){
|
|
||||||
for(int i=0; tipoAcompanhamentoModel.length>i;i++){
|
|
||||||
if(tipoAcompanhamentoModel[i].check){
|
|
||||||
print('pegou a $i');
|
|
||||||
check1 = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
check1 = true;
|
|
||||||
}
|
|
||||||
if(!tipoVisitaModel[1].check){
|
|
||||||
for(int i=0; outrosModel.length>i;i++){
|
|
||||||
if(outrosModel[i].check){
|
|
||||||
print('outros $i');
|
|
||||||
check2 = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
check2 = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!check1 || !check2){
|
|
||||||
print('erro 1');
|
|
||||||
AlertDialogDefault().alert(
|
|
||||||
context,
|
|
||||||
'Aviso',
|
|
||||||
'É obrigatória a seleção de pelo menos uma opção dentre os campos Tipo da Visita, Busca ativa, Controle Ambiental, Acompanhamento e Outros.',
|
|
||||||
'OK'
|
|
||||||
);
|
|
||||||
}
|
|
||||||
if(check1 && check2){
|
|
||||||
print('save');
|
|
||||||
saveHomeVisit();
|
|
||||||
}
|
|
||||||
|
|
||||||
}else{
|
|
||||||
print('AQUI');
|
|
||||||
|
|
||||||
print('erro 2');
|
|
||||||
AlertDialogDefault().alert(
|
|
||||||
context,
|
|
||||||
'Aviso',
|
|
||||||
'É obrigatória a seleção de pelo menos uma opção dentre os campos Tipo da Visita, Busca ativa, Controle Ambiental, Acompanhamento e Outros.',
|
|
||||||
'OK'
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
print('nesse');
|
|
||||||
|
|
||||||
print('erro 3');
|
|
||||||
AlertDialogDefault().alert(
|
|
||||||
context,
|
|
||||||
'Aviso',
|
|
||||||
'É obrigatória a seleção de pelo menos uma opção dentre os campos Tipo da Visita, Busca ativa, Controle Ambiental, Acompanhamento e Outros.',
|
|
||||||
'OK'
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
AlertDialogDefault().alert(
|
|
||||||
context,
|
|
||||||
'Aviso',
|
|
||||||
'É obrigatória a seleção de pelo menos uma opção dentre os campos Tipo da Visita, Busca ativa, Controle Ambiental, Acompanhamento e Outros.',
|
|
||||||
'OK'
|
|
||||||
);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
saveHomeVisit()async{
|
saveHomeVisit()async{
|
||||||
|
int ID_UNIDADE = 0;
|
||||||
|
for (int i = 0; listProf.length > i; i++) {
|
||||||
|
if (listProf[i]['INE'] == INE_PROFISSIONAL) {
|
||||||
|
ID_EQUIPE = listProf[i]['ID_EQUIPE'];
|
||||||
|
// INE_DB = listProf[i]['INE'];
|
||||||
|
ID_UNIDADE = listProf[i]['ID_UNIDADE'];
|
||||||
|
// print('lista');
|
||||||
|
// print(listProf[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var CNES_UNIDADE = await DBQuerys().cnesUnidade(ID_UNIDADE);
|
||||||
|
|
||||||
Map<String, dynamic> row = {
|
Map<String, dynamic> row = {
|
||||||
'ID_CIDADAO' : ID_CIDADAO,
|
'ID_CIDADAO' : ID_CIDADAO,
|
||||||
'CD_USUARIO_SUS' : CD_USUARIO_SUS,
|
'CD_USUARIO_SUS' : CD_USUARIO_SUS,
|
||||||
@@ -337,9 +270,9 @@ class _VisitaDomiciliarTelaState extends State<VisitaDomiciliarTela> {
|
|||||||
'PESO' : PESO.text,
|
'PESO' : PESO.text,
|
||||||
'ALTURA' : ALTURA.text,
|
'ALTURA' : ALTURA.text,
|
||||||
'ID_PROFISSIONAL' : idUsuario,
|
'ID_PROFISSIONAL' : idUsuario,
|
||||||
'CBO_PROFISSIONAL' : CBO_PROFISSIONAL,
|
'CBO_PROFISSIONAL' : CBO_DB,
|
||||||
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
|
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
|
||||||
'CNES_UNIDADE' : CNES_UNIDADE.text,
|
'CNES_UNIDADE' : CNES_UNIDADE,
|
||||||
'ID_UNIDADE' : int.parse(idUnidade),
|
'ID_UNIDADE' : int.parse(idUnidade),
|
||||||
'ID_EQUIPE' : ID_EQUIPE,
|
'ID_EQUIPE' : ID_EQUIPE,
|
||||||
'COMPLEMENTO' : COMPLEMENTO.text,
|
'COMPLEMENTO' : COMPLEMENTO.text,
|
||||||
@@ -813,6 +746,8 @@ class _VisitaDomiciliarTelaState extends State<VisitaDomiciliarTela> {
|
|||||||
onChanged: (value){
|
onChanged: (value){
|
||||||
setState(() {
|
setState(() {
|
||||||
CBO_PROFISSIONAL = value!;
|
CBO_PROFISSIONAL = value!;
|
||||||
|
List list = CBO_PROFISSIONAL.toString().split(' - ');
|
||||||
|
CBO_DB = list[1];
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
colorBorder: ColorPalette.white,
|
colorBorder: ColorPalette.white,
|
||||||
|
|||||||
@@ -14,9 +14,8 @@ class ApiDataPost{
|
|||||||
Uri.parse(url),
|
Uri.parse(url),
|
||||||
body: jsonEncode(map),
|
body: jsonEncode(map),
|
||||||
);
|
);
|
||||||
print(response.body);
|
|
||||||
print(response.statusCode);
|
if(response.body == '{"status":1}') {
|
||||||
if(response.statusCode == 200) {
|
|
||||||
await DBQuerys().updateCidadao();
|
await DBQuerys().updateCidadao();
|
||||||
await DBQuerys().updateCadastroIndividuais();
|
await DBQuerys().updateCadastroIndividuais();
|
||||||
await DBQuerys().updateCadastroDomiciliar();
|
await DBQuerys().updateCadastroDomiciliar();
|
||||||
|
|||||||
@@ -83,6 +83,19 @@ class DBQuerys{
|
|||||||
return list[0]['CNES_UNIDADE'];
|
return list[0]['CNES_UNIDADE'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
buscarCodProced(String PROCEDIMENTO)async{
|
||||||
|
print('PROCEDIMENTO');
|
||||||
|
print(PROCEDIMENTO);
|
||||||
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
var query = "SELECT * FROM PROCEDIMENTOS_SIGTAP WHERE DESC_PROC_SIGTAP = '$PROCEDIMENTO'";
|
||||||
|
List list = await db.rawQuery(query);
|
||||||
|
// print(list);
|
||||||
|
if(list.isEmpty){
|
||||||
|
return '';
|
||||||
|
}else{
|
||||||
|
return list[0]['COD_PROC_SIGTAP'].toString();
|
||||||
|
}
|
||||||
|
}
|
||||||
buscaBairro(nomeBairro)async{
|
buscaBairro(nomeBairro)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
List list = await db.rawQuery("SELECT * FROM BAIRROS WHERE NO_BAIRRO = '$nomeBairro'");
|
List list = await db.rawQuery("SELECT * FROM BAIRROS WHERE NO_BAIRRO = '$nomeBairro'");
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import 'package:rkm/service/db/db_querys.dart';
|
||||||
import 'package:rkm/service/db/db_sqlite_load.dart';
|
import 'package:rkm/service/db/db_sqlite_load.dart';
|
||||||
import 'package:sqflite/sqflite.dart';
|
import 'package:sqflite/sqflite.dart';
|
||||||
|
|
||||||
@@ -541,15 +542,18 @@ class DbSqliteSync{
|
|||||||
print(await db.query('VISITAS_DOMICILIARES_COMPL'));
|
print(await db.query('VISITAS_DOMICILIARES_COMPL'));
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertProcedimentosDomiciliares(int ID_ATENDIMENTO_DOMICILIAR,int PROC_ATEND_DOM)async{
|
Future insertProcedimentosDomiciliares(int ID_ATENDIMENTO_DOMICILIAR,int PROCEDIMENTO_SELECIONADO)async{
|
||||||
Database db = await DbSqliteLoad().intialDB();
|
Database db = await DbSqliteLoad().intialDB();
|
||||||
|
|
||||||
// ATENDS_DOM_COMPL (ID_ATENDIMENTO_DOMICILIAR INTEGER, COND_AVAL_ATEND_DOM INTEGER)
|
// ATENDS_DOM_COMPL (ID_ATENDIMENTO_DOMICILIAR INTEGER, COND_AVAL_ATEND_DOM INTEGER)
|
||||||
|
|
||||||
|
// String procedimento = await DBQuerys().buscarCodProced(PROCEDIMENTO_SELECIONADO);
|
||||||
Map<String,dynamic> row = {
|
Map<String,dynamic> row = {
|
||||||
'ID_ATENDIMENTO_DOMICILIAR' :ID_ATENDIMENTO_DOMICILIAR,
|
'ID_ATENDIMENTO_DOMICILIAR' :ID_ATENDIMENTO_DOMICILIAR,
|
||||||
'PROC_ATEND_DOM' :PROC_ATEND_DOM,
|
'PROC_ATEND_DOM' :PROCEDIMENTO_SELECIONADO,
|
||||||
};
|
};
|
||||||
int id = await db.insert('ATENDS_DOM_PROC', row);
|
int id = await db.insert('ATENDS_DOM_PROC', row);
|
||||||
print(await db.query('ATENDS_DOM_PROC'));
|
// print(await db.query('ATENDS_DOM_PROC'));
|
||||||
return db;
|
return db;
|
||||||
}
|
}
|
||||||
Future insertVISITAS_DOMICILIARES_PROC(int ID_VISITA_DOMICILIAR,String COD_PROC_SIGTAP)async{
|
Future insertVISITAS_DOMICILIARES_PROC(int ID_VISITA_DOMICILIAR,String COD_PROC_SIGTAP)async{
|
||||||
|
|||||||
12
pubspec.lock
12
pubspec.lock
@@ -409,10 +409,10 @@ packages:
|
|||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: pointer_interceptor_web
|
name: pointer_interceptor_web
|
||||||
sha256: "9386e064097fd16419e935c23f08f35b58e6aaec155dd39bd6a003b88f9c14b4"
|
sha256: "7a7087782110f8c1827170660b09f8aa893e0e9a61431dbbe2ac3fc482e8c044"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.10.1+2"
|
version: "0.10.2+1"
|
||||||
pointycastle:
|
pointycastle:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -587,13 +587,13 @@ packages:
|
|||||||
source: hosted
|
source: hosted
|
||||||
version: "14.2.1"
|
version: "14.2.1"
|
||||||
web:
|
web:
|
||||||
dependency: transitive
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: web
|
name: web
|
||||||
sha256: afe077240a270dcfd2aafe77602b4113645af95d0ad31128cc02bce5ac5d5152
|
sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.3.0"
|
version: "0.5.1"
|
||||||
win32:
|
win32:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
@@ -612,4 +612,4 @@ packages:
|
|||||||
version: "1.0.0"
|
version: "1.0.0"
|
||||||
sdks:
|
sdks:
|
||||||
dart: ">=3.3.0 <4.0.0"
|
dart: ">=3.3.0 <4.0.0"
|
||||||
flutter: ">=3.18.0-18.0.pre.54"
|
flutter: ">=3.19.0"
|
||||||
|
|||||||
@@ -3,9 +3,10 @@ description: RKM AB 2.0.
|
|||||||
#Cadastro e edição do Cadastro do Cidadão, Cadastro Individual, Cadastro Domiciliar e Visita Domiciliar
|
#Cadastro e edição do Cadastro do Cidadão, Cadastro Individual, Cadastro Domiciliar e Visita Domiciliar
|
||||||
#versão 1.0.6+5 finalizada dia 19/02/2024
|
#versão 1.0.6+5 finalizada dia 19/02/2024
|
||||||
#versão 1.0.6+5 finalizada dia 18/03/2024
|
#versão 1.0.6+5 finalizada dia 18/03/2024
|
||||||
|
#versão 1.0.10+1 AJUSTES PARA A SINCRONIZAÇÃO DIA 22/08/2024
|
||||||
|
|
||||||
publish_to: 'none'
|
publish_to: 'none'
|
||||||
version: 1.0.9+8
|
version: 1.0.10+1
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
sdk: '>=3.2.3 <4.0.0'
|
sdk: '>=3.2.3 <4.0.0'
|
||||||
@@ -26,6 +27,7 @@ dependencies:
|
|||||||
brasil_fields: ^1.15.0
|
brasil_fields: ^1.15.0
|
||||||
# lista com pesquisa
|
# lista com pesquisa
|
||||||
flutter_typeahead: ^5.2.0
|
flutter_typeahead: ^5.2.0
|
||||||
|
web: ^0.5.1
|
||||||
|
|
||||||
flutter_localizations:
|
flutter_localizations:
|
||||||
sdk: flutter
|
sdk: flutter
|
||||||
|
|||||||
BIN
web/favicon.png
BIN
web/favicon.png
Binary file not shown.
|
Before Width: | Height: | Size: 917 B |
Binary file not shown.
|
Before Width: | Height: | Size: 5.2 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 8.1 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 5.5 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 20 KiB |
@@ -1,58 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<!--
|
|
||||||
If you are serving your web app in a path other than the root, change the
|
|
||||||
href value below to reflect the base path you are serving from.
|
|
||||||
|
|
||||||
The path provided below has to start and end with a slash "/" in order for
|
|
||||||
it to work correctly.
|
|
||||||
|
|
||||||
For more details:
|
|
||||||
* https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base
|
|
||||||
|
|
||||||
This is a placeholder for base href that will be replaced by the value of
|
|
||||||
the `--base-href` argument provided to `flutter build`.
|
|
||||||
-->
|
|
||||||
<base href="$FLUTTER_BASE_HREF">
|
|
||||||
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta content="IE=Edge" http-equiv="X-UA-Compatible">
|
|
||||||
<meta name="description" content="RKM AB 2.0.">
|
|
||||||
|
|
||||||
<!-- iOS meta tags & icons -->
|
|
||||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
|
||||||
<meta name="apple-mobile-web-app-title" content="rkm">
|
|
||||||
<link rel="apple-touch-icon" href="icons/Icon-192.png">
|
|
||||||
|
|
||||||
<!-- Favicon -->
|
|
||||||
<link rel="icon" type="image/png" href="favicon.png"/>
|
|
||||||
|
|
||||||
<title>rkm</title>
|
|
||||||
<link rel="manifest" href="manifest.json">
|
|
||||||
|
|
||||||
<script>
|
|
||||||
// The value below is injected by flutter build, do not touch.
|
|
||||||
var serviceWorkerVersion = null;
|
|
||||||
</script>
|
|
||||||
<!-- This script adds the flutter initialization JS code -->
|
|
||||||
<script src="flutter.js" defer></script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<script>
|
|
||||||
window.addEventListener('load', function(ev) {
|
|
||||||
// Download main.dart.js
|
|
||||||
_flutter.loader.loadEntrypoint({
|
|
||||||
serviceWorker: {
|
|
||||||
serviceWorkerVersion: serviceWorkerVersion,
|
|
||||||
}
|
|
||||||
}).then(function(engineInitializer) {
|
|
||||||
return engineInitializer.initializeEngine();
|
|
||||||
}).then(function(appRunner) {
|
|
||||||
return appRunner.runApp();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "rkm",
|
|
||||||
"short_name": "rkm",
|
|
||||||
"start_url": ".",
|
|
||||||
"display": "standalone",
|
|
||||||
"background_color": "#0175C2",
|
|
||||||
"theme_color": "#0175C2",
|
|
||||||
"description": "RKM AB 2.0.",
|
|
||||||
"orientation": "portrait-primary",
|
|
||||||
"prefer_related_applications": false,
|
|
||||||
"icons": [
|
|
||||||
{
|
|
||||||
"src": "icons/Icon-192.png",
|
|
||||||
"sizes": "192x192",
|
|
||||||
"type": "image/png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"src": "icons/Icon-512.png",
|
|
||||||
"sizes": "512x512",
|
|
||||||
"type": "image/png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"src": "icons/Icon-maskable-192.png",
|
|
||||||
"sizes": "192x192",
|
|
||||||
"type": "image/png",
|
|
||||||
"purpose": "maskable"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"src": "icons/Icon-maskable-512.png",
|
|
||||||
"sizes": "512x512",
|
|
||||||
"type": "image/png",
|
|
||||||
"purpose": "maskable"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user