From cf5fba8f7f68d24179a2a847e122ebcde3079905 Mon Sep 17 00:00:00 2001 From: Reginaldo Date: Thu, 23 Mar 2023 12:32:42 -0300 Subject: [PATCH] criada as telas clear_data_screen.dart e sinc_data_screen.dart --- lib/screens/clear_data_screen.dart | 78 ++++++++++++++++++++++++++ lib/screens/sinc_data_screen.dart | 75 +++++++++++++++++++++++++ lib/utils/routes.dart | 4 ++ lib/widgets/alert_dialog_settings.dart | 10 +++- 4 files changed, 165 insertions(+), 2 deletions(-) create mode 100644 lib/screens/clear_data_screen.dart create mode 100644 lib/screens/sinc_data_screen.dart diff --git a/lib/screens/clear_data_screen.dart b/lib/screens/clear_data_screen.dart new file mode 100644 index 0000000..0a95f5f --- /dev/null +++ b/lib/screens/clear_data_screen.dart @@ -0,0 +1,78 @@ +import 'package:flutter/material.dart'; +import 'package:rkm/utils/const_variable.dart'; +import 'package:rkm/widgets/button_default.dart'; + +import '../utils/color_palette.dart'; +import '../widgets/text_default.dart'; + +class ClearDataScreen extends StatefulWidget { + const ClearDataScreen({Key? key}) : super(key: key); + + @override + State createState() => _ClearDataScreenState(); +} + +class _ClearDataScreenState extends State { + @override + Widget build(BuildContext context) { + double width = MediaQuery.of(context).size.width; + return Scaffold( + bottomSheet: Container( + color: ColorPalette.appBar, + child: Row( + children: [ + Spacer(), + ButtonDefault( + title: 'Voltar', + width: width*0.2, + textColor: ColorPalette.white, + background: ColorPalette.appBar, + borderColor: ColorPalette.appBar, + onPressed: ()=>Navigator.pushNamedAndRemoveUntil(context, '/home', (Route route) => false), + ) + ], + ), + ), + body: Container( + padding: EdgeInsets.only(top: 100), + decoration: ConstVariable().backgroundGradient, + width: double.infinity, + height: double.infinity, + child: Column( + children: [ + Image.asset('assets/images/logo.PNG',width: width*0.5,), + Padding( + padding: const EdgeInsets.symmetric(vertical: 10.0), + child: TextDefault( + text: 'HOMOLOGAÇÃO', + color: ColorPalette.red, + fontSize: 30, + fontWeigth: FontWeight.bold, + ), + ), + Padding( + padding: const EdgeInsets.symmetric(vertical: 5.0,horizontal: 5), + child: TextDefault( + text: 'Todos os registros (dados Importados, Cadastros e Atendimentos) do aplicativo serão excluídos.\n\n' + 'Para utilizar novamente o aplicativo deverá ser realizada uma nova Carga inicial.', + maxLines: 5, + textAlign: TextAlign.center, + color: ColorPalette.black54, + fontSize: 20, + fontWeigth: FontWeight.bold, + ), + ), + ButtonDefault( + title: 'Limpar Dados', + width: width*0.9, + textColor: ColorPalette.white, + background: ColorPalette.appBar, + borderColor: ColorPalette.appBar, + onPressed: ()=>Navigator.pushReplacementNamed(context, '/home'), + ) + ], + ), + ), + ); + } +} diff --git a/lib/screens/sinc_data_screen.dart b/lib/screens/sinc_data_screen.dart new file mode 100644 index 0000000..9c1849e --- /dev/null +++ b/lib/screens/sinc_data_screen.dart @@ -0,0 +1,75 @@ +import 'package:flutter/material.dart'; +import 'package:rkm/utils/const_variable.dart'; +import 'package:rkm/widgets/button_default.dart'; + +import '../utils/color_palette.dart'; +import '../widgets/text_default.dart'; + +class SincDataScreen extends StatefulWidget { + const SincDataScreen({Key? key}) : super(key: key); + + @override + State createState() => _SincDataScreenState(); +} + +class _SincDataScreenState extends State { + @override + Widget build(BuildContext context) { + double width = MediaQuery.of(context).size.width; + return Scaffold( + bottomSheet: Container( + color: ColorPalette.appBar, + child: Row( + children: [ + Spacer(), + ButtonDefault( + title: 'Voltar', + width: width*0.2, + textColor: ColorPalette.white, + background: ColorPalette.appBar, + borderColor: ColorPalette.appBar, + onPressed: ()=>Navigator.pushNamedAndRemoveUntil(context, '/home', (Route route) => false), + ) + ], + ), + ), + body: Container( + padding: EdgeInsets.only(top: 100), + decoration: ConstVariable().backgroundGradient, + width: double.infinity, + height: double.infinity, + child: Column( + children: [ + Image.asset('assets/images/logo.PNG',width: width*0.5,), + Padding( + padding: const EdgeInsets.symmetric(vertical: 10.0), + child: TextDefault( + text: 'HOMOLOGAÇÃO', + color: ColorPalette.red, + fontSize: 30, + fontWeigth: FontWeight.bold, + ), + ), + Padding( + padding: const EdgeInsets.symmetric(vertical: 5.0), + child: TextDefault( + text: 'A Sincronização poderá demorar. Prosseguir?', + color: ColorPalette.black54, + fontSize: 22, + fontWeigth: FontWeight.bold, + ), + ), + ButtonDefault( + title: 'Enviar informações', + width: width*0.9, + textColor: ColorPalette.white, + background: ColorPalette.appBar, + borderColor: ColorPalette.appBar, + onPressed: ()=>Navigator.pushReplacementNamed(context, '/home'), + ) + ], + ), + ), + ); + } +} diff --git a/lib/utils/routes.dart b/lib/utils/routes.dart index 4817be0..30e2c0d 100644 --- a/lib/utils/routes.dart +++ b/lib/utils/routes.dart @@ -2,8 +2,10 @@ import 'package:rkm/screens/about_screen.dart'; import 'package:rkm/screens/attendance_list_screen.dart'; import 'package:rkm/screens/home_screen.dart'; import 'package:rkm/screens/login_screen.dart'; +import '../screens/clear_data_screen.dart'; import '../screens/main_procedures_screen.dart'; import '../screens/register_citizen_screen.dart'; +import '../screens/sinc_data_screen.dart'; var routes = { '/home': (context) => HomeScreen(), @@ -12,4 +14,6 @@ var routes = { '/attendance_list': (context) => AttendanceListScreen(), '/about': (context) => AboutScreen(), '/main_procedures': (context) => MainProceduresScreen(), + '/sinc_data': (context) => SincDataScreen(), + '/clear_data': (context) => ClearDataScreen(), }; \ No newline at end of file diff --git a/lib/widgets/alert_dialog_settings.dart b/lib/widgets/alert_dialog_settings.dart index 62de1a1..d0fa187 100644 --- a/lib/widgets/alert_dialog_settings.dart +++ b/lib/widgets/alert_dialog_settings.dart @@ -26,7 +26,10 @@ class AlertDialogSettings { icon: Icons.refresh ), ItemAlertSettings( - onTap: (){}, + onTap: (){ + Navigator.pop(context); + Navigator.pushNamed(context, '/clear_data'); + }, title: 'Limpar Dados', body: 'Apaga todos os dados do Aplicativo.\n' 'Todos os Cadastros e Atendimento serão\n' @@ -54,7 +57,10 @@ class AlertDialogSettings { icon: Icons.info ), ItemAlertSettings( - onTap: (){}, + onTap: (){ + Navigator.pop(context); + Navigator.pushNamed(context, '/sinc_data'); + }, title: 'Sincronia de Envio', body: 'Efetua a Sincronia de Envio levandoas informações\n' 'do dispositivo para o ConectaSUS.',