ajustes no sigtap e visita domiciliar

This commit is contained in:
Reginaldo
2024-01-31 16:38:18 -03:00
parent c9513ff6fd
commit cfdfb316f8
26 changed files with 695 additions and 484 deletions

View File

@@ -1,4 +1,7 @@
import 'package:flutter/material.dart';
import 'package:rkm/config/const_variable.dart';
import 'package:rkm/widgets/appbar_default.dart';
import 'package:rkm/widgets/screen_dev.dart';
class ComplementarySheetScreen extends StatefulWidget {
const ComplementarySheetScreen({Key? key}) : super(key: key);
@@ -10,6 +13,10 @@ class ComplementarySheetScreen extends StatefulWidget {
class _ComplementarySheetScreenState extends State<ComplementarySheetScreen> {
@override
Widget build(BuildContext context) {
return Center(child: Text('Ficha Complementar'),);
return Scaffold(
appBar: AppBarDefault().appbar(context, 'RKM AB - Ficha Complemetar'),
body: ScreenDev(),
);
}
}

View File

@@ -1,5 +1,8 @@
import 'package:flutter/material.dart';
import '../../widgets/appbar_default.dart';
import '../../widgets/screen_dev.dart';
class ConsumptionMarkersScreen extends StatefulWidget {
const ConsumptionMarkersScreen({Key? key}) : super(key: key);
@@ -10,6 +13,9 @@ class ConsumptionMarkersScreen extends StatefulWidget {
class _ConsumptionMarkersScreenState extends State<ConsumptionMarkersScreen> {
@override
Widget build(BuildContext context) {
return Center(child: Text('Marcadores de Consumo'),);
return Scaffold(
appBar: AppBarDefault().appbar(context, 'RKM AB - Marcadores de Consumo'),
body: ScreenDev(),
);
}
}

View File

@@ -1,5 +1,8 @@
import 'package:flutter/material.dart';
import '../../widgets/appbar_default.dart';
import '../../widgets/screen_dev.dart';
class EligibilityAssessmentScreen extends StatefulWidget {
const EligibilityAssessmentScreen({Key? key}) : super(key: key);
@@ -10,6 +13,9 @@ class EligibilityAssessmentScreen extends StatefulWidget {
class _EligibilityAssessmentScreenState extends State<EligibilityAssessmentScreen> {
@override
Widget build(BuildContext context) {
return Center(child: Text('Avaliação de Elegibilidade'),);
return Scaffold(
appBar: AppBarDefault().appbar(context, 'RKM AB - Avaliação de Elegibilidade'),
body: ScreenDev(),
);
}
}

View File

@@ -67,7 +67,7 @@ class _HomeVisitScreenState extends State<HomeVisitScreen> {
String INE_PROFISSIONAL='';
String CD_USUARIO_SUS='';
String idUnidade = '';
String idUsuario = '';
int idUsuario = 0;
String date = '';
String dateDB = '';
List <String> typeTurnService = [];
@@ -107,13 +107,13 @@ class _HomeVisitScreenState extends State<HomeVisitScreen> {
CD_USUARIO_SUS = list[0]['CD_USUARIO_SUS'];
});
final PrefService _prefService = PrefService();
_prefService.readCacheIdUsuario('idUsuario').then((value){
_prefService.readCacheIdUsername('idUsuario').then((value){
if(value != null){
idUsuario = value;
loadData();
}
});
_prefService.readCacheUnidade('idUnidade').then((value){
_prefService.readCacheUnidade().then((value){
if(value!=null){
idUnidade = value[0];
CNES_UNIDADE.text = value[1];
@@ -159,6 +159,8 @@ class _HomeVisitScreenState extends State<HomeVisitScreen> {
}
loadData()async{
print('idUsuario');
print(idUsuario);
await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){
ID_PROFISSIONAL = list['ID_PROFISSIONAL'];
NOME_PROFISSIONAL.text = list['NOME_PROFISSIONAL'];
@@ -261,7 +263,7 @@ class _HomeVisitScreenState extends State<HomeVisitScreen> {
'DESFECHO' : DESFECHO_COD,
'PESO' : PESO.text,
'ALTURA' : ALTURA.text,
'ID_PROFISSIONAL' : int.parse(idUsuario),
'ID_PROFISSIONAL' : idUsuario,
'CBO_PROFISSIONAL' : CBO_PROFISSIONAL,
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
'CNES_UNIDADE' : CNES_UNIDADE.text,

View File

@@ -1,5 +1,8 @@
import 'package:flutter/material.dart';
import '../../widgets/appbar_default.dart';
import '../../widgets/screen_dev.dart';
class ProceduresScreen extends StatefulWidget {
const ProceduresScreen({Key? key}) : super(key: key);
@@ -10,6 +13,9 @@ class ProceduresScreen extends StatefulWidget {
class _ProceduresScreenState extends State<ProceduresScreen> {
@override
Widget build(BuildContext context) {
return Center(child: Text('Procedimentos'),);
return Scaffold(
appBar: AppBarDefault().appbar(context, 'RKM AB - Procedimentos'),
body: ScreenDev(),
);
}
}

View File

@@ -1,5 +1,8 @@
import 'package:flutter/material.dart';
import '../../widgets/appbar_default.dart';
import '../../widgets/screen_dev.dart';
class ServiceDentalScreen extends StatefulWidget {
const ServiceDentalScreen({Key? key}) : super(key: key);
@@ -10,6 +13,9 @@ class ServiceDentalScreen extends StatefulWidget {
class _ServiceDentalScreenState extends State<ServiceDentalScreen> {
@override
Widget build(BuildContext context) {
return Center(child: Text('Atendimento Odontológico'),);
return Scaffold(
appBar: AppBarDefault().appbar(context, 'RKM AB - Atendimento Odontológico'),
body: ScreenDev(),
);
}
}

View File

@@ -40,7 +40,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
String date='';
String dateDB='';
String idUsuario='';
int idUsuario=0;
String idUnidade='';
String? nameCityApi;
String? mode;
@@ -129,36 +129,20 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
getUser()async{
final PrefService _prefService = PrefService();
_prefService.readCacheIdUsuario('idUsuario').then((value){
if(value != null){
idUsuario = value;
_prefService.readCacheIDUser().then((value){
if(value != 0){
idUsuario = int.parse(value);
// print('idUsuario get');
// print(idUsuario);
loadData();
}
});
_prefService.readCacheUnidade('idUnidade').then((value){
_prefService.readCacheUnidade().then((value){
if(value!=null){
idUnidade = value[0];
CNES_UNIDADE.text = value[1];
}
});
await DbSqliteLoad().intialDB().then((db)async{
List list = await db.query('ARGS');
urlAPI = list[0]['URLAPI'];
mode = list[0]['MODE'];
nameCityApi = list[0]['NAME_CITY_API'];
}).then((value)async{
await ApiDataImportSigtap().loadSIGTAP(urlAPI, mode, nameCityApi).then((value)async{
await DbSqliteSigtap().saveProceduresSigtapDB(value).then((db)async{
List list = await db.query('PROCEDIMENTOS_SIGTAP');
for(int i = 0; list.length>i;i++){
if(list[i]['COD_PROC_SIGTAP']!=null && list[i]['DESC_PROC_SIGTAP']!=null){
PROCEDIMENTOS_SIGTAP.add(list[i]['COD_PROC_SIGTAP']+' - ' + list[i]['DESC_PROC_SIGTAP']);
}
}
setState(() {});
});
});
});
await DBQuerys().buscaCIAP().then((list){
listCIAP.add(DropDownDataModel(cod: int.parse(list['CODIGO_CIAP']), title: list['DESC_CIAP']));
});
@@ -168,6 +152,8 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
}
loadData()async{
// print('idUsuario');
// print(idUsuario);
await DBQuerys().buscaProfissionalCadInd(idUsuario).then((list){
ID_PROFISSIONAL = list['ID_PROFISSIONAL'];
NOME_PROFISSIONAL.text = list['NOME_PROFISSIONAL'];
@@ -177,15 +163,62 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
}
setState(() {});
});
await DBQuerys().buscaCBOProfissional(idUsuario).then((list){
await DBQuerys().buscaCBOProfissional(idUsuario).then((list)async{
if(list.length!=0){
for(int i = 0; list.length>i;i++){
listCBO.add(list[i]['CODIGO_CBO'].toString());
}
}
if(listCBO.isNotEmpty){
await DbSqliteLoad().intialDB().then((db)async{
List list = await db.query('ARGS');
urlAPI = list[0]['URLAPI'];
mode = list[0]['MODE'];
nameCityApi = list[0]['NAME_CITY_API'];
}).then((value)async{
//sigtap
for(int i = 0; listCBO.length>i;i++){
print(listCBO[i]);
await DBQuerys().buscaCBOSProfissional(listCBO[i]).then((sigtap)async{
print('indice $i');
print(sigtap);
if(listCBO[i]==sigtap[0]['CODIGO_CBO']){
PROCEDIMENTOS_SIGTAP.add(sigtap[0]['CODIGO_CBO']+' - ' + sigtap[0]['DESCRICAO_CBO']);
List<String> aux = PROCEDIMENTOS_SIGTAP.toSet().toList();
PROCEDIMENTOS_SIGTAP = aux;
}
});
}
print(PROCEDIMENTOS_SIGTAP);
setState(() {});
// await ApiDataImportSigtap().loadSIGTAP(urlAPI, mode, nameCityApi).then((value)async{
// List<dynamic> procedimentos = value['procedimentos'];
// print(procedimentos.length);
// print(procedimentos);
// if(procedimentos.isNotEmpty){
// await DbSqliteSigtap().saveProceduresSigtapDB(procedimentos).then((db)async{
// List list = await db.query('PROCEDIMENTOS_SIGTAP');
// for(int i = 0; list.length>i;i++){
// if(list[i]['COD_PROC_SIGTAP']!=null && list[i]['DESC_PROC_SIGTAP']!=null){
// PROCEDIMENTOS_SIGTAP.add(list[i]['COD_PROC_SIGTAP']+' - ' + list[i]['DESC_PROC_SIGTAP']);
// List<String> aux = PROCEDIMENTOS_SIGTAP.toSet().toList();
// PROCEDIMENTOS_SIGTAP = aux;
// }
// }
// setState(() {
// loadSIGTAP = false;
// });
// });
// }
// });
});
}
CBO_RESP_CADASTRO = list.length == 0?null:list[0]['CODIGO_CBO'].toString();
setState(() {});
});
// print('IdUsuario: ${idUsuario}');
// print('IdUnidade: '+idUnidade);
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
for(int i=0; list.length > i;i++){
INE_RESP_CADASTRO = 'INE: ${list[i]['INE']} / Área: ${list[i]['AREA']} - Microárea : ${list[i]['MICROAREA']}';
@@ -198,7 +231,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
// adicionar depois e usar um usuário real
// CBO_RESP_CADASTRO
//ok
if(date.isEmpty || dateDB.isEmpty || LOCAL_ATENDIMENTO_COD==0 || TIPO_ATENDIMENTO_COD ==0 || MODALIDADE_COD == 0 || TURNO_COD == 0
if(date.isEmpty || dateDB.isEmpty || LOCAL_ATENDIMENTO_COD==0 || TIPO_ATENDIMENTO_COD ==0 || MODALIDADE_COD == 0 || TURNO_COD == 0 || CBO_PROFISSIONAL == null
){
print('erro');
setState(() {
@@ -219,7 +252,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
Map<String, dynamic> row = {
'ID_CIDADAO' : ID_CIDADAO,
'CD_USUARIO_SUS' : CD_USUARIO_SUS,
'ID_PROFISSIONAL' : int.parse(idUsuario),
'ID_PROFISSIONAL' : idUsuario,
'CBO_PROFISSIONAL' : CBO_PROFISSIONAL,
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
'CNES_UNIDADE' : CNES_UNIDADE.text,
@@ -261,15 +294,16 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
CD_USUARIO_SUS = list[0]['CD_USUARIO_SUS'];
});
List list = await DBQuerys().buscaDadosProfissional(idUnidade,idUsuario);
INE_PROFISSIONAL = list[0]['INE'];
ID_EQUIPE = list[0]['ID_EQUIPE'];
INE_PROFISSIONAL = list[0]['INE']??'';
ID_EQUIPE = list[0]['ID_EQUIPE']??0;
}
@override
void initState() {
super.initState();
dadosCidadao();
getUser();
dadosCidadao();
loadLists();
}
@@ -328,7 +362,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
onChanged: (v)=>setState((){}),
),
DropdownWithSubtitle(
list: listCBO,
list: PROCEDIMENTOS_SIGTAP,
widthSubtitle: width*0.7,
subtitle: 'CBO',
hintDropdown: 'CBO',