ajustada as rotas e passagem de parametros

This commit is contained in:
Reginaldo
2023-06-20 19:01:38 -03:00
parent e9fa843a79
commit 94074c7e8d
7 changed files with 28 additions and 23 deletions

View File

@@ -1,8 +1,12 @@
import 'package:educa_controle_acesso/models/aluno_model.dart';
import 'package:educa_controle_acesso/screens/home_screen.dart'; import 'package:educa_controle_acesso/screens/home_screen.dart';
import 'package:educa_controle_acesso/screens/login_screen.dart'; import 'package:educa_controle_acesso/screens/login_screen.dart';
import 'package:educa_controle_acesso/screens/responsible_register_screen.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_web_plugins/flutter_web_plugins.dart';
void main() { void main() {
setUrlStrategy(PathUrlStrategy());
runApp(const MyApp()); runApp(const MyApp());
} }
@@ -14,7 +18,11 @@ class MyApp extends StatelessWidget {
return MaterialApp( return MaterialApp(
debugShowCheckedModeBanner: false, debugShowCheckedModeBanner: false,
title: 'CONTROLE DE ACESSO', title: 'CONTROLE DE ACESSO',
home: LoginScreen(), routes: {
'/': (_)=> LoginScreen(),
'/home':(context)=> HomeScreen(acesso: ModalRoute.of(context)!.settings.arguments as String),
'/cadastro':(context)=>ResponsibleRegisterScreen(ModalRoute.of(context)!.settings.arguments as AlunoModel),
},
); );
} }
} }

View File

@@ -1,5 +1,4 @@
import 'dart:convert'; import 'dart:convert';
import 'package:educa_controle_acesso/utils/colors.dart'; import 'package:educa_controle_acesso/utils/colors.dart';
import 'package:educa_controle_acesso/widgets/input_text.dart'; import 'package:educa_controle_acesso/widgets/input_text.dart';
import 'package:educa_controle_acesso/widgets/text_custom.dart'; import 'package:educa_controle_acesso/widgets/text_custom.dart';
@@ -8,11 +7,11 @@ import '../models/aluno_model.dart';
import '../widgets/buttom_custom.dart'; import '../widgets/buttom_custom.dart';
import '../widgets/dados_alunos_container.dart'; import '../widgets/dados_alunos_container.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
import '../widgets/snackBars.dart'; import '../widgets/snackBars.dart';
class HomeScreen extends StatefulWidget { class HomeScreen extends StatefulWidget {
const HomeScreen({Key? key}) : super(key: key); String acesso;
HomeScreen({this.acesso=''});
@override @override
State<HomeScreen> createState() => _HomeScreenState(); State<HomeScreen> createState() => _HomeScreenState();
@@ -47,7 +46,7 @@ class _HomeScreenState extends State<HomeScreen> {
}); });
}else{ }else{
List list = map; List list = map;
print(list); // print(list);
if(list.length != 0){ if(list.length != 0){
for(int i =0; list.length>i;i++){ for(int i =0; list.length>i;i++){
String data = list[i]['DT_NASCIMENTO']??''; String data = list[i]['DT_NASCIMENTO']??'';
@@ -120,7 +119,8 @@ class _HomeScreenState extends State<HomeScreen> {
@override @override
void initState() { void initState() {
super.initState(); super.initState();
// inputPesquisa.addListener(pesquisa); print('aqui');
print(widget.acesso);
} }
@override @override
@@ -129,7 +129,7 @@ class _HomeScreenState extends State<HomeScreen> {
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;
return Scaffold( return widget.acesso==null || widget.acesso == ''?Container():Scaffold(
appBar: AppBar( appBar: AppBar(
title: Row( title: Row(
children: [ children: [

View File

@@ -53,10 +53,7 @@ class _LoginScreenState extends State<LoginScreen> {
if(map['NO_USERNAME']==map['SENHA']){ if(map['NO_USERNAME']==map['SENHA']){
if(map['NO_USERNAME']==inputLogin.text.toUpperCase() && map['SENHA']==inputSenha.text.toUpperCase()){ if(map['NO_USERNAME']==inputLogin.text.toUpperCase() && map['SENHA']==inputSenha.text.toUpperCase()){
showSnackBar(context, 'Acesso validado', Colors.green); showSnackBar(context, 'Acesso validado', Colors.green);
Navigator.push( Navigator.pushNamed(context, '/home',arguments: 'ok');
context,
MaterialPageRoute(builder: (context) => HomeScreen()),
);
}else{ }else{
showSnackBar(context, 'Login não cadastrado e/ou senha incorreta', Colors.red); showSnackBar(context, 'Login não cadastrado e/ou senha incorreta', Colors.red);
} }
@@ -64,10 +61,7 @@ class _LoginScreenState extends State<LoginScreen> {
// print(MainControllers().encrypt(inputSenha.text,map['SENHA'])); // print(MainControllers().encrypt(inputSenha.text,map['SENHA']));
if(MainControllers().encrypt(inputSenha.text,map['SENHA']) == map['SENHA']){ if(MainControllers().encrypt(inputSenha.text,map['SENHA']) == map['SENHA']){
showSnackBar(context, 'Acesso validado', Colors.green); showSnackBar(context, 'Acesso validado', Colors.green);
Navigator.pushReplacement( Navigator.pushNamed(context, '/home',arguments: 'ok');
context,
MaterialPageRoute(builder: (context) => HomeScreen()),
);
}else{ }else{
showSnackBar(context, 'Login não cadastrado e/ou senha incorreta', Colors.red); showSnackBar(context, 'Login não cadastrado e/ou senha incorreta', Colors.red);
} }

View File

@@ -1,5 +1,4 @@
import 'dart:convert'; import 'dart:convert';
import 'package:brasil_fields/brasil_fields.dart'; import 'package:brasil_fields/brasil_fields.dart';
import 'package:educa_controle_acesso/models/aluno_model.dart'; import 'package:educa_controle_acesso/models/aluno_model.dart';
import 'package:educa_controle_acesso/models/responsavel_model.dart'; import 'package:educa_controle_acesso/models/responsavel_model.dart';
@@ -19,7 +18,7 @@ import 'package:http/http.dart' as http;
class ResponsibleRegisterScreen extends StatefulWidget { class ResponsibleRegisterScreen extends StatefulWidget {
AlunoModel alunoModel; AlunoModel alunoModel;
ResponsibleRegisterScreen({required this.alunoModel}); ResponsibleRegisterScreen(this.alunoModel);
@override @override
State<ResponsibleRegisterScreen> createState() => _ResponsibleRegisterScreenState(); State<ResponsibleRegisterScreen> createState() => _ResponsibleRegisterScreenState();
@@ -195,10 +194,10 @@ class _ResponsibleRegisterScreenState extends State<ResponsibleRegisterScreen> {
paisBanco()async{ paisBanco()async{
final url = 'http://localhost:8000/pais?CD_ALUNO=${widget.alunoModel.dados['CD_ALUNO']}'; final url = 'http://localhost:8000/pais?CD_ALUNO=${widget.alunoModel.dados['CD_ALUNO']}';
print(url); // print(url);
final response = await http.get(Uri.parse(url)); final response = await http.get(Uri.parse(url));
var map = json.decode(response.body); var map = json.decode(response.body);
print(map); // print(map);
carregaPais(map); carregaPais(map);
} }

View File

@@ -21,10 +21,7 @@ class DadosAlunosContainer extends StatelessWidget {
return InkWell( return InkWell(
hoverColor: PaletteColors.lightGrey, hoverColor: PaletteColors.lightGrey,
onTap: (){ onTap: (){
Navigator.push( Navigator.pushNamed(context, '/cadastro',arguments: alunoModel);
context,
MaterialPageRoute(builder: (context) => ResponsibleRegisterScreen(alunoModel: alunoModel)),
);
}, },
child: Container( child: Container(
padding: EdgeInsets.symmetric(vertical: 10,horizontal: 0), padding: EdgeInsets.symmetric(vertical: 10,horizontal: 0),

View File

@@ -123,6 +123,11 @@ packages:
description: flutter description: flutter
source: sdk source: sdk
version: "0.0.0" version: "0.0.0"
flutter_web_plugins:
dependency: "direct main"
description: flutter
source: sdk
version: "0.0.0"
gainer_crypto: gainer_crypto:
dependency: "direct main" dependency: "direct main"
description: description:

View File

@@ -9,6 +9,8 @@ environment:
dependencies: dependencies:
flutter: flutter:
sdk: flutter sdk: flutter
flutter_web_plugins:
sdk: flutter
cupertino_icons: ^1.0.2 cupertino_icons: ^1.0.2
gainer_crypto: ^0.0.6 gainer_crypto: ^0.0.6