criado o modelo city_load_model.dart a tela login_load_screen.dart e sync_unit_screen.dart

This commit is contained in:
Reginaldo
2023-04-04 22:45:08 -03:00
parent 60e69684ae
commit 17f0fa7bcb
16 changed files with 763 additions and 265 deletions

View File

@@ -2,8 +2,6 @@ import 'package:rkm/models/args_load_init_model.dart';
import 'package:sqflite/sqflite.dart';
import 'package:path/path.dart';
import '../../utils/const_variable.dart';
class DbSqlite{
Future intialDB()async{
@@ -38,7 +36,7 @@ class DbSqlite{
db.execute('CREATE TABLE IF NOT EXISTS CIDADAOS (ID_CIDADAO INTEGER PRIMARY KEY AUTOINCREMENT, CD_USUARIO_SUS TEXT, NOME_CIDADAO TEXT, NOME_SOCIAL TEXT, SEXO TEXT, DT_NASCIMENTO TEXT, ID_ESTADO_CIVIL INTEGER, NOME_CONJUGE TEXT, NACIONALIDADE INTEGER, ID_MUNICIPIO_NASC INTEGER, NO_MUNICIPIO_NASC TEXT, ESTADO_UF_NASC TEXT, ID_ETNIA INTEGER, ID_ESCOLARIDADE INTEGER, ID_DEFICIENCIA INTEGER, NOME_MAE TEXT, DESCONHECE_MAE INTEGER, NOME_PAI TEXT, DESCONHECE_PAI INTEGER, ID_UNIDADE INTEGER, NUM_PRONTUARIO TEXT, NUM_PRONTUARIO_PROV TEXT, CLASSIFICACAO INTEGER, CLASSIFICACAO_SUB INTEGER, NUM_FAMILIA INTEGER, ID_PAIS_RESID INTEGER, ID_MUNICIPIO_RESID INTEGER, NO_MUNICIPIO_RESID TEXT, ESTADO_UF_RESID TEXT, CODIGO_IBGE_RESID INTEGER, NO_BAIRRO_LOGR TEXT, ID_LOGR_TIPO INTEGER, NOME_LOGR TEXT, CEP_LOGR INTEGER, NUMERO_LOGR INTEGER, LOTEAMENTO_LOGR INTEGER, COMPL_LOGR TEXT, PONTO_REFERENCIA TEXT, ZONA_LOGR INTEGER, DDD_TELEFONE INTEGER, NUM_TELEFONE INTEGER, DDD_CELULAR INTEGER, NUM_CELULAR INTEGER, DDD_RECADO INTEGER, NUM_RECADO INTEGER, EMAIL TEXT, OBSERVACOES TEXT, CPF INTEGER, CNS TEXT, TITULO_ELEITOR INTEGER, RG_NUMERO INTEGER, RG_COMPLEMENTO TEXT, RG_UF TEXT, RG_ORGAO TEXT, RG_DATA_EMISSAO TEXT, TIPO_CERTIDAO INTEGER, NUM_CERTIDAO TEXT, CARTORIO_CERTIDAO TEXT, LIVRO_CERTIDAO TEXT, FOLHA_CERTIDAO TEXT, TERMO_CERTIDAO TEXT, DT_EMISSAO_CERTIDAO TEXT, NUM_CTPS TEXT, NUM_SERIE_CTPS TEXT, ESTADO_UF_CTPS TEXT, NUM_PIS_PASEP TEXT, FL_RETIROU_CARTAO INTEGER, NUM_NIS TEXT, NUM_PROT_CROSS TEXT, RENDA_MENSAL REAL, PROFISSAO TEXT, DT_OBITO TEXT, DECLARACAO_OBITO TEXT, BLOQUEIO INTEGER, ORIGEM INTEGER, DT_HORA_CADASTRO TEXT, ID_USUARIO_CADASTRO INTEGER, ID_DOMICILIO INTEGER, ATENDIMENTOS INTEGER, SINCRONIZADO TEXT);');
db.execute('CREATE TABLE IF NOT EXISTS CIDADAO_DOMICILIO (ID_DOMICILIO INTEGER PRIMARY KEY AUTOINCREMENT, TIPO_IMOVEL INTEGER, ID_AREA_DOMICILIO INTEGER, ID_MICROAREA_DOMICILIO INTEGER, FORA_AREA INTEGER, SITUACAO_MORADIA INTEGER, TIPO_LOCALIDADE INTEGER, TIPO_DOMICILIO INTEGER, NUM_MORADORES INTEGER, NUM_COMODOS INTEGER, SITUACAO_RURAL INTEGER, TIPO_ACESSO INTEGER, MAT_PREDOMINANTE INTEGER, DISPONIBILIDADE_ENERGIA INTEGER, TIPO_ABASTECIMENTO INTEGER, TRATAMENTO_AGUA INTEGER, DESTINO_LIXO INTEGER, ESCOAMENTO INTEGER, FL_ANIMAIS INTEGER, ANIMAIS_GATO INTEGER, ANIMAIS_CACHORRO INTEGER, ANIMAIS_PASSARO INTEGER, ANIMAIS_OUTROS INTEGER, QTDE_ANIMAIS INTEGER, CBO_RESP_CADASTRO TEXT, ID_RESP_CADASTRO INTEGER, CNES_RESP_CADASTRO TEXT, INE_RESP_CADASTRO TEXT, DT_CADASTRO TEXT, ID_EQUIPE INTEGER, ORIGEM TEXT, SINCRONIZADO TEXT, NOME_INSTITUICAO_PERMANENCIA TEXT, PROFISSIONAIS_VINCULADOS_INST INTEGER, RESPONSAVEL_TECNICO_INST TEXT, CNS_RESP_TECNICO_INST TEXT, CARGO_RESP_TECNICO_INST TEXT, TEL_RESP_TECNICO_INST TEXT);');
db.execute('CREATE TABLE IF NOT EXISTS CIDS (CODIGO_CID TEXT, DESCRICAO_CID TEXT, RESTRICAO_SEXO INTEGER);');
db.execute('CREATE TABLE IF NOT EXISTS CONTROLE_INTERNO (CARGA_INICIAL INTEGER, SYNC_UNIDADE INTEGER, CIDADE_LOAD TEXT, NOME_CIDADE TEXT, ID_MUNICIPIO INTEGER, UF_ESTADO TEXT, UNIDADE_SYNC TEXT, CODIGO_IBGE INTEGER, NOME_UNIDADE TEXT, AMBIENTE TEXT, ULTIMA_SINCRONIZACAO TEXT, COMPETENCIA TEXT, ID_AREA INTEGER, AREA INTEGER, ID_MICROAREA INTEGER, MICROAREA INTEGER);');
db.execute( 'CREATE TABLE IF NOT EXISTS CONTROLE_INTERNO (CARGA_INICIAL INTEGER, SYNC_UNIDADE INTEGER, CIDADE_LOAD TEXT, NOME_CIDADE TEXT, ID_MUNICIPIO INTEGER, UF_ESTADO TEXT, UNIDADE_SYNC TEXT, CODIGO_IBGE INTEGER, NOME_UNIDADE TEXT, AMBIENTE TEXT, ULTIMA_SINCRONIZACAO TEXT, COMPETENCIA TEXT, AREA INTEGER, MICROAREA INTEGER);');
db.execute('CREATE TABLE IF NOT EXISTS DOMICILIOS_CIDADAOS (ID_DOMICILIO INTEGER, CD_USUARIO_SUS TEXT);');
db.execute('CREATE TABLE IF NOT EXISTS EQUIPES (ID_EQUIPE INTEGER PRIMARY KEY AUTOINCREMENT, ID_UNIDADE INTEGER, INE TEXT, ID_ATB_AREA INTEGER, AREA INTEGER, ID_ATB_MICROAREA INTEGER, MICROAREA INTEGER);');
db.execute('CREATE TABLE IF NOT EXISTS FICHAS_COMPLEMENTARES (ID_FICHA_COMPLEMENTAR INTEGER PRIMARY KEY AUTOINCREMENT, ID_CIDADAO INTEGER, CD_USUARIO_SUS TEXT, ID_PROFISSIONAL INTEGER, CBO_PROFISSIONAL TEXT, INE_PROFISSIONAL TEXT, CNES_UNIDADE TEXT, ID_UNIDADE INTEGER, ID_EQUIPE INTEGER, DATA_ATENDIMENTO TEXT, TURNO INTEGER, DATA_OLHINHO TEXT, RESULTADO_OLHINHO INTEGER, DATA_FUNDO_OLHO TEXT, RESULTADO_FUNDO_OLHO INTEGER, DATA_ORELHINHA TEXT, RESULTADO_ORELHINHA INTEGER, DATA_TRANSFONTANELA TEXT, RESULTADO_TRANSFONTANELA INTEGER, DATA_TOMOGRAFIA TEXT, RESULTADO_TOMOGRAFIA INTEGER, DATA_RESSONANCIA TEXT, RESULTADO_RESSONANCIA INTEGER, SINCRONIZADO TEXT);');
@@ -69,46 +67,45 @@ class DbSqlite{
return db;
}
Future deleteDB()async{
//testar com ; no final
var querys = [
'UPDATE CONTROLE_INTERNO SET SYNC_UNIDADE = NULL, UNIDADE_SYNC = NULL, NOME_UNIDADE = NULL WHERE rowid = 1;',
'DELETE FROM ATENDS_DOM_COMPL',
'DELETE FROM ATENDS_DOM_PROC',
'DELETE FROM ATENDS_DOM_SIGTAP',
'DELETE FROM ATENDIMENTOS_DOMICILIARES',
'DELETE FROM ATENDS_INDIV_PROC',
'DELETE FROM ATENDS_INDIV_PROF',
'DELETE FROM ATENDS_INDIVIDUAIS',
'DELETE FROM BAIRROS',
'DELETE FROM CADASTROS_INDIVIDUAIS',
'DELETE FROM CBOS',
'DELETE FROM CIAPS',
'DELETE FROM CIDADAOS',
'DELETE FROM CIDADAO_DOMICILIO',
'DELETE FROM CIDS',
'DELETE FROM CONTROLE_INTERNO',
'DELETE FROM DOMICILIOS_CIDADAOS',
'DELETE FROM EQUIPES',
'DELETE FROM FICHAS_COMPLEMENTARES',
'DELETE FROM LOGRADOUROS_ENDERECOS',
'DELETE FROM LOGRADOUROS_LOTEAMENTOS',
'DELETE FROM LOGRADOUROS_TIPOS',
'DELETE FROM MUNICIPIOS',
'DELETE FROM PROCEDIMENTOS_FICHAS',
'DELETE FROM PROCEDIMENTOS_INDIV',
'DELETE FROM PROCEDIMENTOS_INDIV_FICHA',
'DELETE FROM PROCEDIMENTOS_INDIV_SIGTAP',
'DELETE FROM PROCEDIMENTOS_SIGTAP',
'DELETE FROM PROCEDIMENTOS_SIGTAP_CBO',
'DELETE FROM PROCEDIMENTOS_SIGTAP_CID',
'DELETE FROM PROCEDIMENTOS_SIGTAP_REGISTRO',
'DELETE FROM PROFISSIONAIS',
'DELETE FROM PROFISSIONAIS_CBOS',
'DELETE FROM PROFISSIONAIS_EQUIPE',
'DELETE FROM UNIDADES',
'DELETE FROM VISITAS_DOMICILIARES',
'DELETE FROM VISITAS_DOMICILIARES_COMPL',
'DELETE FROM VISITAS_DOMICILIARES_PROC',
'DELETE FROM ATENDS_DOM_COMPL;',
'DELETE FROM ATENDS_DOM_PROC;',
'DELETE FROM ATENDS_DOM_SIGTAP;',
'DELETE FROM ATENDIMENTOS_DOMICILIARES;',
'DELETE FROM ATENDS_INDIV_PROC;',
'DELETE FROM ATENDS_INDIV_PROF;',
'DELETE FROM ATENDS_INDIVIDUAIS;',
'DELETE FROM BAIRROS;',
'DELETE FROM CADASTROS_INDIVIDUAIS;',
'DELETE FROM CBOS;',
'DELETE FROM CIAPS;',
'DELETE FROM CIDADAOS;',
'DELETE FROM CIDADAO_DOMICILIO;',
'DELETE FROM CIDS;',
'DELETE FROM CONTROLE_INTERNO;',
'DELETE FROM DOMICILIOS_CIDADAOS;',
'DELETE FROM EQUIPES;',
'DELETE FROM FICHAS_COMPLEMENTARES;',
'DELETE FROM LOGRADOUROS_ENDERECOS;',
'DELETE FROM LOGRADOUROS_LOTEAMENTOS;',
'DELETE FROM LOGRADOUROS_TIPOS;',
'DELETE FROM MUNICIPIOS;',
'DELETE FROM PROCEDIMENTOS_FICHAS;',
'DELETE FROM PROCEDIMENTOS_INDIV;',
'DELETE FROM PROCEDIMENTOS_INDIV_FICHA;',
'DELETE FROM PROCEDIMENTOS_INDIV_SIGTAP;',
'DELETE FROM PROCEDIMENTOS_SIGTAP;',
'DELETE FROM PROCEDIMENTOS_SIGTAP_CBO;',
'DELETE FROM PROCEDIMENTOS_SIGTAP_CID;',
'DELETE FROM PROCEDIMENTOS_SIGTAP_REGISTRO;',
'DELETE FROM PROFISSIONAIS;',
'DELETE FROM PROFISSIONAIS_CBOS;',
'DELETE FROM PROFISSIONAIS_EQUIPE;',
'DELETE FROM UNIDADES;',
'DELETE FROM VISITAS_DOMICILIARES;',
'DELETE FROM VISITAS_DOMICILIARES_COMPL;',
'DELETE FROM VISITAS_DOMICILIARES_PROC;',
];
Database db = await intialDB();
for(int i=0;querys.length>i;i++){
@@ -295,26 +292,24 @@ class DbSqlite{
print(await db.query('PROFISSIONAIS_EQUIPE'));
return db;
}
Future saveCompetence(var competence,ArgsLoadInitModel args)async{
Future saveCityInit(ArgsLoadInitModel args)async{
Database db = await intialDB();
String cityReplace = ConstVariable().replaceText(args.city);
print(competence);
//refatorar cidade_load e nome_cidade
'parameters = [{"carga_inicial": 1, "cidade_load": cidade, "nome_cidade": vm.nomeCidade[cidade], "cidade_id": cidadeID, "estado": estado, "ibge": ibge, "ambiente": ambiente, "competencia": competencia.replace(/\D/g, '')}]';
"INSERT OR REPLACE INTO CONTROLE_INTERNO (rowid, CARGA_INICIAL, CIDADE_LOAD, NOME_CIDADE, ID_MUNICIPIO, UF_ESTADO, CODIGO_IBGE, AMBIENTE, COMPETENCIA) VALUES (1,?,?,?,?,?,?,?,?)";
Map<String, dynamic> row = {
'CARGA_INICIAL' : 1,
'CIDADE_LOAD' : cityReplace,
'NOME_CIDADE' : args.city,
'ID_MUNICIPIO' : '',
'UF_ESTADO' : '',
'CODIGO_IBGE' : '',
'AMBIENTE' : args.mode,
'COMPETENCIA' : competence,
};
int id = await db.insert('CONTROLE_INTERNO', row);
print('id increment $id CONTROLE_INTERNO');
Map<String, dynamic> row = {
'CARGA_INICIAL' : 1,
'CIDADE_LOAD' : args.model.nameCityApi,
'NOME_CIDADE' : args.model.nameCityFront,
'ID_MUNICIPIO' : args.model.codCity,
'UF_ESTADO' : args.model.codState,
'CODIGO_IBGE' : args.model.codCityIbge,
'AMBIENTE' : args.mode,
'ULTIMA_SINCRONIZACAO' : DateTime.now().toString(),
'COMPETENCIA' : '${DateTime.now().year}${DateTime.now().month<10?'0':''}${DateTime.now().month-1}',
};
int id = await db.insert('CONTROLE_INTERNO', row);
print(await db.query('CONTROLE_INTERNO'));
return db;
}