import 'dart:convert'; import 'package:gainer_crypto/crypto.dart'; import 'package:http/http.dart' as http; class MainControllers{ encrypt(String senhaDigitada,String senhaUsuario) { // Deixa e senha digitada em maiuscula var senha = senhaDigitada.toUpperCase(); // Faz a criptografia da senha inserida String senhaMD5 = grHashString(GRCryptoType.md5, senha); // Retira o tipo (1, 2 ou 3) da senha do Usuário int tipo = int.parse(senhaUsuario.substring(0, 1)); // Define a possição inicial da quebra da senha int posicaoInicialMin = 0; int posicaoInicialMax= 0; int posicaoFinalMin = 0; int posicaoFinalMax = 0; // Pra cada tipo (1, 2 ou 3) define a posição inicial da quebra da senha if(tipo == 1){ posicaoInicialMin = 0; posicaoInicialMax = 16; posicaoFinalMin = 16; posicaoFinalMax = 32; } else if(tipo == 2){ posicaoInicialMin = 16; posicaoInicialMax = 32; posicaoFinalMin = 0; posicaoFinalMax = 16; } else if(tipo == 3){ posicaoInicialMin = 0; posicaoInicialMax = 1; posicaoFinalMin = 31; posicaoFinalMax = 32; } String inicio = senhaMD5.substring(posicaoInicialMin, posicaoInicialMax); String fim = senhaMD5.substring(posicaoFinalMin, posicaoFinalMax); // Faz a criptografia e concatena ela com sha1 e md5 String senhaCriptogradafa = tipo.toString() + '\$'+ grHashString(GRCryptoType.sha1, inicio + senha + fim); // Retorna a senha criptografada return senhaCriptogradafa; } // salvarLog(EstudanteModelo estudanteModelo,String TELA)async{ // final url = '${estudanteModelo.URL}/log'; // // print('dados'); // // print(widget.estudanteModelo.dados); // final response = await http.post( // Uri.parse(url), // body:{ // 'DATA' : DateFormat('dd/MM/yyyy HH:mm').format(DateTime.now()), // 'TELA' : TELA, // 'CD_USUARIO' : estudanteModelo.CD_USUARIO, // 'NO_USUARIO': estudanteModelo.NO_USUARIO, // 'CD_ALUNO': estudanteModelo.dados[estudanteModelo.nroAluno]['CD_ALUNO'], // 'NO_ALUNO': estudanteModelo.dados[estudanteModelo.nroAluno]['NO_ALUNO'], // 'CIDADE' : estudanteModelo.cidade // } // ); // // print('response : ${response.body}'); // } Future pegarAno(String urlAPI,String cidade)async{ final url = '$urlAPI/mostrar_boletim?ANO=${DateTime.now().year}&CIDADE=$cidade'; print(url); final response = await http.get(Uri.parse(url)); var map = json.decode(response.body); String data = map[0]['DT_INICIAL']; DateTime dataInicial = DateTime.parse(data); // print(dataInicial); // print(DateTime.now()); // print((DateTime.now().difference(dataInicial).inDays).toInt()); if(DateTime.now().difference(dataInicial).inDays>=0){ print('exibir ano atual'); return DateTime.now().year; }else{ print('exibir ano anterior'); return DateTime.now().year-1; } } }