sincronização com o atendimento dominiciliar

This commit is contained in:
Reginaldo
2023-05-08 12:41:22 -03:00
parent 532d186d5b
commit 5c7ff19477
10 changed files with 207 additions and 28 deletions

View File

@@ -8,13 +8,11 @@ import '../screens/edit_procedures_screen.dart';
import '../screens/configurations/import_sigtap_screen.dart'; import '../screens/configurations/import_sigtap_screen.dart';
import '../screens/login/login_load_screen.dart'; import '../screens/login/login_load_screen.dart';
import '../screens/configurations/main_procedures_screen.dart'; import '../screens/configurations/main_procedures_screen.dart';
import '../screens/registers_citizen/register_citizen_screen.dart';
import '../screens/select_service/complementary_sheet_screen.dart'; import '../screens/select_service/complementary_sheet_screen.dart';
import '../screens/select_service/consumption_markers_screen.dart'; import '../screens/select_service/consumption_markers_screen.dart';
import '../screens/select_service/home_visit_screen.dart'; import '../screens/select_service/home_visit_screen.dart';
import '../screens/select_service/procedures_screen.dart'; import '../screens/select_service/procedures_screen.dart';
import '../screens/select_service/service_dental_screen.dart'; import '../screens/select_service/service_dental_screen.dart';
import '../screens/select_service/service_home_screen.dart';
import '../screens/select_service/service_individual_screen.dart'; import '../screens/select_service/service_individual_screen.dart';
import '../screens/configurations/sinc_data_screen.dart'; import '../screens/configurations/sinc_data_screen.dart';
@@ -29,7 +27,6 @@ var routes = {
'/import_sigtap': (context) => ImportSigtapScreen(), '/import_sigtap': (context) => ImportSigtapScreen(),
'/edit_procedure': (context) => EditProceduresScreen(), '/edit_procedure': (context) => EditProceduresScreen(),
'/splash': (context) => SplashScreen(), '/splash': (context) => SplashScreen(),
'/service_home': (context) => ServiceHomeScreen(),
'/service_individual': (context) => ServiceIndividualScreen(), '/service_individual': (context) => ServiceIndividualScreen(),
'/service_dental': (context) => ServiceDentalScreen(), '/service_dental': (context) => ServiceDentalScreen(),
'/eligibility_assessment': (context) => EligibilityAssessmentScreen(), '/eligibility_assessment': (context) => EligibilityAssessmentScreen(),

View File

@@ -116,13 +116,13 @@ class _SincDataScreenState extends State<SincDataScreen> {
// print(tableFICHAS_COMPLEMENTARES); // print(tableFICHAS_COMPLEMENTARES);
await DBQuerys().atendimentosDomiciliares().then((response)async{ await DBQuerys().atendimentosDomiciliares().then((response)async{
tableATENDIMENTOS_DOMICILIARES = response; tableATENDIMENTOS_DOMICILIARES = response;
// print(tableATENDIMENTOS_DOMICILIARES); print(tableATENDIMENTOS_DOMICILIARES);
await DBQuerys().atendDomCompl().then((response)async{ await DBQuerys().atendDomCompl().then((response)async{
tableATENDS_DOM_COMPL = response; tableATENDS_DOM_COMPL = response;
// print(tableATENDS_DOM_COMPL); print(tableATENDS_DOM_COMPL);
await DBQuerys().atendDomProcsFicha().then((response)async{ await DBQuerys().atendDomProcsFicha().then((response)async{
tableATENDS_DOM_PROC = response; tableATENDS_DOM_PROC = response;
// print(tableATENDS_DOM_PROC); print(tableATENDS_DOM_PROC);
await DBQuerys().atendDomProcsSigtap().then((response)async{ await DBQuerys().atendDomProcsSigtap().then((response)async{
tableATENDS_DOM_SIGTAP = response; tableATENDS_DOM_SIGTAP = response;
// print(tableATENDS_DOM_SIGTAP); // print(tableATENDS_DOM_SIGTAP);

View File

@@ -145,11 +145,10 @@ class _HomeScreenState extends State<HomeScreen> {
await DBQuerys().buscaCidadao(showResults[index]['NOME_CIDADAO']).then((list){ await DBQuerys().buscaCidadao(showResults[index]['NOME_CIDADAO']).then((list){
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute(builder: MaterialPageRoute(builder:(context) => RegisterCitizenScreen(listData: list,)),
(context) => RegisterCitizenScreen(listData: list,)),
); );
}); });
} },
); );
} }
) )

View File

@@ -816,6 +816,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
margin: EdgeInsets.symmetric(horizontal: 15,vertical: 5), margin: EdgeInsets.symmetric(horizontal: 15,vertical: 5),
padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10), padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10),
decoration: BoxDecoration( decoration: BoxDecoration(
color: date.isEmpty?ColorPalette.disable:ColorPalette.white,
border: Border.all(color: ColorPalette.white), border: Border.all(color: ColorPalette.white),
borderRadius: BorderRadius.all( borderRadius: BorderRadius.all(
Radius.circular(5.0) Radius.circular(5.0)
@@ -1463,7 +1464,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
Spacer(), Spacer(),
Padding( Padding(
padding: const EdgeInsets.symmetric(horizontal: 10.0), padding: const EdgeInsets.symmetric(horizontal: 10.0),
child: TextDefault(text: 'SEM NÚMERO',fontSize: 15,), child: TextDefault(text: 'SEM NÚMERO',fontSize: 15,color: Colors.black,),
) )
], ],
), ),
@@ -1823,6 +1824,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
margin: EdgeInsets.symmetric(horizontal: 15,vertical: 5), margin: EdgeInsets.symmetric(horizontal: 15,vertical: 5),
padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10), padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10),
decoration: BoxDecoration( decoration: BoxDecoration(
color: RGDateController.text.isEmpty?ColorPalette.disable:ColorPalette.white,
border: Border.all(color: ColorPalette.white), border: Border.all(color: ColorPalette.white),
borderRadius: BorderRadius.all( borderRadius: BorderRadius.all(
Radius.circular(5.0) Radius.circular(5.0)
@@ -1933,6 +1935,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
margin: EdgeInsets.symmetric(horizontal: 15,vertical: 5), margin: EdgeInsets.symmetric(horizontal: 15,vertical: 5),
padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10), padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10),
decoration: BoxDecoration( decoration: BoxDecoration(
color: dateCertificateController.text.isEmpty?ColorPalette.disable:ColorPalette.white,
border: Border.all(color: ColorPalette.white), border: Border.all(color: ColorPalette.white),
borderRadius: BorderRadius.all( borderRadius: BorderRadius.all(
Radius.circular(5.0) Radius.circular(5.0)
@@ -2113,6 +2116,7 @@ class _RegisterCitizenScreenState extends State<RegisterCitizenScreen> {
margin: EdgeInsets.symmetric(horizontal: 15,vertical: 5), margin: EdgeInsets.symmetric(horizontal: 15,vertical: 5),
padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10), padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10),
decoration: BoxDecoration( decoration: BoxDecoration(
color: dateDeathController.text.isEmpty?ColorPalette.disable:ColorPalette.white,
border: Border.all(color: ColorPalette.white), border: Border.all(color: ColorPalette.white),
borderRadius: BorderRadius.all( borderRadius: BorderRadius.all(
Radius.circular(5.0) Radius.circular(5.0)

View File

@@ -12,17 +12,20 @@ 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';
import '../../service/db/db_sqlite_load.dart'; import '../../service/db/db_sqlite_load.dart';
import '../../service/db/db_sqlite_sync.dart';
import '../../service/shared_preferences/shared_preferences_service.dart'; import '../../service/shared_preferences/shared_preferences_service.dart';
import '../../widgets/button_default.dart'; import '../../widgets/button_default.dart';
import '../../widgets/check_box_subtitle.dart'; import '../../widgets/check_box_subtitle.dart';
import '../../widgets/dropdown_with_subtitle.dart'; import '../../widgets/dropdown_with_subtitle.dart';
import '../../widgets/error_default.dart';
import '../../widgets/input_with_subtitle.dart'; import '../../widgets/input_with_subtitle.dart';
import '../../widgets/onbackbutton.dart'; import '../../widgets/onbackbutton.dart';
import '../../widgets/text_default.dart'; import '../../widgets/text_default.dart';
import '../../widgets/title_containers.dart'; import '../../widgets/title_containers.dart';
class ServiceHomeScreen extends StatefulWidget { class ServiceHomeScreen extends StatefulWidget {
const ServiceHomeScreen({Key? key}) : super(key: key); String name;
ServiceHomeScreen({required this.name});
@override @override
State<ServiceHomeScreen> createState() => _ServiceHomeScreenState(); State<ServiceHomeScreen> createState() => _ServiceHomeScreenState();
@@ -39,7 +42,13 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
String dateDB=''; String dateDB='';
String idUsuario=''; String idUsuario='';
String idUnidade=''; String idUnidade='';
String? nameCityApi;
String? mode;
String? urlAPI;
String CD_USUARIO_SUS = '';
String INE_PROFISSIONAL = '';
int ID_CIDADAO=0;
int ID_PROFISSIONAL=0; int ID_PROFISSIONAL=0;
int LOCAL_ATENDIMENTO_COD=0; int LOCAL_ATENDIMENTO_COD=0;
int TIPO_ATENDIMENTO_COD=0; int TIPO_ATENDIMENTO_COD=0;
@@ -47,9 +56,10 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
int TURNO_COD=0; int TURNO_COD=0;
int CIAP_COD=0; int CIAP_COD=0;
int CONDUTA_COD=0; int CONDUTA_COD=0;
int ID_EQUIPE=0;
String CID_COD=''; String CID_COD='';
String? selectCBO; String? CBO_PROFISSIONAL;
String? CIAP; String? CIAP;
String? CID; String? CID;
String? CBO_RESP_CADASTRO; String? CBO_RESP_CADASTRO;
@@ -59,9 +69,6 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
String? MODALIDADE; String? MODALIDADE;
String? TURNO; String? TURNO;
String? CONDUTA; String? CONDUTA;
String? nameCityApi;
String? mode;
String? urlAPI;
List<CheckModel> serviceHomeModel = []; List<CheckModel> serviceHomeModel = [];
List<CheckModel> serviceProcModel = []; List<CheckModel> serviceProcModel = [];
@@ -79,6 +86,8 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
List listProc = []; List listProc = [];
bool CNS_VALIDO = false; bool CNS_VALIDO = false;
bool mandatory = false;
bool showCheckError = false;
escolherprazoInicio(BuildContext context) async { escolherprazoInicio(BuildContext context) async {
var pickDate = await showDatePicker( var pickDate = await showDatePicker(
@@ -185,9 +194,81 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
setState(() {}); setState(() {});
} }
checkSave()async{
// 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
){
print('erro');
setState(() {
showCheckError = true;
mandatory = true;
});
}else{
print('passou');
setState(() {
mandatory = false;
showCheckError = false;
saveServiceHome();
});
}
}
saveServiceHome()async{
Map<String, dynamic> row = {
'ID_CIDADAO' : ID_CIDADAO,
'CD_USUARIO_SUS' : CD_USUARIO_SUS,
'ID_PROFISSIONAL' : int.parse(idUsuario),
'CBO_PROFISSIONAL' : CBO_PROFISSIONAL,
'INE_PROFISSIONAL' : INE_PROFISSIONAL,
'CNES_UNIDADE' : CNES_UNIDADE.text,
'ID_UNIDADE' : int.parse(idUnidade),
'ID_EQUIPE' : ID_EQUIPE,
'DATA' : dateDB,
'LOCAL_ATENDIMENTO' : LOCAL_ATENDIMENTO_COD,
'TIPO_ATENDIMENTO' : TIPO_ATENDIMENTO_COD,
'MODALIDADE' : MODALIDADE_COD,
'TURNO' : TURNO_COD,
'CIAP' : CIAP_COD,
'CID' : CID_COD,
'CONDUTA' : CONDUTA_COD,
'SINCRONIZADO' : 'N',
};
await DbSqliteSync().insertAtendimentoDomiciliar(row).then((value){
for(int i = 0;serviceHomeModel.length>i;i++){
if(serviceHomeModel[i].check){
DbSqliteSync().insertCondicoesAvaliadas(value,i+1);
}
}
for(int i = 0;serviceProcModel.length>i;i++){
if(serviceProcModel[i].check){
DbSqliteSync().insertProcedimentosDomiciliares(value,i+1);
}
}
AlertDialogDefault().alert(
context,
'Aviso',
'Atendimento Domiciliar salvo com sucesso!',
'OK'
);
});
}
dadosCidadao()async{
await DBQuerys().buscaCidadao(widget.name).then((list){
ID_CIDADAO = list[0]['ID_CIDADAO'];
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'];
}
@override @override
void initState() { void initState() {
super.initState(); super.initState();
dadosCidadao();
getUser(); getUser();
loadLists(); loadLists();
} }
@@ -251,16 +332,17 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
widthSubtitle: width*0.7, widthSubtitle: width*0.7,
subtitle: 'CBO', subtitle: 'CBO',
hintDropdown: 'CBO', hintDropdown: 'CBO',
select: selectCBO, select: CBO_PROFISSIONAL,
widthDropdown: width*0.7, widthDropdown: width*0.7,
widthContainerDropdown: width*0.6, widthContainerDropdown: width*0.6,
onChanged: (value){ onChanged: (value){
setState(() { setState(() {
selectCBO = value!; CBO_PROFISSIONAL = value!;
}); });
}, },
colorBorder: ColorPalette.white, colorBorder: ColorPalette.white,
), ),
CBO_PROFISSIONAL == null && mandatory?ErrorDefault():Container(),
DropdownWithSubtitle( DropdownWithSubtitle(
list: listINEPROF, list: listINEPROF,
widthSubtitle: width*0.3, widthSubtitle: width*0.3,
@@ -292,10 +374,9 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
margin: EdgeInsets.symmetric(horizontal: 10), margin: EdgeInsets.symmetric(horizontal: 10),
padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10), padding: EdgeInsets.symmetric(horizontal: 8,vertical: 10),
decoration: BoxDecoration( decoration: BoxDecoration(
color: date.isEmpty?ColorPalette.disable:ColorPalette.white,
border: Border.all(color: ColorPalette.white), border: Border.all(color: ColorPalette.white),
borderRadius: BorderRadius.all( borderRadius: BorderRadius.all(Radius.circular(5.0)),
Radius.circular(5.0) // <--- border radius here
),
), ),
width: width*0.7, width: width*0.7,
child: TextDefault( child: TextDefault(
@@ -305,6 +386,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
), ),
), ),
), ),
date.isEmpty&& mandatory?ErrorDefault():Container(),
DropdownWithSubtitle( DropdownWithSubtitle(
list: listServicePlace, list: listServicePlace,
widthSubtitle: width*0.2, widthSubtitle: width*0.2,
@@ -324,6 +406,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
}, },
colorBorder: ColorPalette.white, colorBorder: ColorPalette.white,
), ),
LOCAL_ATENDIMENTO_COD ==0 && mandatory?ErrorDefault():Container(),
DropdownWithSubtitle( DropdownWithSubtitle(
list: typeService, list: typeService,
widthSubtitle: width*0.2, widthSubtitle: width*0.2,
@@ -343,6 +426,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
}, },
colorBorder: ColorPalette.white, colorBorder: ColorPalette.white,
), ),
TIPO_ATENDIMENTO_COD ==0 && mandatory?ErrorDefault():Container(),
DropdownWithSubtitle( DropdownWithSubtitle(
list: typeModelService, list: typeModelService,
widthSubtitle: width*0.2, widthSubtitle: width*0.2,
@@ -362,6 +446,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
}, },
colorBorder: ColorPalette.white, colorBorder: ColorPalette.white,
), ),
MODALIDADE_COD ==0 && mandatory?ErrorDefault():Container(),
DropdownWithSubtitle( DropdownWithSubtitle(
list: typeTurnService, list: typeTurnService,
widthSubtitle: width*0.2, widthSubtitle: width*0.2,
@@ -381,6 +466,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
}, },
colorBorder: ColorPalette.white, colorBorder: ColorPalette.white,
), ),
TURNO_COD ==0 && mandatory?ErrorDefault():Container(),
], ],
) )
], ],
@@ -562,7 +648,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
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', selectCBO, selectCBO, 'add',PROCEDIMENTOS_SIGTAP,listProc); AlertDialogDefault().otherProc(context, 'Outros Procedimentos', 'Adicionar Procedimento', CBO_PROFISSIONAL, CBO_PROFISSIONAL, 'add',PROCEDIMENTOS_SIGTAP,listProc);
}, },
) )
], ],
@@ -623,6 +709,41 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
] ]
) )
), ),
CNS_VALIDO?Card(
margin: EdgeInsets.all(10),
child: Container(
padding: const EdgeInsets.all(8.0),
width: width,
height: heigth*0.1,
child: Row(
children: [
Icon(Icons.warning,color: ColorPalette.red,),
Container(
width: width*0.9,
child: TextDefault(
text: 'CNS do Profissional inválido. Este cadastro não será exportado para o e-SUS.',
fontSize: 15,
maxLines: 2,
color: ColorPalette.red,
),
),
],
),
),
):Container(),
showCheckError?Card(
margin: EdgeInsets.all(10),
child: Container(
padding: EdgeInsets.all(10),
child: Row(
children: [
Icon(Icons.warning,color: Colors.red,),
TextDefault(text: 'Existem campos obrigatórios não preenchidos.',color: ColorPalette.red,fontSize: 15,)
],
),
),
color: ColorPalette.white,
):Container(),
Card( Card(
margin: EdgeInsets.all(10), margin: EdgeInsets.all(10),
child: Padding( child: Padding(
@@ -630,7 +751,7 @@ class _ServiceHomeScreenState extends State<ServiceHomeScreen> {
child: Column( child: Column(
children: [ children: [
ButtonDefault( ButtonDefault(
onPressed: (){}, onPressed: ()=>checkSave(),
title: 'Salvar', title: 'Salvar',
borderColor: ColorPalette.appBar, borderColor: ColorPalette.appBar,
background: ColorPalette.appBar, background: ColorPalette.appBar,

View File

@@ -19,6 +19,9 @@ class ApiDataPost{
await DBQuerys().updateCidadao(); await DBQuerys().updateCidadao();
await DBQuerys().updateCadastroIndividuais(); await DBQuerys().updateCadastroIndividuais();
await DBQuerys().updateCadastroDomiciliar(); await DBQuerys().updateCadastroDomiciliar();
await DBQuerys().updateATENDIMENTOS_DOMICILIARES();
await DBQuerys().deleteATENDS_DOM_COMPL();
await DBQuerys().deleteATENDS_DOM_PROC();
return json.decode(response.body); return json.decode(response.body);
}else{ }else{
return 'error'; return 'error';

View File

@@ -37,7 +37,7 @@ class DBQuerys{
Database db = await DbSqliteLoad().intialDB(); Database db = await DbSqliteLoad().intialDB();
var query = "SELECT * FROM ATENDS_DOM_SIGTAP"; var query = "SELECT * FROM ATENDS_DOM_SIGTAP";
List list = await db.rawQuery(query); List list = await db.rawQuery(query);
print(list); // print(list);
return list[0]; return list[0];
} }
buscaDadosProfissional(String idUnidade, String idUsuario)async{ buscaDadosProfissional(String idUnidade, String idUsuario)async{
@@ -498,4 +498,21 @@ class DBQuerys{
Database db = await DbSqliteLoad().intialDB(); Database db = await DbSqliteLoad().intialDB();
await db.update('CIDADAO_DOMICILIO', row,where: "SINCRONIZADO = 'N'"); await db.update('CIDADAO_DOMICILIO', row,where: "SINCRONIZADO = 'N'");
} }
Future updateATENDIMENTOS_DOMICILIARES()async{
Map<String, dynamic> row = {
'SINCRONIZADO': 'S',
};
Database db = await DbSqliteLoad().intialDB();
await db.update('ATENDIMENTOS_DOMICILIARES', row,where: "SINCRONIZADO = 'N'");
}
Future deleteATENDS_DOM_COMPL()async{
Database db = await DbSqliteLoad().intialDB();
String query = 'DELETE FROM ATENDS_DOM_COMPL WHERE ID_ATENDIMENTO_DOMICILIAR <> 0;';
await db.execute(query);
}
Future deleteATENDS_DOM_PROC()async{
Database db = await DbSqliteLoad().intialDB();
String query = 'DELETE FROM ATENDS_DOM_PROC WHERE ID_ATENDIMENTO_DOMICILIAR <> 0;';
await db.execute(query);
}
} }

View File

@@ -456,6 +456,34 @@ class DbSqliteSync{
} }
return db; return db;
} }
Future insertAtendimentoDomiciliar(var value)async{
Database db = await DbSqliteLoad().intialDB();
int id = await db.insert('ATENDIMENTOS_DOMICILIARES', value);
print(await db.query('ATENDIMENTOS_DOMICILIARES'));
return id;
}
Future insertCondicoesAvaliadas(int ID_ATENDIMENTO_DOMICILIAR,int COND_AVAL_ATEND_DOM)async{
Database db = await DbSqliteLoad().intialDB();
// ATENDS_DOM_COMPL (ID_ATENDIMENTO_DOMICILIAR INTEGER, COND_AVAL_ATEND_DOM INTEGER)
Map<String,dynamic> row = {
'ID_ATENDIMENTO_DOMICILIAR' :ID_ATENDIMENTO_DOMICILIAR,
'COND_AVAL_ATEND_DOM' :COND_AVAL_ATEND_DOM,
};
int id = await db.insert('ATENDS_DOM_COMPL', row);
// print(await db.query('ATENDS_DOM_COMPL'));
return db;
}
Future insertProcedimentosDomiciliares(int ID_ATENDIMENTO_DOMICILIAR,int PROC_ATEND_DOM)async{
Database db = await DbSqliteLoad().intialDB();
// ATENDS_DOM_COMPL (ID_ATENDIMENTO_DOMICILIAR INTEGER, COND_AVAL_ATEND_DOM INTEGER)
Map<String,dynamic> row = {
'ID_ATENDIMENTO_DOMICILIAR' :ID_ATENDIMENTO_DOMICILIAR,
'PROC_ATEND_DOM' :PROC_ATEND_DOM,
};
int id = await db.insert('ATENDS_DOM_PROC', row);
print(await db.query('ATENDS_DOM_PROC'));
return db;
}
Future saveSync(codCity,codState,urlAPI,mode,nameCityApi,nameCityFront,codCityIbge,user,idUnidade,nomeUnidade,area,microarea)async{ Future saveSync(codCity,codState,urlAPI,mode,nameCityApi,nameCityFront,codCityIbge,user,idUnidade,nomeUnidade,area,microarea)async{
Database db = await DbSqliteLoad().intialDB(); Database db = await DbSqliteLoad().intialDB();
//refatorar cidade_load e nome_cidade //refatorar cidade_load e nome_cidade

View File

@@ -1,6 +1,7 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:rkm/config/color_palette.dart'; import 'package:rkm/config/color_palette.dart';
import 'package:rkm/config/const_variable.dart'; import 'package:rkm/config/const_variable.dart';
import 'package:rkm/screens/select_service/service_home_screen.dart';
import 'package:rkm/widgets/button_default.dart'; import 'package:rkm/widgets/button_default.dart';
import 'package:rkm/widgets/switch_with_subtitle.dart'; import 'package:rkm/widgets/switch_with_subtitle.dart';
import 'package:rkm/widgets/text_default.dart'; import 'package:rkm/widgets/text_default.dart';
@@ -10,7 +11,7 @@ import 'input_search_text.dart';
class AlertDialogDefault { class AlertDialogDefault {
@override @override
alert_with_search(BuildContext context,controller,Widget list,) { alert_with_search(BuildContext context,controller,Widget list) {
double width = MediaQuery.of(context).size.width; double width = MediaQuery.of(context).size.width;
double height = MediaQuery.of(context).size.height; double height = MediaQuery.of(context).size.height;
@@ -76,7 +77,7 @@ class AlertDialogDefault {
); );
} }
alertSelect(BuildContext context) { alertSelect(BuildContext context,String name) {
List list = [ List list = [
'Atendimento Domiciliar', 'Atendimento Domiciliar',
@@ -122,7 +123,16 @@ class AlertDialogDefault {
int rest = index % 2; int rest = index % 2;
return ListTile( return ListTile(
onTap: ()=>Navigator.pushNamed(context, routes[index]), onTap: (){
if(index!=0){
Navigator.pushNamed(context, routes[index]);
}else{
Navigator.push(
context,
MaterialPageRoute(builder:(context) => ServiceHomeScreen(name: name,)),
);
}
},
tileColor: rest==0?ColorPalette.white:ColorPalette.appBar, tileColor: rest==0?ColorPalette.white:ColorPalette.appBar,
title: TextDefault( title: TextDefault(
textAlign: TextAlign.center, textAlign: TextAlign.center,

View File

@@ -20,7 +20,7 @@ class ItemCitizen extends StatelessWidget {
required this.mother, required this.mother,
required this.numberCNS, required this.numberCNS,
required this.numberMedicalRecord, required this.numberMedicalRecord,
required this.onTap required this.onTap,
}); });
@override @override
@@ -35,7 +35,7 @@ class ItemCitizen extends StatelessWidget {
subtitle: TextDefault(text: '$numberCNS - $numberMedicalRecord - $date - $mother',fontSize: 13,color: Colors.black54), subtitle: TextDefault(text: '$numberCNS - $numberMedicalRecord - $date - $mother',fontSize: 13,color: Colors.black54),
trailing: IconButton( trailing: IconButton(
icon: Icon(LineIcons.clipboard,size: 35,), icon: Icon(LineIcons.clipboard,size: 35,),
onPressed: ()=>AlertDialogDefault().alertSelect(context), onPressed: ()=>AlertDialogDefault().alertSelect(context,name),
), ),
onTap: onTap, onTap: onTap,
), ),