troca de senha no primeiro acesso
This commit is contained in:
@@ -2,6 +2,7 @@ import 'dart:convert';
|
|||||||
import 'package:brasil_fields/brasil_fields.dart';
|
import 'package:brasil_fields/brasil_fields.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
|
import 'package:intl/intl.dart';
|
||||||
import 'package:rkm_educa_app/Telas/tela_situacao_escolar.dart';
|
import 'package:rkm_educa_app/Telas/tela_situacao_escolar.dart';
|
||||||
import 'package:rkm_educa_app/modelos/estudante_modelo.dart';
|
import 'package:rkm_educa_app/modelos/estudante_modelo.dart';
|
||||||
import 'package:rkm_educa_app/telas/tela_seleciona_filho.dart';
|
import 'package:rkm_educa_app/telas/tela_seleciona_filho.dart';
|
||||||
@@ -24,10 +25,14 @@ class TelaLogin extends StatefulWidget {
|
|||||||
class _TelaLoginState extends State<TelaLogin> {
|
class _TelaLoginState extends State<TelaLogin> {
|
||||||
|
|
||||||
final inputLogin = TextEditingController(text: '402.061.058-43');
|
final inputLogin = TextEditingController(text: '402.061.058-43');
|
||||||
final inputSenha = TextEditingController(text: 'loginapp2023');
|
final inputSenha = TextEditingController();
|
||||||
|
final inputRepetirSenha = TextEditingController();
|
||||||
bool loading = false;
|
bool loading = false;
|
||||||
|
bool alterarSenha = false;
|
||||||
|
String tituloSenha = 'Senha';
|
||||||
EstudanteModelo? estudanteModelo;
|
EstudanteModelo? estudanteModelo;
|
||||||
String status = 'VALIDANDO ACESSO...';
|
String status = 'VALIDANDO ACESSO...';
|
||||||
|
var map;
|
||||||
|
|
||||||
verificacao(){
|
verificacao(){
|
||||||
if(inputLogin.text.isNotEmpty){
|
if(inputLogin.text.isNotEmpty){
|
||||||
@@ -44,24 +49,74 @@ class _TelaLoginState extends State<TelaLogin> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
salvarSenha()async{
|
||||||
|
if(inputLogin.text.isNotEmpty && inputSenha.text.isNotEmpty && inputRepetirSenha.text.isNotEmpty){
|
||||||
|
if(inputLogin.text.replaceAll('-', '').replaceAll('.', '') != inputSenha.text
|
||||||
|
&& inputLogin.text.replaceAll('-', '').replaceAll('.', '') != inputRepetirSenha.text){
|
||||||
|
if(inputSenha.text == inputRepetirSenha.text){
|
||||||
|
if(inputSenha.text.length >5){
|
||||||
|
loading = true;
|
||||||
|
alterarSenha = false;
|
||||||
|
status = 'ALTERANDO SENHA ...';
|
||||||
|
setState(() {});
|
||||||
|
final url = 'http://192.168.18.2:8000/inserirpais';
|
||||||
|
|
||||||
|
final response = await http.post(
|
||||||
|
Uri.parse(url),
|
||||||
|
body:{
|
||||||
|
'CD_ALUNO' : map['CD_ALUNO'],
|
||||||
|
'ALUNO': map['ALUNO'],
|
||||||
|
'CPF': map['CPF'],
|
||||||
|
'NOME' : map['NOME'],
|
||||||
|
'SENHA' : inputSenha.text,
|
||||||
|
'PARENTESCO' : map['PARENTESCO'],
|
||||||
|
'DATA_CADASTRO' : DateFormat('dd/MM/yyyy HH:mm').format(DateTime.now()),
|
||||||
|
'CONDICAO' : 'EDITADO',
|
||||||
|
'CIDADE' : map['CIDADE']
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
showSnackBar(context, 'Senha Alterada com Sucesso!'.toString().toUpperCase(), Colors.green);
|
||||||
|
loading = false;
|
||||||
|
alterarSenha = false;
|
||||||
|
inputSenha.clear();
|
||||||
|
inputRepetirSenha.clear();
|
||||||
|
tituloSenha = 'Senha';
|
||||||
|
setState(() {});
|
||||||
|
}else{
|
||||||
|
showSnackBar(context, 'Mínimo deve conter 6 caracteres', Colors.red);
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
showSnackBar(context, 'Novas senhas não são iguais', Colors.red);
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
showSnackBar(context, 'Nova senha não pode ser igual a anterior', Colors.red);
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
showSnackBar(context, 'Preencha todos os campos para avançar', Colors.red);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
conectAPI(String cpf, String senha)async{
|
conectAPI(String cpf, String senha)async{
|
||||||
|
final PrefService _prefService = PrefService();
|
||||||
final url = 'http://192.168.18.2:8000/loginpais?CPF=$cpf';
|
final url = 'http://192.168.18.2:8000/loginpais?CPF=$cpf';
|
||||||
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);
|
map = json.decode(response.body);
|
||||||
// print(map);
|
print(map);
|
||||||
if(map==false){
|
if(map==false){
|
||||||
setState(() {
|
setState(() {
|
||||||
loading = false;
|
loading = false;
|
||||||
});
|
});
|
||||||
showSnackBar(context, 'Login não cadastrado e/ou senha incorreta', Colors.red);
|
showSnackBar(context, 'Login não cadastrado e/ou senha incorreta', Colors.red);
|
||||||
}else{
|
}else{
|
||||||
|
if(map['CONDICAO']!='BLOQUEADO'){
|
||||||
|
if(map['CPF'].toString().replaceAll('-', '').replaceAll('.', '')!= map['SENHA']){
|
||||||
if(map['CPF']==cpf && map['SENHA'].toString().toUpperCase()==senha){
|
if(map['CPF']==cpf && map['SENHA'].toString().toUpperCase()==senha){
|
||||||
setState(() {
|
setState(() {
|
||||||
status = 'CARREGANDO ESTUDANTE(S) ...';
|
status = 'CARREGANDO ESTUDANTE(S) ...';
|
||||||
});
|
});
|
||||||
showSnackBar(context, 'Acesso validado', Colors.green);
|
showSnackBar(context, 'Acesso validado', Colors.green);
|
||||||
final PrefService _prefService = PrefService();
|
|
||||||
_prefService.createCacheLogin(map['CPF'], map['SENHA']).then((value){
|
_prefService.createCacheLogin(map['CPF'], map['SENHA']).then((value){
|
||||||
buscaFilhos(map['NOME'],map['PARENTESCO'],map['CIDADE']);
|
buscaFilhos(map['NOME'],map['PARENTESCO'],map['CIDADE']);
|
||||||
});
|
});
|
||||||
@@ -69,8 +124,23 @@ class _TelaLoginState extends State<TelaLogin> {
|
|||||||
setState(() {
|
setState(() {
|
||||||
loading = false;
|
loading = false;
|
||||||
});
|
});
|
||||||
|
_prefService.removeCacheLogin();
|
||||||
showSnackBar(context, 'Login não cadastrado e/ou senha incorreta', Colors.red);
|
showSnackBar(context, 'Login não cadastrado e/ou senha incorreta', Colors.red);
|
||||||
}
|
}
|
||||||
|
}else{
|
||||||
|
alterarSenha = true;
|
||||||
|
loading = false;
|
||||||
|
inputSenha.clear();
|
||||||
|
tituloSenha = 'Senha Nova';
|
||||||
|
setState(() {});
|
||||||
|
showSnackBar(context, 'Altere sua senha para continuar', Colors.red);
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
setState(() {
|
||||||
|
loading = false;
|
||||||
|
});
|
||||||
|
showSnackBar(context, 'Seu acesso não está liberado', Colors.red);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -163,7 +233,18 @@ class _TelaLoginState extends State<TelaLogin> {
|
|||||||
child: InputText(
|
child: InputText(
|
||||||
inputFormatters: [],
|
inputFormatters: [],
|
||||||
controller: inputSenha,
|
controller: inputSenha,
|
||||||
title: 'Senha',
|
title: tituloSenha,
|
||||||
|
obscure: true,
|
||||||
|
width: Dimensoes.width>900? Dimensoes.width * 0.18:Dimensoes.width*0.7,
|
||||||
|
colorBorder: PaletaCores.branco,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
!alterarSenha?Container():Container(
|
||||||
|
width: Dimensoes.width>900? Dimensoes.width * 0.18:Dimensoes.width*0.7,
|
||||||
|
child: InputText(
|
||||||
|
inputFormatters: [],
|
||||||
|
controller: inputRepetirSenha,
|
||||||
|
title: 'Repetir Nova senha',
|
||||||
obscure: true,
|
obscure: true,
|
||||||
width: Dimensoes.width>900? Dimensoes.width * 0.18:Dimensoes.width*0.7,
|
width: Dimensoes.width>900? Dimensoes.width * 0.18:Dimensoes.width*0.7,
|
||||||
colorBorder: PaletaCores.branco,
|
colorBorder: PaletaCores.branco,
|
||||||
@@ -180,12 +261,12 @@ class _TelaLoginState extends State<TelaLogin> {
|
|||||||
):ButtonCustom(
|
):ButtonCustom(
|
||||||
widthCustom: 0.7,
|
widthCustom: 0.7,
|
||||||
heightCustom: 0.07,
|
heightCustom: 0.07,
|
||||||
text: "Entrar",
|
text: alterarSenha?'Alterar Senha':"Entrar",
|
||||||
size: 14.0,
|
size: 14.0,
|
||||||
colorText: PaletaCores.branco,
|
colorText: PaletaCores.branco,
|
||||||
colorButton: PaletaCores.corPrimaria,
|
colorButton: PaletaCores.corPrimaria,
|
||||||
colorBorder: PaletaCores.corPrimaria,
|
colorBorder: PaletaCores.corPrimaria,
|
||||||
onPressed: ()=>verificacao(),
|
onPressed: ()=>alterarSenha?salvarSenha():verificacao(),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|||||||
Reference in New Issue
Block a user